Ubuntu10.04のサーバを管理しています(初学者です)。
先ほどlastコマンドを実行すると1件しかありませんでした。cat /var/log/wtmp も1行のみです。
2日前にはありましたし、設定を変えた記憶もありません(月を跨ぐと消えるのでしょうか?)。
そこで質問なのですが、lastコマンド以外にログインされたかどうかを調べる方法を教えてください(おそらくsyslogを参照すると思うのですが具体的にお願いします)。
現在のセキュリティの設定は、ufwでデフォルトDenyにし、22番のみAllow。
/etc/ssh/sshd_config の主な設定を抜粋すると以下のように公開鍵認証のみ許可してあります。
PermitRootLogin yes
PubkeyAuthentication yes
ChallengeResponseAuthentication no
PasswordAuthentication no
秘密鍵を知っているのは、私とクラウド業者(中国)だけのはずです。
>月を跨ぐと消えるのでしょうか?
月を跨ぐとバックアップを作成の後にクリアする設定にしてある可能性は高いです
周期やバックアップ先についてはログローテーションの設定を確認してみてください
http://linux.kororo.jp/cont/server/logrotate.php
バックアップファイルが判れば last -f ファイル名 で参照してみてください
>cat /var/log/wtmp も1行のみ
wtmpはバイナリファイルなのでcat -v /var/log/wtmpとするほうが良いです
良いですが、バイナリファイルを直接見ても正直わからないと思います
不正アクセス確認のためならばwtmp以外に /var/log/auth や /var/log/secure なども見てみると良いかもしれません
さっそくの回答ありがとうございます。
ログインしたことがあるのはrootのみで、直近の私のログインが表示されました。IPアドレスも私のものです。
exitしてからもう一度lastlogしてみましたが、1件しか表示されないため、このコマンドは直近のログインだけを確認できるということですよね?
もし本来は履歴すべてがみれるのであれば、設定を改竄された可能性がでてきます。
>月を跨ぐと消えるのでしょうか?
月を跨ぐとバックアップを作成の後にクリアする設定にしてある可能性は高いです
周期やバックアップ先についてはログローテーションの設定を確認してみてください
http://linux.kororo.jp/cont/server/logrotate.php
バックアップファイルが判れば last -f ファイル名 で参照してみてください
>cat /var/log/wtmp も1行のみ
wtmpはバイナリファイルなのでcat -v /var/log/wtmpとするほうが良いです
良いですが、バイナリファイルを直接見ても正直わからないと思います
不正アクセス確認のためならばwtmp以外に /var/log/auth や /var/log/secure なども見てみると良いかもしれません
ありがとうございます。解決しました。
ログローテーションの設定で/var/log/wtmpが "monthly" となっているため、月跨ぎで/var/log/wtmp.1となり、新しいログファイルへと置き換わっていたことによるものでした。
/var/log/wtmp {
monthly
create 0664 root utmp
rotate 1
}
※ちなみにAmazon EC2のUbuntuでも同様の設定がされており、先月分のログイン履歴はlastコマンドから見ることができませんでした
/var/log/auth や /var/log/secure については別途勉強していきたいと思います。
ありがとうございました。
ありがとうございます。解決しました。
ログローテーションの設定で/var/log/wtmpが "monthly" となっているため、月跨ぎで/var/log/wtmp.1となり、新しいログファイルへと置き換わっていたことによるものでした。
/var/log/wtmp {
monthly
create 0664 root utmp
rotate 1
}
※ちなみにAmazon EC2のUbuntuでも同様の設定がされており、先月分のログイン履歴はlastコマンドから見ることができませんでした
/var/log/auth や /var/log/secure については別途勉強していきたいと思います。
ありがとうございました。