Как вы можете сделать один вкладыш с sftp для входа с паролем на той же строке?
Есть ли возможность поставить пароль на линию также с помощью sftp?
linux~ $ sftp USERNAME@FTP.WEBSITE.COM:/DIRECTORY_TO_GO_TO/
Как это
linux~ $ sftp USERNAME@FTP.WEBSITE.COM:/DIRECTORY_TO_GO_TO/ -p PASSWORD?
7 ответов
Как правило, включение пароля в командную строку считается угрозой безопасности, поскольку оно будет показано любому, кто может запустить ps / top, и его можно сохранить в истории вашей оболочки.
Было бы гораздо лучше установить аутентификацию на основе ключей, если вы можете.
Кроме того, я не верю, что это будет возможно с sftp. Он предназначен для использования для безопасных переводов. Если вам действительно нужно было сделать что-то подобное, и у вас нет другого выбора, тогда вам, вероятно, нужно смотреть на автоматизацию с ожиданием.
Как уже упоминали другие, пароль командной строки должен быть последним средством.
Однако, если больше ничего не возможно; можно пройти ssh pass
sshpass -p <password> sftp user@host
Просто используйте perl, ruby или python для написания сценария того, что вы пытаетесь сделать. В случае ruby это просто (взято из документации по net-sftp API):
require 'net/sftp'
Net::SFTP.start('host', 'username', :password => 'password') do |sftp|
# upload a file or directory to the remote host
sftp.upload!("/path/to/local", "/path/to/remote")
end
Для получения дополнительной информации http://net-ssh.rubyforge.org/sftp/v2/api/index.html
Не делайте этого - настройте аутентификацию с открытым ключом SSH для автоматического входа.
Как указано в других ответах, используйте аутентификацию с открытым ключом. Есть замечательная, хотя и немного устаревшая серия IBM developerWorks, в которой должно быть объяснено все, что вы хотите о ней знать, а также некоторые полезные дополнительные инструменты, такие как связка ключей.
Для искателей, которым все равно, что пароль можно увидеть в командной строке:
sftp userid:password@remoteHost
как включить пароль в sftp
подключить команду.
Я подозреваю, что ответов столько же, сколько и FTP-клиентов. SFTP-сервер не должен принимать информацию аутентификации до тех пор, пока не будет установлено шифрование, чтобы защитить пользователя и пароль.
Я полагаю, что клиент FileZilla позволит передавать имя пользователя и пароль в командной строке.. см. Документацию здесь. Учитывая репутацию проекта FileZilla, я ожидаю, что он будет работать безопасно.