• Japanese

MENU

共通認証システム 矢上キャンパス 慶應義塾公式ウェブサイト 慶應義塾の電力使用状況

SSHサーバのセキュリティを強化したい

[Q.]

SSHサーバのセキュリティを強化したい

[A.]

SSHサーバ運用時の留意事項について の内容も参考にしていただくようお願いいたします。

以下の手順にて設定を変更します

  1. 設定ファイルの場所について
  2. rootによるログインを禁止する
  3. ポートを変更する
  4. パスワード認証によるログインを禁止する
  5. IPアドレスによるアクセス制限を行う
  6. 更新した設定内容を反映する

1. 設定ファイルの場所について

SSHサーバの設定を変更するには、SSHデーモンのサービスの設定が記載された/etc/ssh/sshd_configの内容を変更します。

※エディタはemacsやnanoなどでも構いません

$ cd /etc/ssh
$ sudo vi sshd_config
  • 環境によってはsshd_configが/etc直下に置かれている場合があります。
    $ cd /etc
    $ sudo vi sshd_config
    

2. rootによるログインを禁止する

セキュリティを強化するためにrootユーザでのログインを禁止することを推奨しております。

rootユーザでのログインを禁止するにはPermitRootLoginの行の内容を変更します。

- #PermitRootLogin yes
+ PermitRootLogin no

3. ポートを変更する

SSHデーモンのデフォルトポートは22ですが、こちらを変更していただくことを推奨しております。

ポートを変更するにはPort行の内容を変更します。

- #Port 22
+ Port 〔異なるポート番号〕

4. パスワード認証によるログインを禁止する

重要な権限を持ったユーザがログインすることの出来るSSHサーバは、パスワード認証は禁止し、公開鍵認証などのより強力な認証手段を利用することを推奨しております。

公開鍵認証によるログインを行う方法については SSHサーバを公開鍵認証にしたい をご覧ください。

パスワード認証によるログインを禁止するにはPasswordAuthentication行の内容を変更します。

- #PasswordAuthentication yes
+ PasswordAuthentication no

5. IPアドレスによるアクセス制限を行う

以下の例は学内からのアクセス(from: 131.113.0.0/16)以外の接続リクエストを拒否する場合の設定方法です。

IPアドレスによるアクセス制限を行うには、設定ファイルにAllowUsers行を追加します。

+ AllowUsers *@131.113.0.0/16

6. 更新した設定内容を反映する

更新した設定内容を反映するにはSSHデーモンのサービスを再起動します
  1. CentOS / RHEL / Fedora / Redhat Linux の場合
    $ /etc/init.d/sshd restart
    
    また、serviceコマンドやsystemctlコマンドを利用できる環境であれば以下の方法で再起動することもできます。
    $ service sshd restart
    $ sudo systemctl sshd restart
    
  2. Debian / Ubuntu Linux の場合
    $ /etc/init.d/ssh restart
    
    また、serviceコマンドやsystemctlコマンドを利用できる環境であれば以下の方法で再起動することもできます。
    $ service ssh restart
    $ sudo systemctl ssh restart
    

最終更新日: 2020年3月31日

内容はここまでです。