Centos7サーバーの基本的なセキュリティ設定手順

Centos7サーバーの基本的なセキュリティ設定手順

pingスキャンをオフにする(役に立たないが)

まずルートに切り替える

エコー 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all

1はオフを意味します

0はオンを意味します

iptablesの使用

iptables -I 入力 -p icmp -j ドロップ

基本的なセキュリティ設定を簡単に紹介します

1.共通ユーザーを作成し、rootログインを禁止し、共通ユーザーのみがsuコマンドを使用してrootに切り替えることを許可する

これの利点は、パスワード保護が二重になっていることです。ハッカーが一般ユーザーのパスワードを知っていても、ルートパスワードを持っていなければ、サーバーへの攻撃は比較的制限されます。

具体的な手順は次のとおりです(ルート権限が必要です)

通常ユーザーの追加

ユーザー追加 xxx

パスワードを設定する

パスワード xxx

これにより、通常のユーザーが作成されます

ルートログインを無効にする

vi /etc/ssh/sshd_config

PermitRootLogin いいえ

Systemctl sshd を再起動する

これで最初のステップは完了です。その後、rootはサーバーにログインできなくなり、通常のユーザーsuを介してのみ切り替えることができます。

2. ssh のデフォルト ポート 22 を変更します。ssh のポートは 22 なので、ポートを変更するとスキャンに少し時間がかかり、難易度が少し上がります。

次のようにすると、ポートが 51866 に変更されます。必要に応じて変更できます。10000 ~ 65535 の範囲内のポートを選択するのが最適です。

ステップ1 /etc/ssh/sshd_configを変更する

vi /etc/ssh/sshd_config

#ポート22 //この行から#記号を削除します

ポート 51866 //以下の行を追加

最初にポート22を削除してみてはいかがでしょうか。他のポートが正常に構成されていない場合、ポート22が削除されると、サーバーに再度アクセスできなくなります。

ステップ2 SELinuxを変更する

semanageをインストールする

$ yumはsemanageを提供します
$ yum -y ポリシーコアユーティリティ-pythonをインストールします

SElinux によって現在許可されている ssh ポートを表示するには、次のコマンドを使用します。

semanage ポート -l | grep ssh

SELinuxにポート51866を追加する

semanage ポート -a -t ssh_port_t -p tcp 51866

注: 操作が失敗した場合は、https://sebastianblade.com/how-to-modify-ssh-port-in-centos7/ を参照してください。

失敗した場合は、selinuxが有効になっていないことが原因であると考えられます。

追加されたかどうかを確認します

semanage ポート -l | grep ssh

成功した場合は、次のように出力されます。

ssh_port_t tcp 51866, 22

ステップ3 sshを再起動する

systemctl sshd.service を再起動します。

SSHがポート51866でリッスンしているかどうかを確認する

ネットスタット -tuln

ステップ4 ファイアウォールのポート51866を開く

ファイアウォールコマンド --permanent --zone=public --add-port=51866/tcp

ファイアウォール-cmd --reload

次に、51866 経由でログインできるかどうかをテストします。ログインできる場合は成功です。次に、ポート 22 を削除します。

vi /etc/ssh/sshd_config

ポート22 wqを削除

systemctl sshd.service を再起動します。

同時に、ファイアウォールはポート22も閉じます

ファイアウォールコマンド --permanent --zone=public --remove-port=22/tcp

Alibabaのサーバーを使用している場合は、Alibabaのセキュリティグループに新しい受信ルールを追加する必要があることに注意してください(おそらく、Alibabaのサーバーはイントラネットを使用しており、ポートマッピングが必要であるためです)。

3. DenyHosts などのソフトウェアを使用して SSH ブルートフォース クラッキングを防ぐ (詳細は説明しません)

実はこれは不正ログインをチェックするPythonスクリプトです。不正ログインの回数が設定回数を超えると、そのIPアドレスは自動的にブラックリストに追加されます。

