目次
はじめに
みなさま、scriptコマンドを活用されていますでしょうか?
LinuxサーバーにSSHログインし、作業をする際には、必ず全ての操作内容を記録するようにしています。
作業のエビデンスとしてはもちろんのこと、作業後に不具合が発生した場合に、振り返ることができるようにしておくことはとても重要です。
Teraterm等のターミナルエミュレーターには、操作内容を記録する機能がそなわっています。
ただし、使用するターミナルソフトやPC毎に設定する必要があるため煩雑です。
そこで私は、scriptコマンドを活用しています。
環境
OS : AlmaLinux 8
scriptバージョン : 2.32.1
使い方
作業用の踏台サーバーから、 作業対象サーバーへ下記コマンドを実行して
SSHログインすることで、踏台サーバーに全ての操作ログを保存するようにしています。
$ script ./LOGDIR/YYYYMMDDHHMMSS-testserver.log -c "ssh 192.168.xxx.xxx"
なお、毎回こんなに長いコマンドを実行するのはめんどくさいので、実行タイミングの日時や対象サーバーが自動的にログファイル名に指定されるように、上記コマンドの エイリアスを設定して利用しています。
また、操作ログを参照する際、単純にlessコマンドで開くと制御文字の影響で、表示がくずれます。
そのため、オプションの -r を指定して開く必要がありますので、ご注意ください。
まとめ
サーバーを運用するにあたって、コマンド操作ログの記録は必須だと考えています。
長年運用業務に携わり、現在最終的にたどり着いた方法をご紹介させてもらいました。
興味があれば、ぜひお試しください。