2018-05-25

macOS で ssh 接続にパスワードを使用できない設定を行った

macOS に ssh 接続する際にパスワード認証を使用できない設定を行いました。
今回設定するのは macOS High Sierra 10.13.4 ですが、sshd の設定は以前と大差ない模様。

現在の設定をコピーしておく

CUI で設定を編集するときは、いつでもデフォルトの設定に戻せるよう、ファイルをバックアップしてから作業します。
一見面倒な CUI はこういうところが便利ですね!
$ sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.org

設定ファイルを変更する

テキストファイルを編集できれば何を使用してもいいのですが、vi を使用して編集しました。(具体的な操作は割愛します。)
$ sudo vi /etc/ssh/sshd_config

変更内容は差分を見れば一目瞭然!間違いようがありません。
$ diff -u /etc/ssh/sshd_config.org /etc/ssh/sshd_config
--- /etc/ssh/sshd_config.org    2018-05-25 11:54:28.000000000 +0900
+++ /etc/ssh/sshd_config        2018-05-25 11:59:38.000000000 +0900
@@ -57,11 +57,9 @@
 # To disable tunneled clear text passwords, change to no here!
 #PasswordAuthentication yes
 #PermitEmptyPasswords no
+PasswordAuthentication no

 # Change to no to disable s/key passwords
 #ChallengeResponseAuthentication yes
+ChallengeResponseAuthentication no

 # Kerberos options
 #KerberosAuthentication no
root での接続を禁止することも考えたのですが、デフォルトがパスワード認証禁止になっていたため、実質つなげない状態なので変更しないことにしました。

新しい設定を適用する

『システム環境設定』 → 『共有』 → 『リモートログイン』の OFF → ON でもいいらしいが、ssh の事なので CUI で行います。
$ sudo launchctl stop com.openssh.sshd

以上で設定完了です。
試しに接続してみたところ、ちゃんと意図したとおりになっていました。

それでは、また。

0 件のコメント: