web-dev-qa-db-ja.com

OpenSSH 2要素認証

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プログラムでサーバーを使用したい。彼らがその認証方法を理解するかどうかはわかりません。

5
soerensen

私はついに問題を解決することができました。

Opensshdのバージョン6.2以降、実際には2要素認証のパラメーターがあります。 RequiredAuthenticationsの代わりにAuthenticationMethodsです。そのためのパラメーターは同じです。

Ubuntuにはバージョン6.2のdebパッケージがないので、自分でコンパイルする必要がありますが、auto-aptを使用すれば本当に簡単です。

10
soerensen

パスワードによるログインのサポートをやめて、キーによるログインのみを許可します。ユーザーはキーを作成するときにパスフレーズでキーを保護できますが、これは安全です。

必要なオプションがパックされたsshのバージョンにはないように見えるので、ソフトウェアをコンパイルしてsshのセキュリティを自分で管理するか、正しいバージョンがパックされるまで待つ必要があります。待ちます.

0
Anders