【CentOS】セキュリティ向上その2

  • TCP WrapperによるSSH接続アクセス制御

    SSH接続のセキュリティを高めるため、指定したクライアントのみから
    サーバーにSSH 接続できるようにします。

    vi /etc/hosts.deny
    
    下記内容を追加
    ALL: ALL
    
    vi /etc/hosts.allow
    
    下記内容を追加
    sshd: ALL
    

    書式は「サービス名: IP」です。
    denyは拒否するサービスとIPを指定。
    allowは許可するサービスとIPを指定し、denyより優先。
    ALLは「全て」を表します。

    ただしALLとはいってもLinuxの全てのサービスを拒否するわけではなく、
    サービスのデーモンがTCP Wrapperのライブラリであるlibwrapを
    含んでいるかどうかで決まるそうです。

  • SSH接続設定

    vi /etc/ssh/sshd_config
    
    下記内容のコメントを削除
    # rootでのログイン禁止
    #PermitRootLogin yes
    ↓
    PermitRootLogin yes
    
    # 空パスワード禁止
    #PermitEmptyPasswords no
    ↓
    PermitEmptyPasswords no
    
    下記内容を追加
    # hogeユーザのみログイン許可
    AllowUsers hoge
    
    /etc/rc.d/init.d/sshd restart
    
  • SELinux無効化

    vi /etc/sysconfig/selinux
    
    下記内容を変更
    SELINUX=enforcing
    ↓
    SELINUX=disabled
    
  • バッファオーバーフロー対策

    vi /etc/sysctl.conf
    
    # 下記内容を最終行に追加
    # exec-shield
    kernel.exec-shield = 2
    
  • TeraTermの公開鍵設定
    Raspberry Piと同様なので省略。
    TeraTermで生成した鍵を保存する際は任意の名前に変更できます。
    サーバーの数が複数ある場合、秘密鍵の名前は変えておいた方が管理が楽。