現在、自分のコンピュータにいくつかのvnc接続または他のユーザーが接続されているかどうかを確認できますか? Wiresharkを介してのみ可能ですか? vncを介して接続している他のユーザーを殺す方法は?
ベストアンサー1
Linuxでは、
ss sport = :5900
ポート 5900 に確立された現在の TCP 接続を通知します。
他のすべてと同様に、何十ものVNCサーバーを使用しているので、どのVNCサーバーを使用しているかを知る必要があります。
VNC サーバ命令の名前を知っていれば、
lsof -ai tcp -c that-command
(VNCサーバーを実行しているユーザーまたはルートとして)VNCサーバーが処理する現在確立されているTCP接続も通知されます(ポート5900にない場合)。
通常、TCP接続を閉じる方法は次のとおりです。
tcpkill
(パケット内dsniff
)接続を閉じるTCPパケットを偽造します。iptstate
(Linux)。ステートフルファイアウォールを使用している場合。 Linux接続トラッカーテーブル(xin)から接続を削除できますiptstate
。これは通常、新しいパケットを無視します(ファイアウォールがTCP SYNを介した新しい接続のみを許可するように設定されている場合)。接続を終了せずに単に非アクティブにします。- この接続で送信/受信される追加パケットを拒否するファイアウォールルールを追加します(Linuxでは、宛先
iptables
は「REJECT」であり、OUTPUTおよびINPUTフィルタチェーンの送信元および宛先TCPポートとIPアドレスと一致します)。 - 実行中のvncサーバーにgdbを接続して実行します。
call close(fd)
ここで、fdはそのソケット(を使用して見つけることができますlsof
)のファイル記述子です。その後、実行しますdetach
(これによりvncサーバーが混乱する可能性があり、shutdown
代わりに呼び出す方がclose
安全になる可能性があります)。