特定のSSHセッションで開始されたプロセスを見つける方法。
たとえば、私はすでにIPを知っている同じSSH資格情報(別名userzxc / passwordzxc)を複数の友人に提供しました。
私の目標は、特定のsshセッションと特定の実行/開始プロセス間のリンクを特定して、誰が衝突/衝突/損傷などを引き起こす可能性があるかを制御することです。私のコンピュータのサービス。
- 該当するアプリ/サービスがある可能性があります。
- あるいは、それを達成するためのいくつかのコマンドがあるかもしれません。
ありがとうございます。
答え1
何について
pstree -lnu | less
または
pstree -lnupa | less
出力でsshd
、またはユーザー名を見つけます。
答え2
- 各友達に特別なユーザーとグループを追加してください。
- 使用SELinux許可モードの使用
答え3
各ユーザーは自分の資格情報を持っている必要があるため、特定のユーザーのすべてのプロセスを表示できます。プロセスIDがある場合は、実行してps -Af
「USER」列を見ると、どのユーザーがプロセスを開始したかがわかります(他の多くのオプションの組み合わせがこの情報を一覧表示するため、ps
システムのマニュアルページを確認してください)。ユーザーが与えられると、bob
そのps -u bob
ユーザーのすべてのプロセスがリストされます。システムでどのプロセスが実行されているかを確認するにはトップ便利なインタラクティブなプロセスブラウザです。
注文するwho
アクティブセッションを一覧表示します。 SSH セッションの場合、元の IP アドレスがリストされます。システムログで詳細情報を見つけることができます(場所は/var/log/auth.log
SysVinitを含むDebianなどのディストリビューションによって異なります)。注文するlast
そしてlastcomm
(パッケージの一部acct
、通常はデフォルトではインストールされていません)最後のセッションに関するいくつかの情報を提供します。