Ubuntuで22を除くすべてのポートで送信SSH接続をブロックします。

Ubuntuで22を除くすべてのポートで送信SSH接続をブロックします。

私のサーバーで多くのSSHアウトバウンド接続が作成されていることがわかります。特定のユーザーを除くすべてのユーザーに対してSSHコマンドをブロックできますか?

または

iptableを介してポート22を除くすべてのポートでアウトバウンドSSH接続をブロックできますか?ただし、これらのポートを他のプロセスで使用できるようにする必要があります。すべてのポート(22回を除く)のみをブロックする必要があります。SSHアウトバウンド接続。

メモ: 以下の出力を実行するnetstat |grep sshと、異なるポートを使用する異なるIPに対してSSH接続が作成されることがわかります。10.25.218.4私のサーバーのIPアドレスはどこにありますか?

root@ubuntu:/var/log# netstat grep ssh |

tcp        0      1 10.25.218.4:ssh         222.186.31.204:25262    FIN_WAIT1
tcp        0      0 10.25.218.4:ssh         host-92-0-218-178.:1834 ESTABLISHED
tcp        0      0 10.25.218.4:ssh         host-92-0-218-178:14717 ESTABLISHED
tcp        0      0 10.25.218.4:ssh         222.186.31.204:41642    ESTABLISHED

出力netstat -np |ネットワーク統計 grep -E 'local|:22\b'

PIDに予期しない接続が表示されます。23909同じ外部IPアドレスに対して2つの異なるPIDを毎回表示できます。

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0     64 10.25.218.4:22          92.0.218.178:7341       ESTABLISHED 22943/sshd: rsantos
tcp        0      0 10.25.218.4:22          92.0.218.178:1834       ESTABLISHED 11378/sshd: rsantos
tcp        0      0 10.25.218.4:22          222.186.42.155:10064    ESTABLISHED 23909/sshd: unknown

答え1

あなたの質問は、質問のタイトルで知ることができるものとは異なるようです。しかし、質問のタイトルに答えてみましょう。

SSH 接続を生成する唯一の方法は、 、 または を呼び出すことであるとssh仮定scpすると、sftp次のことができます。

  1. グループの作成sshclient
  2. このバイナリグループを次に変更します。sshclient
  3. このバイナリの権限を次に変更します。750
  4. このグループにSSHを許可したいユーザーを追加してください。

これはファイアウォールとは何の関係もありません。

古い名前のラッパースクリプトを配置して、他のユーザーがファイアウォール制御方式でSSHを使用できるようにすることができます。ここでは$PATH、バイナリは同じユーザーsudo(環境を維持)で実行されますが、sshclientプロセスにグループを追加します。その後、このiptablesモジュールを使用して、このグループに属するownerすべてのパケット(SSHパケットのみ)を選択できます。sshclient

関連情報