4. クラウドロックを使用する(詳細は説明しません)

参考: http://tim-fly.iteye.com/blog/2308234

一般的に、最初の 2 つの手順を完了すると、侵入を少なくとも 50% 削減できます。3 番目の手順を完了すると、侵入の 80% 以上を基本的に排除できます。もちろん、最も重要なことは、セキュリティ意識を持ち、セキュリティと Linux の知識をさらに学ぶことです。

3つ目と4つ目については簡単に触れておきますので、ご興味があればご覧ください。

以下もご興味があるかもしれません:
  • Centos8 でローカル Web サーバーを構築するための実装手順
  • CentOS 8 に Postfix メール サーバーをインストールして設定する方法
  • Linux および CentOS (サーバー) に zip および unzip コマンド機能をインストールする
  • CentOS サーバーのセキュリティ構成戦略
  • CentOS8.0 で FTP サーバーをインストールして設定する方法
  • CentOS 7.2 は uniapp プロジェクトを展開するための nginx Web サーバーを構築します
  • NodeJsプロジェクトCentOs Linuxサーバーのオンライン展開の詳細な説明
  • CentOS8.1 で Gitlab サーバーを構築するための詳細なチュートリアル

<<:  MySQL 8.0.15 winx64 のインストールと設定方法のグラフィックチュートリアル

>>:  TypeScript をインストール、使用、自動コンパイルする方法に関するチュートリアル

推薦する

CSSスタイルシートとフォーマットレイアウトの詳細な説明

スタイルシートCSS (カスケーディング スタイル シート) は、HTML Web ページを美しくす...

MySQL 5.7.17 圧縮バージョンのインストールノート

この記事では、参考までにMySQL 5.7.17圧縮版のインストール手順を紹介します。具体的な内容は...

MySQLクエリプランでken_lenの値を計算する方法

key_lenの意味MySQL では、次に示すように、explain を使用して SQL ステートメ...

Linux インデックスノード inode の詳細な説明

1. inodeの紹介inode を理解するには、まずファイル ストレージから始める必要があります。...

要素動的ルーティングブレッドクラムの実装例

マスターするには: localStorage、コンポーネントのカプセル化えーと、GIF に変換したビ...

Linux システムのスワップ領域の紹介

スワップ スペースは、オペレーティング システムに関係なく、今日のコンピューティングの一般的な側面で...

新しい Linux ファイル権限設定における umask の詳細な理解

序文起源は質問 1 です: umask が 022 に設定されている場合、作成するファイルのデフォル...

新しいカーネルをLinuxシステムに移植する手順

1. ubuntu16.04 イメージと対応する ubuntu16.04 カーネル バージョンのソー...

MYSQL 演算子の概要

目次1. 算術演算子2. 比較演算子3. 論理演算子4. ビット演算子5. 演算子の優先順位1. 算...

Vue の自動書式設定の改行保存の詳細な説明

ネットで変更方法をいろいろ調べたのですが、うまくいきませんでした。後で大物から見て削除しました。フォ...

Docker で Tomcat を使用して Web アプリケーションを迅速にデプロイする方法の例

Docker の基本的な操作を学習した後、コンテナにいくつかの基本的なアプリケーションをデプロイして...

Ubuntu で XFS ファイルシステム用の LVM を作成する方法

序文lvm (論理ボリューム マネージャー) 論理ボリューム管理は、Linux システムのニーズを満...

MySQL関連のツールをいくつかお勧めします

序文:インターネット技術の継続的な発展に伴い、MySQL 関連のエコシステムはますます充実し、ますま...

HTML のボタン タグをクリックしてページにジャンプする 3 つの方法

方法1: onclickイベントを使用する <input type="button&...

MySQL マスタースレーブレプリケーション構成プロセス

メインライブラリの構成1. MySQLを設定する vim /etc/my.cn # ファイルに次の内...