SSH
禁用密码登录:
PasswordAuthentication no
确保启用公钥认证:
PubkeyAuthentication yes
chmod 700 /root/.ssh
chmod 600 /root/.ssh/authorized_keys
chown root:root /root/.ssh
chown root:root /root/.ssh/authorized_keys
restart sshd # 重启生效
Apache
<Directory />
Options FollowSymLinks <!-- 危险配置,删除 -->
AllowOverride None
Require all denied
</Directory>
登录日志应急
有多少 IP 在爆破主机 ssh 的 root 帐号,如果有多个使用”,“分割
cat /var/log/auth.log* | grep -a "Failed password for root" | awk '{print $11}' | sort -n | uniq | tr '\n' ','
ssh 爆破 成功登陆 的 IP 是多少,如果有多个使用”,“分割
cat /var/log/auth.log* | grep -a "Accepted " | awk '{print $11}' | sort -n | uniq -c
爆破用户名字典是什么?如果有多个使用”,“分割
打印所有登录失败的记录:
cat /var/log/auth.log* | grep -a "Failed password"
官方答案:
grep -a "Failed password" /var/log/auth.log.2|perl -e 'while($_=<>){ /for(.*?) from/; print "$1\n";}'|uniq -c|sort -nr
登陆成功的 IP 共爆破了多少次
cat /var/log/auth.log* | grep -a "Failed password for root" | awk '{print $11}' | sort -n | uniq -c
黑客登陆主机后新建了一个后门用户,用户名是多少
cat /var/log/auth.log* | grep -a "useradd" | grep -a "linux-rz"
Apache 日志分析
常见路径:
- /var/log/apache/access.log
- /var/log/apache2/access.log
- /var/log/httpd/access.log
访问次数最多的 IP
cut -d- -f 1 access.log.1|uniq -c | sort -rn | head -20
查看页面访问次数
grep "/index.php" access.log.1 |wc -l
查看 IP 访问次数
这里我们使用 -w 参数进行全匹配,可以避免匹配 192.168.200.211
grep -w "192.168.200.2" access.log.1 |wc -l
查看时间段内的 IP
cat access.log.1 | grep "03/Aug/2023:08:" | awk '{print $1}' | sort -nr | uniq -c
Windows 日志分析
有哪些 ip 访问过 Nginx
cut access.log -d - -f 1 |uniq -c |sort -rn |head -100
Linux 检查高权限用户
awk -F: '$3==0 {print$1}' /etc/passwd
Windows 影子帐户1
通过注册表导入的影子帐户,只能在注册表查看或删除
位置:HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users\Names