web-dev-qa-db-ja.com

着信SSHセッションをリアルタイムで監視する

着信SSHセッションを監視するLinuxソフトウェアはありますか?前の仕事で、たとえばRed Hatからのサポートが必要な場合は、マシンにSSHで接続し、彼らが何をしているかを見ることができると言われました。

私も同様の状況で、友人のマシンにsshして彼を助けたいと思っていますが、教育目的で自分がしていることを監視し、悪意のある行為をしないようにしてほしいと思います。

助言がありますか?

ありがとう

21
Richard

GNU Screenにはこの機能があり、特定のシェルユーザーが画面を介してのみ操作できるようにすることができます。

https://www.linux.com/learn/tutorials/442418-using-screen-for-remote-interaction

15
Adam Gibbins

Screenはあなたが求めているものだと思いますが、そこに座って見たくなく、ユーザーのセッションを "ビデオ"したい場合は、Sudo Shellを見ることができます。

これをシェルとしてユーザーを設定すると、発生したすべてのことを完全に記録し、「再生」して、必要なときに/必要に応じてそれを見ることができます。

これの唯一の欠点は、ログが非常に大きくなる可能性があることです。たとえば、_find /_のようなコマンドを実行すると、すべてが記録されるため、有効にするアカウントを選択する必要があります。グローバルに行うのではなく、.

ベンダーのログインアクセスを許可することに関しては、これはおそらく完璧です。彼らが行ったすべての完全な監査証跡があり、すべて(バックスペースも含む)が記録され、再生のために保存されます。

_log_output_はsudoersのレコーダーオプションで、sudoreplay(8)はプレーヤーです。

sudoers manページによると:

log_output:設定されている場合、Sudoは擬似ttyでコマンドを実行し、script(1)コマンドと同様に、画面に送信されるすべての出力をログに記録します。 I/Oリダイレクトまたはコマンドがパイプラインの一部であるために、標準出力または標準エラーがユーザーのttyに接続されていない場合、その出力もキャプチャされ、個別のログファイルに保存されます。

Sudoersファイルには、次のように記述します。

_User_Alias Shell_ACCOUNTS = root,jack
Defaults: Shell_ACCOUNTS log_output
_

またはグループベースのロギングの場合

_Defaults:%shellusers log_output
_

詳細は http://www.gratisoft.us/Sudo/sudoers.man.html を参照してください。

3
Xerxes

スクリプトコマンドを使用できます。 sshセッションを監視するユーザーの.loginまたは.profileに行を作成します。スクリプトにログインすると、コマンドの実行とそれらのコマンドの出力を提供するI/Oのログが生成されます。リアルタイムで、スクリプトをテールして、ユーザーがリアルタイムで何をしているのかを見ることができます。

参照のリンクを貼り付けることはできませんが、コマンド「スクリプト」でグーグルするだけで参照を取得できます。

2
Viky
2
sysadmin1138

kibitzを使用できます。 manページからの引用:

kibitzを使用すると、2人(またはそれ以上)のユーザーが1つのシェル(または任意のプログラム)と対話できます。

Fedoraでは、expectパッケージに含まれています。

1

私は私のサーバーでwhowatchを使用しています。

apt-get install whowatch
0
Unkwntech

screenまたはtmux。

tmuxの共有は少し簡単です。

0
Not Now