12

It seems someone logged into my dev server with root password and did a whole bunch of destruction. How do I check the recent logins and their IP address on Cent OS ?

Thanks.

migrated from stackoverflow.com May 26 '11 at 1:38

This question came from our site for professional and enthusiast programmers.

24

lastlog(8) will report the most recent information from the /var/log/lastlog facility, if you have pam_lastlog(8) configured.

aulastlog(8) will make a similar report, but from the audit logs in /var/log/audit/audit.log. (Recommended, as auditd(8) records are harder to tamper with than syslog(3) records.)

ausearch -c sshd will search your audit logs for reports from the sshd process.

last(8) will search through /var/log/wtmp for the most recent logins. lastb(8) will show bad login attempts.

/root/.bash_history might contain some details, assuming the goober who fiddled with your system was incompetent enough to not remove it before logging out.

Make sure you check ~/.ssh/authorized_keys files for all users on the system, check crontabs to make sure no new ports are scheduled to be opened at some point in the future, etc. While you really should just rebuild the machine from scratch, it wouldn't hurt to take the time to learn what the attacker did.

Note that all logs stored on the local machine are suspect; the only logs you can realistically trust are forwarded to another machine that wasn't compromised. Perhaps it would be worth investigating centralized log handling via rsyslog(8) or auditd(8) remote machine handling.

8

Use:

last | grep [username]

or

last | head 
6
grep sshd /var/log/audit/audit.log
0

see /var/log/secure will log like

pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=xxx.xxx.xxx.xxx
Failed password for invalid user XXX from xxx.xxx.xxx.xxx

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy