ITプロフェッショナルであるため、セキュリティの脆弱性と脅威について最新の情報を入手することは困難です。システムパッチの更新、サーバー、およびネットワークの強化は、セキュリティの脅威を防ぐための最も重要な要素です。 Linuxサーバーとネットワークデバイスを強化することは、ITの脆弱性を減らし、システムの侵害から保護するために重要です。この記事では、Linuxサーバーの強化に使用されるいくつかのベストプラクティスを学習します。デモンストレーションの目的で、CentOS / RHELサーバーが使用されているため、他のLinuxディストリビューションでは一部の構成が異なる場合があります。
Linuxサーバーの更新
システムを最新の状態に保つ必要があります。脆弱なコンポーネントのセキュリティパッチが更新される可能性があります。次のコマンドを実行して、システムを更新します。
$ yum update -y
ファイアウォールを有効にして構成する
ほとんどのLinuxサーバーには、firewalldパッケージがインストールされています。システムでfirewalldが実行されていることを確認してください。 Linuxシステムでは、firewall-cmdコマンドラインユーティリティツールを使用してファイアウォールルールを構成できます。
ファイアウォールサービスを開始して有効にする
$ systemctl start Firewalld
$ systemctl enable Firewalld
特定のサービスとポートを追加するには、次の構文を使用します
$ Firewall-cmd --add-service =http --permanent(httpサービスを許可)
$ Firewall-cmd --add-port =8000 / tcp --permanent(特定のポートを許可)
変更を反映するには、ファイアウォールをリロードします。
$ Firewall-cmd --reload
USBドライブをブロックする
Linuxシステムでは、 /etc/modprobe.d/ の下に構成ファイルを作成することで、USBストレージを制限できます。 ディレクトリ。
構成ファイルを作成する
$ touch /etc/modprobe.d/usb_block.conf
$ echo“ install usb-storage / bin / false”> /etc/modprobe.d/usb_block.conf
不要なユーザーとグループを削除する
一部のユーザーとグループは、デフォルトですでにシステムに追加されていますが、これは不要です。そのようなユーザーとグループを削除します。
$ userdel postfix
$ groupdel postfix
$userdelゲーム
$groupdelゲーム
そのようなユーザーやグループを検索し、必要がなければ削除します。
不要なパッケージを削除する
一部のパッケージは、Linuxシステムにデフォルトですでにインストールされています。たとえば、postfixはデフォルトで提供され、システムが起動するとサービスが開始されます。そのようなサービスを特定し、それらを削除します
$ yum remove postfix -y
パスワードポリシーを設定する
Linuxマシンでは、パスワードポリシーは/etc/login.defsファイルで指定されます。パスワードポリシーパラメータを次のように変更します。
PASS_MAX_DAYS 90PASS_MIN_DAYS 1PASS_MIN_LENTH 8PASS_WARN_AGE 30
例:
SSHの構成
不正なsshアクセスと攻撃を防ぐために、/ etc / ssh/sshd_configファイルに次の変更を加えます。
#カスタムssh portPort 8022を設定します#ルートからのログインを防止しますPermitRootLogin no#空のpasswordPermitEmptyPasswordsを制限しますno#ホストベースの認証を制限しますHostbasedAuthenticationnoIgnoreRhosts yes#sshプロトコルを使用します
![]()
次のコマンドを使用して構成を確認します。
$ sshd -tsshサービスを再起動します
$ systemctl restart sshdUmask
一部のファイルにはumask強化が必要です。
$ sed -i -e's / umask 022 / umask 027 / g'-e's / umask 002 / umask 027 / g'/ etc / profile$ sed -i -e's / umask 022 / umask 027 / g'-e's / umask 002 / umask 027 / g'/etc/csh.cshrc$ sed -i -e's / umask 022 / umask 027 / g'-e's / umask 002 / umask 027 / g'/etc/init.d/functions$ sed -i -e's / umask 022 / umask 027 / g'-e's / umask 002 / umask 027 / g'/ etc / bashrcコアダンプを無効にする
コアダンプは、実行可能プログラムの情報を格納します。これは、プログラムが中止された理由を判別するために使用できます。コアダンプを使用して、コアファイルから機密情報を取得することもできます。次のコマンドを使用して、コアダンプを無効にします。
$ echo“ * hard core 0”>>/etc/security/limits.confシステム監査ツールを使用する
セキュリティツールを使用すると、システムの不具合を簡単に特定できます。無料のオープンソースツールの1つは、システムの定期的な監査を実行するために使用できるlynisです。調査結果は画面に表示され、ログファイルにも保存されます。
ツールをインストールする
$ yum install epel-release -y$ yum install lynis以下のコマンドを使用してシステムを監査します
$lynis監査システム
![]()
ログファイルに提案と警告の結果が保存されます。次のコマンドを実行して結果を確認し、それに応じて解決します。
$grepの提案/var/log/lynis.log出力:
$grep警告/var/log/lynis.log
![]()
結論
この記事では、Linuxシステムを強化するためのいくつかのベストプラクティスを学びました。 Linuxサーバーを保護するためのヒントやコツがある場合は、下のボックスにコメントを残すことを忘れないでください。
Ubuntu