[投稿]Linuxサーバのセキュリティ強化の7つのステップ

9367 ワード

Linuxサーバのセキュリティ強化の7つのステップ

https://linux.cn/article-11444-1.html

 
作成者:
パトリックH.Mullins訳者:LCTT Xingyu.Wang 
|2019-10-11 09:41コレクション:1
7つの簡単な手順でLinuxサーバを強化します.
この入門記事では、基本的なLinuxサーバのセキュリティに関する知識を紹介します.主にDebian/Ubuntu向けですが、ここで紹介したすべての内容を他のLinuxリリースに適用できます.私もあなたにこの材料を研究することを奨励して、そして適用する情況の下で拡張します.

1、サーバーの更新


サーバのセキュリティを保護する最初のことは、ローカル・リポジトリを更新し、最新のパッチを適用することで、OSとインストールされているアプリケーションをアップグレードすることです.
UbuntuとDebianで:$ sudo apt update && sudo apt upgrade -y
Fedora、CentOSまたはRHEL:$ sudo dnf upgrade

2、新しい特権ユーザーを作成する


次に、新しいユーザーアカウントを作成します.rootとしてサーバにログインするのではなく、自分のアカウント(ユーザー)を作成し、sudoの権限を与え、サーバにログインします.
まず新しいユーザーを作成します.$ adduser <username> sudoグループ(-G)をユーザーのグループメンバーシップに追加(-a)することで、新しいユーザーアカウントsudoに権限を付与します.$ usermod -a -G sudo <username>

3、SSHキーをアップロードする


SSHキーを使用して新しいサーバにログインする必要があります.ssh-copy-idコマンドを使用して、事前に生成されたSSHキーを新しいサーバにアップロードできます.$ ssh-copy-id <username>@ip_address
パスワードを入力することなく、新しいサーバにログインできます.

4、安全強化SSH


次に、次の3つの変更を行います.
  • SSHパスワード認証を無効にする
  • rootリモートログインを制限
  • IPv 4またはIPv 6へのアクセスを制限
  • 選択したテキストエディタを使用して/etc/ssh/sshd_configを開き、次のことを確認します.PasswordAuthentication yes PermitRootLogin yes
    次のように変更します.PasswordAuthentication no PermitRootLogin no
    次に、AddressFamilyオプションを変更することによって、SSHサービスはIPv 4またはIPv 6に制限される.IPv 4のみを使用するように変更するには(ほとんどの人には問題ないはずです)、次のように変更します.AddressFamily inet
    SSHサービスを再起動して変更を有効にします.SSHサービスを再起動する前に、サーバと2つのアクティブな接続を確立するのは良いアイデアです.これらの追加の接続により、SSHサービスの再起動にエラーが発生した場合、すべての問題を修正できます.
    Ubuntuで:$ sudo service sshd restart
    FedoraまたはCentOSまたはSystemdを使用する任意のシステムでは、$ sudo systemctl restart sshd

    5、ファイアウォールの有効化


    ファイアウォールをインストールし、ファイアウォールを有効にし、指定したネットワークトラフィックのみを通過させるように構成する必要があります.(Ubuntu上の)簡単なファイアウォール(UFW)は使いやすいiptablesインタフェースであり、ファイアウォールの構成プロセスを大幅に簡素化することができます.
    UFWは以下の方法でインストールできます.$ sudo apt install ufw
    デフォルトでは、UFWはすべての転送接続を拒否し、すべての転送接続を許可します.これは、サーバ上のアプリケーションがインターネットにアクセスできることを意味しますが、サーバにアクセスしようとするコンテンツは接続できません.
    まず、SSH、HTTP、HTTPSへのアクセスを有効にしてログインできることを確認します.$ sudo ufw allow ssh $ sudo ufw allow http $ sudo ufw allow https
    UFWを有効にします.$ sudo ufw enable
    次の方法で、どのようなサービスが許可され、拒否されたかを確認できます.$ sudo ufw status
    UFWを無効にしたい場合は、次のコマンドを入力して無効にできます.$ sudo ufw disable
    また、(RHEL/CentOSで)firewall-cmdを使用することもできます.一部のリリースにインストールされ、統合されています.

    6、Fail 2 banのインストール


    Fail 2 banは、重複または自動攻撃を検索するためにサーバログをチェックするアプリケーションです.攻撃が見つかった場合、ファイアウォールは、攻撃者のIPアドレスを永続的または指定された時間内にブロックするために変更されます.
    次のコマンドを入力してFail 2 banをインストールできます.$ sudo apt install fail2ban -y
    次に、添付のプロファイルをコピーします.$ sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
    Fail 2 banの再起動:$ sudo service fail2ban restart
    これでいいです.このソフトウェアは、攻撃を検索するためにログファイルをチェックし続けます.しばらくすると、アプリケーションはかなりのIPアドレスリストを確立します.このリストは、SSHサービスの現在のステータスを次の方法で確認できます.$ sudo fail2ban-client status ssh

    7、不要なネットワークサービスの削除


    ほとんどのLinuxサーバオペレーティングシステムでは、ネットワーク向けのサービスが有効になっています.その多くを残したいかもしれませんが、削除したいものがあるかもしれません.ssコマンドを使用して、実行中のすべてのネットワーク・サービスを表示できます.$ sudo ss -atpu ssの出力は、オペレーティングシステムによって異なります.次の例では、SSH(sshd)およびNgnix(nginx)サービスがネットワークをリスニングし、接続を準備していることを示します.tcp LISTEN 0 128 *:http *:* users:(("nginx",pid=22563,fd=7)) tcp LISTEN 0 128 *:ssh *:* users:(("sshd",pid=685,fd=3))
    未使用のサービスを削除する方法は、オペレーティングシステムと使用するパッケージマネージャによって異なります.
    Debian/Ubuntuで未使用のサービスを削除するには、次の手順に従います.$ sudo apt purge <service_name>
    Red Hat/CentOSで未使用のサービスを削除するには、次の手順に従います.$ sudo yum remove <service_name> ss -atupを再度実行して、未使用のサービスがインストールおよび実行されていないことを確認します.

    まとめ


    このチュートリアルでは、Linuxサーバを強化するために必要な最低限の措置について説明します.サーバの使用方法に応じて、他のセキュリティ・レイヤを有効にする必要があります.これらのセキュリティ層には、各アプリケーション構成、侵入検出ソフトウェア(IDS)、アクセス制御の有効化(例えば、デュアルファクタ認証)などが含まれる.
    via: https://opensource.com/article/19/10/linux-server-security
    作者:Patrick H.Mullins選題:lujun 9972訳者:wxy校正:wxy