PermitRootLoginをprohibit-passwordからnoに変更する
SSHをインストールした後の設定
SSHをインストールした後の設定方法です。
SSHのインストール方法は以下の記事をどうぞ。
PermitRootLoginを変更したい
まだクライアント側で操作をしています。
$ sudo vi /etc/ssh/sshd_config
で設定を変更していきます。
#PermitRootLogin yes
を
#PermitRootLogin no
に変更し、ルートでログインするという危険な状態にしない様にするのが目的です。
設定を見てみると文字が多いのでPermitRootLoginを検索してみました。
/を入力すると検索できるぞ!
prohibit-passwordって何さ?
PermitRootLoginで検索すると2hitします。
#PermitRootLogin prohibit-password
# the setting of "PermitRootLogin without-password".
多分上を弄れば良いのでしょうがprohibit-passwordってなんぞ? マニュアルを見てみるも良く解らなかったのですが
- 初期設定がprohibit-passwordになっていること。
- prohibit-passwordとwithout-passwordと同じ設定っぽい
ということが解りました。
じゃあwithout-passwordって何?
prohibit-password=without-passwordっぽいことが解ったのでwithout-passwordについてググりました。
ご存じですか? sshd_config の PermintRootLogin の各種パラメータについて
without-password 「rootでログインしたいけど、パスワードのみの認証だと不安・・・。」 そういった場合に利用できるのが、without-password です。 読んで字の如くですが、このパラメータを指定すると rootユーザのみパスワード認証を拒否することができます。 ではどうやって認証するのかというと、公開鍵認証を使うわけですね。 rootのパスワード認証を取りやめるだけでも不正アクセスをされるリスクがグンと下がると思います。
あーそういうことね完全に理解した(解ってない)
prohiibt-passwordでも以前のデフォルト値yesより安全っぽいんですが、多少はなんか出来るっぽいのでnoの方が完璧なのかな?
保存時エラーの対策
という訳でnoに変更し保存しようとしたところ E212: 書き込み用にファイルを開けません」というエラーが出たので対策
:w !sudo tee % > /dev/null
で保存ができました。
やったー
追記
設定ファイルは初期ではコメントアウト#されています。 だからnoに変えるだけでなくシャープ#を消しましょう!。
SSHの設定 公開鍵の作り方に続きます。