Я пытался подключиться к серверу через wget:
wget http://<user>:<pass>@serveradress
Но wget отвечает: недопустимый порт
Я знаю, что сервер принимает входящий трафик через порт 80.Как я могу устранить эту проблему?
Я пытался подключиться к серверу через wget:
wget http://<user>:<pass>@serveradress
Но wget отвечает: недопустимый порт
Я знаю, что сервер принимает входящий трафик через порт 80.Как я могу устранить эту проблему?
Wget интерпретирует <pass>@serveraddress
как порт. Чтобы указать имя пользователя и пароль, используйте --user
и --password
переключатели:
wget --user user --password pass http://example.com/
От man wget
:
--user=user
--password=password
Укажите имя пользователя пользователь и пароль пароль как для поиска файлов по FTP, так и по HTTP. Эти параметры могут быть переопределены с помощью
--ftp-user
и--ftp-password
опции для FTP-соединений и--http-user
и--http-password
параметры для HTTP-соединений.
Здесь у вас есть 3 варианта. Они не расположены в определенном порядке, кроме внутреннего ощущения:
history
)wget --user=remote_user --password=SECRET ftp://ftp.example.com/file.ext
Пароль также будет виден в ps
, top
, htop
и тому подобное.
wget --user=remote_user --password=SECRET ftp://ftp.example.com/file.ext
Обратите внимание на пробел перед командой, он не позволяет сохранить ее в вашей истории.
Пароль также будет виден в ps
, top
, htop
и тому подобное. (Спасибо пользователь412812)
wget --user=remote_user --ask-password ftp://ftp.example.com/file.extPassword for user `remote_user': [SECRET (not visible)]
Вы также можете сохранить имя пользователя и пароль в файле ~/.wgetrc
и измените права доступа к этому файлу, чтобы только ваш пользователь мог его прочитать:
Файл ~/.wgetrc
:
user=johnpassword=SEcrEt
... а потом
chmod 600 ~/.wgetrc
Обратите внимание, однако, что пользователь root
все еще могу заглянуть в этот файл и прочитать пароль.
Чтобы предотвратить просмотр паролей, используйте
--use-askpass
или хранить их в.wgetrc
или.netrc
, и обязательно защитите эти файлы от других пользователей с помощью"chmod"
. Если пароли действительно важны, также не оставляйте их лежать в этих файлах - отредактируйте файлы и удалите их после того, как Wget начнет загрузку.
Вы можете предоставить учетные данные для аутентификации с помощью --user=USERNAME
и --password=PASSWORD
; основанный на man wget
, команда может быть переопределена с помощью --http-user=USERNAME
и --http-password=PASSWORD
для http соединение и --ftp-use=USERNAME
и --ftp-password=PASSWORD
для ftp соединение.
Это должно сработать (не пропустите кавычки)
wget 'http://<user>:<pass>@<serveradress>/<path>/<filename>'
Пример для моего доступа к сборкам на ftp-сервере
wget 'ftp://DOMAIN\thomas:dasbleibtgeheim@build.server12321.dd/download/bins/lastnightly_v1.2.3.bin'
Команда могла бы использовать --http-user
и --http-password
вместо --user
и --password
. В случае ftp
запросите следующие варианты --ftp-user
и --ftp-password
.
Я не думаю, что вы можете надежно использовать user:pass@name синтаксис там; wget
имеет для них отдельные параметры командной строки, поэтому, вероятно, наивно анализирует строку после :
в качестве номера порта.