lftp с ключом + парольной фразой? [закрытый]
Я использую lftp для отправки файлов на сервер sftp, но я не знаю, как подключиться к ключу и парольной фразе.
Итак, в sftp я могу сделать следующее:
sftp -i .ssh/id_rsa.mykey login@my.host.fr
Enter passphrase for key '.ssh/id_rsa.mykey': my passphrase here
Итак, как я могу использовать lftp с этим методом подключения ?
4 ответов
вы должны указать имя пользователя, и просто передать что-либо в качестве пароля, чтобы пропустить его просят.
lftp -u user,xxx sftp://...
ответ на основе Жан-Люка босса и виака, но немного более явный:
для подключения к серверу,lftp использует по умолчанию ssh -a -x. У него нет явной опции для изменения используемого ключевого файла, но, как вы заметили,ssh делает, поэтому нам просто нужно установить lftp для подключения с помощью ssh -a -x -i <keyfile> прежде чем он подключается.
вы можете сделать это несколькими способами:
-
если вы используете интерактивную командную строку lftp, перед подключением выполните следующую команду:
set sftp:connect-program "ssh -a -x -i <keyfile>" -
если вы указываете кучу команд на
lftpиспользуя-c, просто добавьте эту команду set в начало последовательности команд:lftp -c 'set sftp:connect-program "ssh -a -x -i <keyfile>"; connect sftp://user@example.com; mirror -eR files; ...' если вы всегда хотите использовать один и тот же ключ, просто добавьте это
set ...линия от первой пули до вашего~/.lftprcfile (или один из других параметров файла конфигурации, перечисленных вman lftp).
просто добавить:
set sftp:connect-program "ssh -a -x -i yourprivatekeyfile"
на ~/.lftprc, так как большинство настроек можно установить постоянно.
LFTP, похоже, не проходит или не использует файл идентификатора, указанный с помощью "ssl:key-file" с SSH, вы должны указать его в опции sftp:connect-program: "ssh-a-x-i yourprivatekeyfile"
Это должно работать.