
システムの 1 つを監査したところ、localhost、ポート 52698 でリッスンしている名前のないプロセスが見つかりました。
# netstat -lntp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 972/sshd
tcp 0 0 127.0.0.1:52698 0.0.0.0:* LISTEN 13940/0
tcp 0 0 0.0.0.0:5666 0.0.0.0:* LISTEN 1043/nrpe
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 1128/mysqld
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 616/rpcbind
tcp6 0 0 :::22 :::* LISTEN 972/sshd
tcp6 0 0 ::1:52698 :::* LISTEN 13940/0
tcp6 0 0 :::443 :::* LISTEN 2354/apache2
tcp6 0 0 :::111 :::* LISTEN 616/rpcbind
tcp6 0 0 :::80 :::* LISTEN 2354/apache2
/proc 内のプロセスに関する情報を取得しようとすると、次の結果が得られました。
/proc/13940# ls -l exe
lrwxrwxrwx 1 root root 0 May 16 06:25 exe -> /usr/sbin/sshd
/proc/13940# cat cmdline
sshd: ubuntu@pts/0
何らかの理由で sshd プロセスがこれを開いたようです。これは正常ですか? なぜ sshd はこのリスニング ポートを開いているのですか?
答え1
そうかも知れないリモートポート転送誰かが-R
あなたのシステムにSSH接続中にフラグを使用しました。man ssh
:
-R [bind_address:]port:host:hostport
リモート(サーバー)ホストの指定されたポートを、ローカル側の指定されたホストとポートに転送することを指定します。これは、リッスンするソケットを割り当てることによって機能します。ポートリモート側では、このポートへの接続が行われるたびに、接続は安全なチャネルを介して転送され、ホストポートホストポートローカルマシンから。
注意: UDP ではなく TCP ポートで動作します。
トンネルを作成したユーザーは の所有者でもあると思います/proc/13940
。さらに調査する必要がある場合、それが手がかりになります。
答え2
この特定のケースでは、X11 転送が原因だと思います。-X または -Y フラグ、または .ss/config 内の対応するオプションを使用して、これを有効にする必要があります。これを無効にして再度ログインすると、ほぼ確実に問題は解決します。