Linux:シリアルコンソールを介してコンピューターが制御されているかどうかを検出する方法

StackOverflow https://stackoverflow.com/questions/1201019

  •  05-07-2019
  •  | 
  •  

質問

シリアルコンソールを使用してログインしたユーザーがLinuxマシンを制御しているかどうかをプログラムで検出するにはどうすればよいですか? BASHを使用してチェックを行います。

役に立ちましたか?

解決

who コマンドを使用すると、ログオンしているユーザーとログオン元のリストが表示されます。

例:

~$ who
john    pts/1        2009-07-29 10:06 (ourcompanyvpnserver.org)
mary    tty7        2009-07-29 10:11 (:0)
frank    pts/2        2009-07-27 12:10 (att.net)
jim    pts/4        2009-07-28 14:51 (comcast.net)

「how」を示すwhoの出力;ユーザーはログインしています。ユーザーmaryのコンソールは tty7 にフックされていますttyは、maryがシリアルコンソールを介して物理的にログインしていることを示します。したがって、maryはシリアルコンソールを介してコンピューターを制御することができます。

彼女が何をしているかを判断するには、her.bash_historyファイルを調べる必要があります。通常、これは/home/mary/.bash_historyの下にあります。

シリアルコンソール(そのマシンに接続されているキーボード)を介して入力されるすべてのコマンドを長期間ログに記録する場合は、Linuxシリアルドライバーを変更してすべての入力と出力を記録します。どれほど難しいかわかりません。

他のヒント

の解析を試してください。通常、IP / DNSアドレスを取得できます。 Havnはシリアル接続を見たことがないので、シリアル接続を表示するかどうかは言えません。

コマンドラインから who を使用できます。

ローカルコンピューターで確認する場合...

$ who >> log.txt

そして、そのファイルに余分な行があるかどうか、またはあなたが望むものをチェックします。

シリアルインターフェイスを介して端末でスクリプトが実行されるかどうかを確認する場合は、ttyを実行してデバイス名を確認するだけです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top