欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

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

程序员文章站 2022-04-25 19:49:10
...

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

略谈对付SSH端口扫描,还有WP的MC支持
一般来说我们用的大多是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临时数据。


最后,要说的是,百度权重又回来了~国庆大礼么?
略谈对付SSH端口扫描,还有WP的MC支持

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