这个月某一天,我毕设做到一半,遇到一个以前解决过的问题。遂打开我的博客,想找一下解决方案。

打开之后报500错误,只有几个静态页面可以正常显示。我马上登上服务器,发现服务器里的 jar 包,还有各种图片,视频资源都在,那说明不是阿里云的问题。

看了一下日志,发现是数据库连不上。远程连上数据库一查,发现 MySQL 数据库里就剩一个叫 PLEASE_READ_ME_VVV 的库,里面留了一张叫 warning 的表,我当时就反应过来,应该是数据库被黑了。


果不其然,表中字段有id,warning,Bitcoin_Address,Email。 Bitcoin_Address 那自然就是黑数据库那人比特币的账户了,Email 就是他的联系邮箱。warning 的信息如下:


由于这个服务器我也就用来写写学习过程中遇到的问题,顺便做做课设展示,压根就没做安全方面的考虑,阿里云提了一个工单,想试试能不能恢复,毕竟上面有差不多一年半的笔记,说没就没了,还是很受打击。

工单回复:


其实这个结果也在我预料之中,毕竟我之前从未考虑过安全性问题,自然也就不可能创建过快照。


还好我一直耳濡目染数据备份的思想,之前写的笔记在学校台式机上和移动盘里都还有,就是之前几个朋友的留言找不回来了,非常遗憾,因此数据库表信息也要常备份。

受疫情影响,还没回学校,所以网站数据还没恢复。经此一事,或许也是好事,毕竟这只是我自己的数据库,总体没受多大是损失,却让我学会了很多防护措施: 1.数据库要时常备份,也要适时创建快照 2.服务器密码和数据库密码一定要具有一定的复杂度 3.MySQL不使用默认的3306端口,修改为其他端口(修改端口后记得上服务器开放此端口) 4.禁止远程访问,缺点就是你自己也无法随时随地远程访问你的数据库了 5.购买安全产品

最后再次强调一下,数据库不经常备份,不做安全保护。那你就得时时刻刻有删库跑路的觉悟。