程序员必备小知识系列--个人网站功能开发与性能优化经历(6)网站安全方面优化

13,383 阅读2分钟

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动

自己搭建了一个基于SpringBoot+Spring Security+MyBatis+MySQL+Redis+Thymeleaf的博客网站。上线个人云服务器后,发现服务器访问慢。个人服务器是1核2G的,1M宽带,虽然服务器是低配的,但是可以通过优化代码,中间件等手段,来提升性能。我会讲解个人网站功能的开发与一些性能优化的经历。

这篇主要讲网站安全方面优化

一、修改数据库端口,redis端口等等

刚发布网站的时候,用不了一个月,就有一些人会攻击你的小网站,拿你的网站当成攻击的试验品。

当时博主安全意识不够,像mysql默认端口3306,redis默认端口6379统统没有改,统统都是这些端口,虽然mysql和redis的密码不是123456或者root这种基础级别的,已经改成很复杂的那种,但是还是被人入侵了,网站被黑了。

在这里插入图片描述

数据库的数据被删除,redis被宕机,密码他们很难破解的,我想他们绕过密码了,知道了端口,网站的ip也很容易拿到,ping域名就能拿到ip,有可能采用了CC的肉鸡,或者DDOS,对这些方面不太了解,但是进入服务器后台监控查看,CPU全部爆满,Redis被宕机也就不奇怪了。

虽然我备份了数据,但是还是蛮生气的,也无法抓到真凶,只能加强安全防护。为了安全起见,mysql和redis都重装,并修改mysql和redis的端口等等,并进行定时备份。之前写过定时备份mysql的文章Linux定时备份MYSQL数据

二、开启防火墙

防火墙还是要开启的,安装软件的时候为了方便会把防火墙给关了

systemctl start firewalld

三、添加入站规则

在云服务器的管理界面,点击安全组,选中入站规则,这里填入要访问的端口号,开通对应的端口号,不要把所有端口号都开通,不然肯定会遭到一堆CG或DOS攻击 在这里插入图片描述

开启的端口只要数据库,redis,服务等端口就行,其他端口按需来开,没必要的端口不要开。