Как вы можете сделать один вкладыш с 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, я ожидаю, что он будет работать безопасно.

Другие вопросы по тегам