略谈对付SSH端口扫描,还有WP的MC支持

提醒:本文最后更新于 4102 天前,文中所描述的信息可能已发生改变,请仔细核实。


一般来说我们用的大多是OpenSSH来管理我们的默认SSH端口22。如果你的密码够强大,够复杂,其实你无所谓。再者你对于VPS的安全无所谓,搞个博客也只是玩玩,或许你不是那么在意。那么后面的内容其实也没啥好看的。

在我之前的帖子《给VPS搞个防火墙,顺带把SendMail发信慢解决》曾经提到用Fail2Ban来解决这个SSH安全问题,说实在的Fail2Ban兢兢业业,一直对我的VPS做出不错的防护,而且我也一直接到Fail2Ban的告知,又有哪个混蛋来尝试破解和扫描我了。

但是一直以来,其实对我进行尝试破解SSH并不多,一个月也就两三次吧。自从我换了VPS(详见我前面的这篇《换了新的VPS,顺便提在XEN遇到的第一个问题》帖子),一天收到10几封提醒,严重的时候,居然有40多封。真是够坑的。我只好关闭邮件提示(但是仍然发送到邮箱 ),不去看他,毕竟看了也没啥意思,咱家是和平爱好者,又不攻击人家,也不会伪善的晾出来晒对方IP,没意思。

直到昨天去整理邮箱,发现卧槽,才不到一星期,共有113个IP尝试破解密码被Banned。。。好吧,够坑的,哥不跟你们玩了,准备换SSH端口。

其实换SSH的端口并不难,直接vi /etc/ssh/sshd_config接着修改Port段为Port 8080就好了(我只是举个例子,你要是真当我SSH端口是8080,那就煞笔了)。

本来这样也没问题,但是我有如tunnel这类的nologin用户,平时给他们做高级代理用,但并不想让他们知道我的Real SSH Port,怎么办呢?

貌似限制端口仅可被什么类型的用户登录,在OpenSSH没看到这样另类的要求。。。

好吧,另辟蹊径,用OpenSSH管理新的端口的SSH请求,并修改Fail2Ban监控新端口。

对于22端口,安装多一个SSH软件来管理,Roy帮我推荐了Dropbear SSH。Dropbear是一个相对较小的SSH服务器和客户端。它运行在一个基于POSIX的各种平台。 Dropbear是开源软件,在麻省理工学院式的许可证。 这是其官网地址:传送门

Dropbear是特别有用的“嵌入”式的Linux(或其他Unix)系统,如无线路由器。Dropbear实现完整的SSH客户端和服务器版本2协议。它不支持SSH版本1 的向后兼容性,以节省空间和资源,并避免在SSH版本1的固有的安全漏洞。还实施了SCP的。SFTP支持依赖于一个二进制文件,可以通过提供的OpenSSH或类似的计划。它源于一些地方的OpenSSH来处理BSD风格的伪终端。

安装很简单,在其官网下载最新版,并且解压后,然后Configure,接着make && make install就好了。因为我只是给nologin用户使用,如果你想要有SCP功能,请make && make scp && make install使用dropbearkey,创建RSA和DSS公匙。然后只要dropbear -w -s便可禁用root登录和禁止使用密码登录,具体可以使用dropbear -h查看帮助,因为没服务可注册,可以考虑自己写个服务,或者将命令放入rc.local。这样的话,那群煞笔机器人,一直请求22端口的root,便会被直接拒绝。查看日志可以看到:dropbear[14767]: root login rejected

这样便达到目的,Fail2Ban仍然防护着VPS,而且暴露的22端口,是不允许root及密码登录方式。这样就无所谓破解密码了,实话告诉你,RSA我用了4096加密,所以密匙一定很长。。。慢慢破吧。。。反正破了也没root权限。。。。


再说说另外一个,让Wordpress使用上Memcache。毕竟WordPress对memcached及类似的对象缓存系统的支持是很强大的,只需要实现相关缓存操作方法,定义相关的缓存初始化及增删改查、关闭等操作,WordPress即可自动将相关缓存系统引入进来,详细信息可以参考WP_Cache的Wiki。

可以在wordpress官网:传送门,下载最新Memcache的Drop-in高级插件。解压缩后将其放入WordPress根目录的wp-content里面。并修改wp-config.php文件,加上一句:$memcached_servers = array('default' => array('127.0.0.1:11211'));如果你有多个MC的话,可以用类似如下的代码$memcached_servers = array('default' => array('10.10.10.20:11211','10.10.10.30:11211'));如果你默认就是127.0.0.1:11211是MC的话,其实也可以不用在wp-config.php定义的,因为object-cache.php会自动帮你定义的。

WP需要的MC大小其实不大,4MB完全够WP用,WP存储大多查询是轻量级,不过如果你的主题,或者你浪费查询的地方多的话,MC可以大点,比如我,直接定义128MB给MC,无所谓了。

因为VPS优化的很好,所以已经丢掉了W3TC的支持。So,需要定义一些Cache化请求。还有一个另外的好处,减少Wordpress在MySQL生成大量的Transients临时数据。


最后,要说的是,百度权重又回来了~国庆大礼么?

转载请注明转自:kn007的个人博客的《略谈对付SSH端口扫描,还有WP的MC支持