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を使用するにはどうすればよいですか?
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を使用するにはどうすればよいですか?
Jean-Luc Bossとwiakに基づいた答えですが、もう少し明確です。
サーバーに接続するには、デフォルトでコマンドをlftp
使用します。使用するキーファイルを変更するための明示的なオプションはありませんが、ご存知のとおり、接続する前にを使用して接続するように設定する必要があります。ssh
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 ...
、最初の箇条書きからその行を~/.lftprc
ファイル(またはにリストされている他の構成ファイルオプションの1つ)に追加するだけman lftp
です。
ユーザー名を指定し、パスワードとして何かを渡すだけで、要求をスキップできます。
lftp -u user,xxx sftp://...
追加するだけです:
set sftp:connect-program "ssh -a -x -i yourprivatekeyfile"
~/.lftprc
ほとんどの設定はそこで恒久的に設定できるので、あなたに。
LFTPは、SSHで「ssl:key-file」で指定されたIDファイルを通過しないか、使用していないようです。sftp:connect-programオプションで指定する必要があります。
ssh -a -x -i yourprivatekeyfile
これは機能するはずです。