Ubuntu Server 13.04を使用していますが、sftpにOpenSSHを使用します。すべてをセットアップしましたが、機能しないのは2要素認証のみです。現在、パスワードまたは公開鍵を要求していますが、パスワードと公開鍵を要求する必要があります。
そのためにsshd_configにパラメーターがあることを継ぎ合わせます:
RequiredAuthentications{1,2}
ここにリストされています: linux.die.net
そこで、この行を/etc/sshd_config
に追加しました
RequiredAuthentications2 publickey,password
しかし、sshd -tは常にこのエラーを出します。
/etc/ssh/sshd_config: line 26: Bad configuration option: RequiredAuthentications2
OpenSSHの私のバージョンは6.1.p1-4
です。この投稿から、それはopenssh-6.2でのみ利用可能であると考えました:(最後の投稿): bugzilla.mindrot.org
Linux Mintを搭載した別のコンピューターでこれをテストするために、Ubuntu安定版では使用できないため、ソースからこのバージョンをコンパイルしようとしました。
これらのチュートリアルで提案されているように、auto-aptを使用してこれを行いました
www.howtogeek.com -1
www.howtogeek.com -2
結果はLinux Mint Computerでも同じです。
だから私は今のところ立ち往生しています。
追伸:別の場所で2番目の認証スクリプトを使用できると思いましたが、これが適切で安全なソリューションであるかどうかはわかりません。 WinSCPやWindowsのFilezillaのような通常のftpプログラムでサーバーを使用したい。彼らがその認証方法を理解するかどうかはわかりません。
私はついに問題を解決することができました。
Opensshdのバージョン6.2以降、実際には2要素認証のパラメーターがあります。 RequiredAuthentications
の代わりにAuthenticationMethods
です。そのためのパラメーターは同じです。
Ubuntuにはバージョン6.2のdebパッケージがないので、自分でコンパイルする必要がありますが、auto-aptを使用すれば本当に簡単です。
パスワードによるログインのサポートをやめて、キーによるログインのみを許可します。ユーザーはキーを作成するときにパスフレーズでキーを保護できますが、これは安全です。
必要なオプションがパックされたsshのバージョンにはないように見えるので、ソフトウェアをコンパイルしてsshのセキュリティを自分で管理するか、正しいバージョンがパックされるまで待つ必要があります。待ちます.