SSHデフォルトポートの変更によるセキュリティ強化

CentOS 7.9での設定手順

SSHサービスのセキュリティを向上させるため、デフォルトのポートを変更する方法を説明します。

1. 設定ファイルの変更

SSH設定ファイルを編集します:

vi /etc/ssh/sshd_config

2. SELinuxの一時的な無効化

リモート接続を確保するために、SELinuxを一時的に無効化します:

# 現在の状態を確認
getenforce
# SELinuxを無効化
setenforce 0
# SELinuxを有効化
setenforce 1

3. SELinuxの設定(有効な場合)

SELinuxが有効な場合、semanageツールを使用して設定します。

semanage管理ツールのインストール

まず、yumで利用可能なパッケージを確認します:

yum provides semanage

ツールをインストールします:

yum -y install policycoreutils-python

SSHポートの管理

現在設定されているSSHポートを確認します:

semanage port -l | grep ssh

新しいポートを追加します(例: 2200):

semanage port -a -t ssh_port_t -p tcp 2200

不要になったポートを削除します:

semanage port -d -t ssh_port_t -p tcp 2200

4. ファイアウォール設定(有効な場合)

ファイアウォールが有効な場合、新しいポートを許可する設定を追加します:

# ポートの追加
firewall-cmd --zone=public --add-port=2200/tcp --permanent

# 設定の再読み込み
firewall-cmd --reload

5. SSHサービスの再起動

設定を反映させるためにSSHサービスを再起動します:

systemctl restart sshd

6. 接続確認

新しいポートを使用してSSH接続を確認します:

ssh -p 2200 ユーザー名@サーバーアドレス

接続確認後、SELinuxを有効に戻すことを忘れないでください:

setenforce 1

タグ: SSH セキュリティ CentOS ファイアウォール selinux

6月1日 18:13 投稿