Linuxでカスタムルールを使用して複数のポートでSSHサービスを実行する

Linuxでカスタムルールを使用して複数のポートでSSHサービスを実行する

私は複数のポート(ポート22と5522など)でSSHサービスを実行するサーバーを設定する作業をしています。これらのポートには異なるルールセットが必要です。つまり、ポート22に追加するルールはポート5522のルールと競合しないでください。 。

答え1

最初に、次の行を追加して、SSHサービスが複数のポートでリッスンするようにすることができます/etc/ssh/sshd_config

Port 22
Port 5522

この場合、ポートごとに異なるルールを定義することはできません。

私が見つけることができる解決策の1つは、ポート5522でSSHサービスを実行する新しいサービスを作成し、サービスをデーモンとして実行することでした。

これを行うには、次の手順に従います。 -

  1. SSHサービスのコピーを作成し、ここに名前を付けます。sshd_config_custom
cp /etc/ssh/sshd_config /etc/ssh/sshd_config_custom
  1. 同様に、サービスのコピーも作成されます。
cp /lib/systemd/system/ssh.service /lib/systemd/system/sshd-custom.service
  1. 便利なエディタで開いて/lib/systemd/system/sshd-custom.service変更します。
ExecStart=/usr/sbin/sshd -D $SSHD_OPTS

到着

ExecStart=/usr/sbin/sshd -D $SSHD_OPTS -f /etc/ssh/sshd_config_custom

そして

Alias=sshd.service

到着

Alias=sshd-custom.service

ファイルを保存して終了します。

  1. これで、/etc/ssh/sshd_config_customにポート5522行を追加し、このconfファイルを必要に応じて変更できます。

  2. 私たちが作成したカスタムサービスを有効にして起動します。

systemctl enable sshd-custom.service
systemctl start sshd-custom.service

他に提案があれば教えてください。

関連情報