上一篇 我们讲到 为什么要用 centos 搭建网站 完全是闲得蛋疼。既然开始就一直走吧!网站架构 nginx +mysql +php
以前听说过网站攻击相关的文章。对于安全意识还是有一点的。只是对于攻击来说来TM都是小儿科。
比如网站后台 一般情况都是admin wp-admin 这种的。
为了安全起见一把都会改一个其他名字。对于我这种自会开发,不会运营的人来说。一开始肯定没有改啊。
就这样放心大胆的运行了几天。
但是从中发现一个问题就是。网站访问速度比一开始要慢了很多。
我又去吧代码拉下来看,哪里出了问题, 经过检查代码 也没有发现是什么问题。而且还有加缓存。查询更新 。怎么会越来越慢呢。
那时候的想法都是反正没有几个用户。重装。重启。都是必要手段。
但是发现 重启没有过1天就会慢下来。
一天终于忍受不了。 因为我自己打开都很慢。那其他根本打不开了, (我是200m光纤)。
于是都去了解观看各种关于网站的运营 安防。
百度这个坑逼,到处都是转载。也不验证。解决一个问题。翻半天都翻不到。想要打答案。
迫于无赖。运行了纸飞机。去google 找了
通过谷歌爸爸的文字引导
去看了如下日志分析。下面日志 需要在nginx 中配置。关于配置以后文章中详细讲解。
access.log 高达484mb日志
nginx_error.log 高达105mb日志
我尼玛这么多日志怎么分析,天生程序员的命。
没有办法慢慢分析吧。但是从中发现一些问题端倪。
蜘蛛科普
百度蜘蛛:Baiduspider
谷歌蜘蛛:Googlebot
360蜘蛛:360Spider
SOSO蜘蛛:Sosospider
雅虎蜘蛛:“Yahoo! Slurp China ”或者Yahoo!
有道蜘蛛:YoudaoBot,YodaoBot
搜狗蜘蛛:Sogou News Spider、Sogou XXX spider等
MSN蜘蛛:msnbot,msnbot-media
必应蜘蛛:bingbot
一搜蜘蛛:YisouSpider
Alexa蜘蛛:ia_archiver
宜sou蜘蛛:EasouSpider
即刻蜘蛛:JikeSpider
一淘网蜘蛛:EtaoSpider
国外蜘蛛YandexBot、AhrefsBot、ezooms.bot
也发现一些外国蜘蛛。 忘记名字了。
除了蜘蛛以外其他几个IP比较明显。 access.log
95.211.163.39 - - 加入黑名单 来访次数2362 IP地址: 95.211.163.39荷兰
95.213.130.90 - -加入黑名单 来访次数101 IP地址: 95.213.130.90俄罗斯
112.26.227.250 - - 加入黑名单 来访次数465 IP地址: 112.26.227.250安徽省淮南市 移动
220.181.55.144 - - 加入黑名单 来访次数 2021 IP地址: 220.181.55.144北京市北京市 电信
就就发现问题了。我是在被打呢。怎么能不慢。。
在去看了一下。nginx_error.log
发现很多ip登录我22端口。而且都是连续登录。我尼玛 小网站 开车怎么会都盯上了呢。
查询资料
1.如何改端口,2.如何禁止 ssh 3.如何禁止暴力ip
真是日了gou了讲得宇宙撞地球。完全不明白。
待续。。。
2018年4月16日
上次写到一半突然有事情,就没有继续在写了。
当分析日志的时候,可以剔除爬虫,后再看日志。这样会少很多不需要看的日志。也可以在nginx 中配置。其他博客中讲解。
从上面日志发现如下
1.无限次请求 ssh 22端口
2.垃圾暴力请求(访问不存在的目录)
第一种主要是通过工具扫描端口号 识别到22就表示 开启ssh 就会通过root 或者 其他账户无限次登录。这样网站肯定会慢啊。因为要相应登录。
解决办法有很多。只是看你用哪一种而已。我已www.3qmv.com 为例。
3qmv用了3种方式来防止无限登录ssh
1.更改ssh 端口(定期更改) 地址-->机票
2.开启其他别名用户可以登录root(加入复杂自己都记不住的名字 可以保存本地记事本,与自己无关的密码账号。生日啊,qq账号 其他与自己相关的垃圾密码账号不要用。想好名字后再本地保存不要放在qq 或者网上被共享发现。)
3.不能直接登录 root 用户
4.加入登录次数限制。一个ip只能登录2次。如果发现密码错误。或者频繁登录。无限期加入黑名单(手动解禁才能生效)
生成密码 有2中方式。第一 https://suijimimashengcheng.51240.com
这种密码。
这种账号。
还有一种 就是如果你会写代码或者。任何一种代码都行。
加入A-Z a-z 0-9 [email protected]#$%^&* 随机出来长度。这种密码账号
(啊~~,暴力**你的密码至少要1万年以上!)
暴力**是不可能了。前提是你必须备份自己不要忘记。或者瞎搞删除了,后果很爽,不建议试。
但是我每天都会去看日志。比如
nginx_error.log
access.log
/var/log/secure
/var/log/messages
这几个是是我观察的重点对象。
后期会加 fail2ban.log
去分析请求了那些数量。观看了。那些类容。