すべてのユーザーをキー認証のみに制限することに関するいくつかの投稿を読みましたが、1人のユーザー(svn)のみをキー認証のみに強制し、残りはキーまたはパスワードにすることができます。
私は https://stackoverflow.com/questions/4241197/how-to-disable-password-authentication-for-every-users-except-several を読みましたが、「ユーザーの一致」の部分のようですof sshd_configはopenssh-5.1の一部です。 CentOS 5.6を実行していますが、OpenSSH 4.3しかありません。現在、次のリポジトリを利用できます。
$ yum repolist
Loaded plugins: fastestmirror
repo id repo name status
base CentOS-5 - Base enabled: 3,535
epel Extra Packages for Enterprise Linux 5 - x86_64 enabled: 6,510
extras CentOS-5 - Extras enabled: 299
ius IUS Community Packages for Enterprise Linux 5 - x86_64 enabled: 218
rpmforge RHEL 5 - RPMforge.net - dag enabled: 10,636
updates CentOS-5 - Updates enabled: 720
repolist: 21,918
私は主にepelを使用していますが、rpmforgeはSubversionの最新バージョン(1.6)に使用されています。
現在の設定でこれを達成する方法はありますか?サーバーをキーだけに制限したくありません。キーを紛失した場合、サーバーを紛失してしまうからです;-)
パラメータPermitEmptyPasswords no
をsshd
構成で使用し、一部のユーザーのパスワードを削除して、sshキー認証を強制します。
Matchブロックをsshd_configファイルに追加します。このようなもの:
Match Group SSH_Key_Only_Users
PasswordAuthentication no
または、本当に1人のユーザーの場合
Match User Bad_User
PasswordAuthentication no
見る man sshd_config
一致させることができるものとそれに適用できる制限の詳細については。
CentOS 5(今日の最新アップデート)がMatchコマンドをリモートサーバーからロックアウトすることでサポートしていないことを私は学んだ。楽しい時間。
したがって、CE5にMatchコマンドを追加してservice sshd restartを実行すると警告が表示されません。sshdクライアントを閉じるとすぐに、ロックされるまでロックアウトされます。コンソールから再度ログインして、これらの2行を削除できます。