Windows のリモートデスクトッププロトコル (RDP) のポート 3389 や Linux の SSH のポート 22 など、デフォルトのリモートアクセスポートを変更すると、システムのセキュリティが向上します。この方法は、既知のポートを標的とする自動攻撃や悪意のあるスキャンを防ぐことで、サーバーやサービスを不正アクセスから保護するのに役立ちます。このトピックでは、ECS インスタンスのデフォルトのリモートポートを変更する方法について説明します。
Windows インスタンスのポート変更
このセクションでは、Windows Server 2022 を例に、Windows インスタンスのデフォルトのリモートポートを変更する方法について説明します。
Microsoft Remote Desktop for Mac を使用して Windows ECS インスタンスに接続する場合、デフォルトポート 3389 のみがサポートされます。
-
Windows インスタンスに接続します。
詳細については、「ワークベンチを使用した Windows インスタンスへの接続」をご参照ください。
-
PortNumber レジストリ値を変更します。
-
Win+R キーを押し、 [ファイル名を指定して実行] ウィンドウを開きます。
-
regedit.exe と入力して Enter キーを押し、レジストリ エディターを開きます。
-
ナビゲーションウィンドウで、 に移動します。
-
右側のウィンドウで、 PortNumber レジストリ値を見つけて右クリックし、 [修正] を選択します。
-
ダイアログボックスで、 [値のデータ] テキストボックスに新しいポート番号 3399 を入力します。 [表記] で [10 進数] を選択し、 [OK] をクリックします。
-
ナビゲーションウィンドウで、 に移動します。
-
右側のウィンドウで、 PortNumber レジストリ値を見つけて右クリックし、 [修正] を選択します。
-
ダイアログボックスで、 [値のデータ] テキストボックスに新しいポート番号 3399 を入力します。 [表記] で [10 進数] を選択し、 [OK] をクリックします。
-
-
ECS コンソールで、 ECS インスタンスを再起動します。
詳細については、「インスタンスの再起動」をご参照ください。
-
Windows ファイアウォールを設定し、新しいポートのトラフィックを許可します。
詳細については、「Windows ファイアウォールの管理」をご参照ください。
-
インスタンスにセキュリティグループルールを追加し、新しいポートへのインバウンドトラフィックを許可します。
詳細については、「セキュリティグループルールの追加」をご参照ください。
-
インスタンスの IP アドレスまたはドメイン名に新しいポート番号を付加し、インスタンスに接続します。
たとえば、 [リモートデスクトップ接続] ダイアログボックスの [コンピューター] テキストボックスに
IP_address:3399と入力し、 [接続] をクリックします。
Linux インスタンスのポート変更
このセクションでは、Alibaba Cloud Linux 3 を例に、Linux インスタンスのデフォルトのリモートポートを変更する方法について説明します。
これらの手順を完了すると、ポート 22 を使用して ECS インスタンスに接続できなくなります。
-
Linux インスタンスに接続します。
詳細については、「ワークベンチを使用した Linux インスタンスへの接続」をご参照ください。
-
次のコマンドを実行して、sshd サービスの設定ファイルをバックアップします。
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config_bak -
sshd サービスのポート番号を変更します。
-
次のコマンドを実行して、 sshd_config ファイルを編集します。
sudo vim /etc/ssh/sshd_config -
iキーを押して挿入モードに入ります。 -
新しいリモートサービスポートを追加します。
この例ではポート 1022 を使用します。
#Port 22の行の下に、Port 1022の行を追加します。# SELinux システムでポートを変更する場合、 # この変更を SELinux に通知する必要があります。 # semanage port -a -t ssh_port_t -p tcp #PORTNUMBER # #Port 22 #AddressFamily any #ListenAddress 0.0.0.0 #ListenAddress ::行を追加すると、設定は次のようになります。
# SELinux システムでポートを変更する場合、 # この変更を SELinux に通知する必要があります。 # semanage port -a -t ssh_port_t -p tcp #PORTNUMBER # #Port 22 Port 1022 #AddressFamily any #ListenAddress 0.0.0.0 #ListenAddress :: -
Escキーを押し、:wq と入力して Enter キーを押し、変更を保存して終了します。
-
-
次のコマンドを実行して sshd サービスを再起動します。 サービスの再起動後、ポート 1022 で SSH を使用して Linux インスタンスに接続できます。
sudo systemctl restart sshd -
Linux ファイアウォールを設定し、新しいポートのトラフィックを許可します。
詳細については、「Linux ファイアウォールの管理」をご参照ください。
-
インスタンスにセキュリティグループルールを追加し、TCP ポート 1022 へのインバウンドトラフィックを許可します。
詳細については、「セキュリティグループルールの追加」をご参照ください。
-
SSH クライアントで新しいポートに接続して、設定を確認します。
SSH クライアントで接続する際、新しい [ポート] を指定する必要があります。 たとえば PuTTY では、 [ホスト名 (または IP アドレス)] フィールドにインスタンスの IP アドレスを入力し、 [ポート] フィールドに
1022を入力し、 [接続タイプ] として [SSH] を選択してから、 [開く] をクリックします。