dput/sftp でのホストキー検証をスキップする

dput/sftp でのホストキー検証をスキップする

使用したいdputSFTP経由でパッケージをLaunchpad PPAにアップロードします。データを準備した後は、

please login: To accept ssh-rsa hostkey 6b03de9833252318a646b34722cd54f2 for ppa.launchpad.net type "yes": [yes, no]:

入力すればyesうまくいきますが、cronjob として実行することは不可能です。

dput でホストキーの検証をスキップするにはどうすればよいですか?

答え1

dput-ngを使用していますpython-paramikoが、これはOpenSSHを使用していません(したがって、~/.ssh/config変更は反映されません。また、あなたが考えているホストに接続していることを確認する唯一の方法である場合、厳密なホストキーチェックを無効にするヒントも問題外です)。しかし、OpenSSH の既知のホストストアなので、ssh-keyscanを使用してサーバーのホストキーをダウンロードできるはずです。手動で確認するこのストアに保存すると問題なく接続できます。

$ ssh-keyscan ppa.launchpad.net
# ppa.launchpad.net:22 SSH-2.0-Twisted
ppa.launchpad.net ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA0aKz5UTUndYgIGG7dQBV+HaeuEZJ2xPHo2DS2iSKvUL4xNMSAY4UguNW+pX56nAQmZKIZZ8MaEvSj6zMEDiq6HFfn5JcTlM80UwlnyKe8B8p7Nk06PPQLrnmQt5fh0HmEcZx+JU9TZsfCHPnX7MNz4ELfZE6cFsclClrKim3BHUIGq//t93DllB+h4O9LHjEUsQ1Sr63irDLSutkLJD6RXchjROXkNirlcNVHH/jwLWR5RcYilNX7S5bIkK8NlWPjsn/8Ua5O7I9/YoE97PpO6i73DTGLh5H9JN/SITwCKBkgSDWUt61uPK3Y11Gty7o2lWsBjhBUm2Y38CBsoGmBw==

に行を貼り付けます~/.ssh/known_hosts。ショートカット:

$ ssh-keyscan ppa.launchpad.net >> ~/.ssh/known_hosts

そうすれば問題なく接続できるはずです。

答え2

Currentには、 の代わりにを使用する というdput-ngメソッドがあります。secure_sftpopensshparamiko

文書化されておらず、実験的なものとしてマークされており、 では動作しませんpython < 3.2が、私の場合は動作します。

関連情報