上一篇 我们讲到 为什么要用 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 或者 其他账户无限次登录。这样网站肯定会慢啊。因为要相应登录。
解决办法有很多。只是看你用哪一种而已。。
用了3种方式来防止无限登录ssh
1.更改ssh 端口(定期更改) 地址-->机票
2.开启其他别名用户可以登录root(加入复杂自己都记不住的名字 可以保存本地记事本,与自己无关的密码账号。生日啊,qq账号 其他与自己相关的垃圾密码账号不要用。想好名字后再本地保存不要放在qq 或者网上被共享发现。)
3.不能直接登录 root 用户
4.加入登录次数限制。一个ip只能登录2次。如果发现密码错误。或者频繁登录。无限期加入黑名单(手动解禁才能生效)
生成密码 有2中方式。第一 https://suijimimashengcheng.51240.com
这种密码。
这种账号。
还有一种 就是如果你会写代码或者。任何一种代码都行。
加入A-Z a-z 0-9 !@#$%^&* 随机出来长度。这种密码账号
(啊~~,暴力破解你的密码至少要1万年以上!)
暴力破解是不可能了。前提是你必须备份自己不要忘记。或者瞎搞删除了,后果很爽,不建议试。
但是我每天都会去看日志。比如
nginx_error.log
access.log
/var/log/secure
/var/log/messages
这几个是是我观察的重点对象。
后期会加 fail2ban.log
去分析请求了那些数量。观看了。那些类容。