个人观点:人类社会的一切行为都是逻辑思考的结果,人类社会的一切的行为都遵循一种逻辑。 这两天查看了服务器的log,看到了和这篇帖子(http://www.v2ex.com/t/75094)一样的问题,不断有人来尝试破解登陆服务器。好多人跟帖,有些建议都挺好的,很实在,在这里记录汇总一下。都是干货来着。(鄙人仅仅是整理此文,所论述的观点都来自这些大牛) 1.端口扫描太正常了。太正常了,也不是针对你为了什么特殊内容。这也就是批量找肉鸡的。 2.统计来源和次数命令:grep "Failed password for root" /var/log/auth.log | awk '{print $11}' | sort | uniq -c | sort -nr | grep -v ";" 3.改什么密码都没意义吧,去掉root的密码登录才正道。再长的密码也是明文传输,也会被截获。(反:SSH是加密的,除非你手动指定不加密(一般不允许)。正:握手阶段还是明文。反:握手结束后才会传输认证信息,理论上能确认服务器的公钥正确的情况下,无需担心密码被第三方破译。反2:握手阶段又不传密码,只能做中间人攻击,而中间人攻击会改变服务器的签名,客户端直接连不上的。) 4.fail2ban5. DenyHosts6.猜密码这种能猜对的概率也太低了吧。。反:你太忽视一些人爱用用“123abc”做密码的习惯了,并且他们觉得这个密码还不错哦。反:不,概率很高,要是不防护的话,一个10位的密码,没多少天就可以干掉。正:用fail2ban解决暴力破解,你设定成登陆失败3次封锁该IP小时,按RSA的加密等级他得算上好久。
7.禁止root登陆 √公钥验证登陆 √修改SSH默认端口 √ fail2ban √ 用ufw关闭所有不使用的端口号 √ 自动安装安全更新 √ Logwatch每天日报 √
8.很正常 我用的denyhosts。
我的设置的是只要密码输入错了1次,就直接封禁永久。
9.让他攻击好了,给他个蜜罐,让他什么也得不到比如:RKTECH:~# w 00:33:54 up 5 days, 19:02, 1 user, load average: 0.00, 0.00, 0.00 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root pts/0 172.158.34.148 00:33 0.00s 0.00s 0.00s w RKTECH:~# uname -a Linux RKTECH 2.6.26-2-686 #1 SMP Wed Nov 4 20:45:37 UTC 2009 i686 GNU/Linux RKTECH:~# php -v bash: php: command not found RKTECH:~# cat /proc/cpuinfo processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 23 model name : Intel(R) Core(TM)2 Duo CPU E8200 @ 2.66GHz stepping : 6 cpu MHz : 2133.305 cache size : 6144 KB physical id : 0 siblings : 2 core id : 0 cpu cores : 2 apicid : 0 initial apicid : 0 fpu : yes fpu_exception : yes cpuid level : 10 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good pni monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr sse4_1 lahf_lm bogomips : 4270.03 clflush size : 64 cache_alignment : 64 address sizes : 36 bits physical, 48 bits virtual power management: processor : 1 vendor_id : GenuineIntel cpu family : 6 model : 23 model name : Intel(R) Core(TM)2 Duo CPU E8200 @ 2.66GHz stepping : 6 cpu MHz : 2133.305 cache size : 6144 KB physical id : 0 siblings : 2 core id : 1 cpu cores : 2 apicid : 1 initial apicid : 1 fpu : yes fpu_exception : yes cpuid level : 10 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good pni monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr sse4_1 lahf_lm bogomips : 4266.61 clflush size : 64 cache_alignment : 64 address sizes : 36 bits physical, 48 bits virtual power management: RKTECH:~# ps x PID TTY STAT TIME COMMAND 1 ? Ss 0:07 init [2] 2 ? S< 0:00 [kthreadd] 3 ? S< 0:00 [migration/0] 4 ? S< 0:00 [ksoftirqd/0] 5 ? S< 0:00 [watchdog/0] 6 ? S< 0:17 [events/0] 7 ? S< 0:00 [khelper] 39 ? S< 0:00 [kblockd/0] 41 ? S< 0:00 [kacpid] 42 ? S< 0:00 [kacpi_notify] 170 ? S< 0:00 [kseriod] 207 ? S 0:01 [pdflush] 208 ? S 0:00 [pdflush] 209 ? S< 0:00 [kswapd0] 210 ? S< 0:00 [aio/0] 748 ? S< 0:00 [ata/0] 749 ? S< 0:00 [ata_aux] 929 ? S< 0:00 [scsi_eh_0] 1014 ? D< 0:03 [kjournald] 1087 ? S<s 0:00 udevd --daemon 1553 ? S< 0:00 [kpsmoused] 2054 ? Sl 0:01 /usr/sbin/rsyslogd -c3 2103 tty1 Ss 0:00 /bin/login -- 2105 tty2 Ss+ 0:00 /sbin/getty 38400 tty2 2107 tty3 Ss+ 0:00 /sbin/getty 38400 tty3 2109 tty4 Ss+ 0:00 /sbin/getty 38400 tty4 2110 tty5 Ss+ 0:00 /sbin/getty 38400 tty5 2112 tty6 Ss+ 0:00 /sbin/getty 38400 tty6 2133 ? S<s 0:00 dhclient3 -pf /var/run/dhclient.eth0.pid -lf /var/lib 4969 ? Ss 0:00 /usr/sbin/sshd: root@pts/0 5673 pts/0 Ss 0:00 -bash 5679 pts/0 R+ 0:00 ps x RKTECH:~# unset ; rm -rf /var/run/utmp /var/log/wtmp /var/log/lastlog /var/log/messages /var/log/secure /var/log/xferlog /var/log/maillog ; touch /var/run/utmp /var/log/wtmp /var/log/lastlog /var/log/messages /var/log/secure /var/log/xferlog /var/log/maillog ; unset HISTFILE ; unset HISTSAVE ; unset HISTLOG ; history -n ; unset WATCH ; export HISTFILE=/dev/null ; export HISTFILE=/dev/null 1 w 2 uname -a 3 php -v 4 cat /proc/cpuinfo 5 ps x 6 unset ; rm -rf /var/run/utmp /var/log/wtmp /var/log/lastlog /var/log/messages /var/log/secure /var/log/xferlog /var/log/maillog ; touch /var/run/utmp /var/log/wtmp /var/log/lastlog /var/log/messages /var/log/secure /var/log/xferlog /var/log/maillog ; unset HISTFILE ; unset HISTSAVE ; unset HISTLOG ; history -n ; unset WATCH ; export HISTFILE=/dev/null ; export HISTFILE=/dev/null RKTECH:~# (责任编辑:IT) |