SSHクライアントPCで指定されたSSHログファイルを設定するには?

SSHクライアントPCで指定されたSSHログファイルを設定するには?

このように指定されたSSHDログファイルがSSHサーバーPCに設定されます。

vim /etc/rsyslog.conf
local0.*     /var/log/sshd.log 
vim /etc/ssh/sshd_config
SyslogFacility local0

ログファイルを生成するには:

touch /var/log/sshd.log

すべてのサービスを再起動します。

systemctl restart rsyslog
systemctl restart sshd

このようにして、SSHクライアントコンピュータからすべてのSSHログイン情報を取得します。

sudo vim /etc/bash.bashrc
HISTTIMEFORMAT="%Y-%m-%d:%H-%M-%S:whoami: "
export HISTTIMEFORMAT
PROMPT_COMMAND='history -a'      
source /etc/bash.bashrc

これで、すべてのSSHログ履歴を取得します。

history |grep  ssh  

私の質問は、sshサーバーコンピュータでsshdログファイルを設定するのではなく、sshクライアントコンピュータで指定されたsshログファイルを設定する方法です。

これはSSHクライアントコンピュータに対する私の試みです。

vim /etc/rsyslog.conf
local0.*     /var/log/ssh.log 
vim /etc/ssh/ssh_config
SyslogFacility local0

ログファイルを生成するには:

touch /var/log/ssh.log

すべてのサービスを再起動します。

systemctl restart rsyslog
reboot

SSHクライアントコンピュータから自分のvpsにログインするとエラーが発生します。

/etc/ssh/ssh_config: line 56: Bad configuration option: syslogfacility
/etc/ssh/ssh_config: terminating, 1 bad configuration options

履歴に書き込む代わりに、SSHクライアントコンピュータで特定のSSHログファイルを設定する方法はありますか?
Historyコマンドは、SSHクライアントコンピュータで実行されたすべてのSSH操作を記録できます。すべてのログ情報を/var/log/ssh.logなどの指定された単一のファイルに保存したいと思います。
そんなことはしないでください。

history |grep  ssh  >> /var/log/ssh.log

ベストアンサー1

クライアント側で、次の操作を行います。

script logfile.log
ssh into the machine
do whatever you need
exit from ssh
exit from script

終了するまで、スクリプトセッションで発生したすべての内容を最初に指定されたファイルに書き込みます。

全画面(vi、topなど)で動作するコマンドはログにゴミを生成するので注意してください。

おすすめ記事