一次安全配置的乌龙事件

最近开始对公司的服务器进行安全配置,原本是不太想动太多配置的,原因嘛,就是会有人上去偷窥你干的活,所以嘛,我就以最小的改动或者基本不改动来加强一下。

本来是不太想过多改动的,当时想着等级保护策略,就增加了一条PAM的安全策略,结果,把自己堵外面了,真的是欲哭无泪啊。

后来只能让现场人员改动端口了,我也是醉了,堪称一次大乌龙事件。当然,还有另外的一个乌龙事件,就不多说了,哈哈。

本站服务器被黑了

说出来可能多少有点丢人,对,本站——黑色自由的服务器被黑了。。。同时被黑的还有另外两台服务器。事情的起因是这样的:

今天凌晨,收到企鹅家的短信提醒,说是在服务器上发现了可疑文件,二话不说到公司后就登陆上去看了一下,嗯,果然,眼熟的挖矿病毒。

/tmp/.font-unix目录下,mine,init,hide,各种齐全。直接清理一下,该杀的杀,该删的删,顿时CPU资源就降下来了,mine这个进程吃完了所有CPU资源。

清理完之后,随手看了一下端口,卧槽,这是个什么玩艺,怎么服务器连到一些奇怪的IP。继续查吧,原来是个init程序,删了删了。这下终于系统又恢复正常了。

为了防止有些其它后门什么的,又去把sshd_config检查了一下,PAM关了,允许root登陆关了,再看了下没有可疑的证书什么的,最后,firewalld装上,策略搞一搞。

三台服务器,同样的操作,这根本就是密码泄露啊卧槽:

180.246.62.19 Fri Jul 22 05:24 – 05:32 (00:07)

180.246.62.19 Fri Jul 22 05:22 – 05:32 (00:09)

180.246.62.19 Fri Jul 22 05:20 – 05:32 (00:11)

看看,这三条记录,间隔2分钟分别登陆3台服务器,这根本就不是漏洞造成的,这根本就是密码泄露,虽然我3台服务器用户名密码一样,但这么精确的登陆,根本就是连我服务器地址都拿到了。

这样一来,什么样的场景能同时拿到我服务器密码和地址?肯定是工作单位,家里。

工作单位,嗯,有人在内网sniffer,家里,破长城宽带,也有可能被sniffer,还有就是,黑色自由用的特别版SSH工具,比如SecureCRT,Xshell。

先改个密码吧,然后再考虑考虑要不要上证书。这也太操蛋了。

python生成随机密码

因为需要经常修改密码,之前都是用lastpass来生成,还需要登陆,嫌麻烦,就弄了个python的。

网上其他人的代码生成随机密码可能更严谨一些,我这纯粹就是懒,图个方便。

代码总共生成两组密码,长度12,第一组是数字,小写字母,大写字母,特殊字符各随机选3个组合在一起,然后顺序打乱生成一组密码。

第二组是从数字,小写字母,大写字母,特殊字符里随机选12个组成一个密码。

import random
number=random.sample('0123456789',3)
big=random.sample('abcdefghijklmnopqrstuvwxyz',3)
small=random.sample('ABCDEFGHIJKLMNOPQRSTUVWXYZ',3)
special=random.sample('!@#$%^&*',3)
temp=number+big+small+special
random.shuffle(temp)
result="".join(temp)
print(result)
pass2=(random.sample('0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!@#$%^&*',12))
password2="".join(pass2)
print(password2)

mount.nfs: Protocol not supported

公司项目新上了NAS系统,也不晓得是个什么破烂玩艺,反正进去一通配置就搞行了,下面是挂载遇到的问题:
OS:CentOS7.9
NAS NFS:/pool/data
OS的NFS客户端安装就不说了,一大堆,直接YUM就行了。
问题出在挂载的时候,直接mount -t nfs的时候提示mount.nfs: Protocol not supported,意思就是不支持的协议,既然这样就指定协议好了:
mount -t nfs -o rw,nfsvers=3 remote:/pool/data /localdirectory
当然还有nfsvers=2和1的,反正自己测好了,我这里是用3就可以正确挂载了。

开启SFTP日志记录

因为工作需要,需要调试sftp,设备的一系列操作日志都要,所以就有了这篇。PS:公司采购定制设备,猫腻是真多,乙方供货商态度真的是差的一批,程序逻辑半天都说不清楚,每次说的还都不一样,我都想去翻他代码了。

vi /etc/ssh/sshd_config

Subsystem sftp /usr/libexec/openssh/sftp-server -l INFO -f local5
LogLevel INFO

INFO只是默认情况下的详细信息之一,它提供有关文件传输,权限更改等的详细信息。如果您需要更多信息,则可以相应地调整日志级别。各个级别(按详细顺序)是:QUIET, FATAL, ERROR, INFO, VERBOSE, DEBUG, DEBUG1, DEBUG2, and DEBUG3
VERBOSE上的所有内容可能都比您想要的要多,但它可能很有用。

vi /etc/rsyslog.conf
在最后添加:
auth,authpriv.,local5. /var/log/sftp.log

service rsyslog restart
service sshd restart

可以去/var/log/查看日志了。一切都将在这里显形。:)

nginx lua waf部署

刚处理完服务器安全问题。

到新公司来接手一堆烂服务器,第一次看到用宝塔管理业务服务器的,无奈。

首先说说nginx lua waf的部署环境,centos 6,nginx 1.12.1,跑的php。lnmp编译安装。

服务器上还部了个安全狗,这是个什么鬼?

开干吧,nginx -V,查看nginx编译参数,这些参数要记下来,后面有用。

#nginx -V
nginx version: nginx/1.12.2
built with OpenSSL 1.0.1e-fips 11 Feb 2013
TLS SNI support enabled
safedog ......
configure arguments: --prefix=/opt/programs/nginx_1.12.2 --with-http_realip_module --with-http_sub_module --with-http_gzip_static_module --with-http_stub_status_module --with-http_ssl_module --with-threads --with-http_v2_module --with-http_addition_module --with-http_dav_module --with-file-aio --with-http_gunzip_module --add-module=nginx_upstream_check_module-master

去nginx.org下载对应版本的源码回来,因为需要增加lua模块。

阅读更多

说说疫情吧

不知道会不会因为这个敏感的话题被封掉。

对于我们普通老百姓来说,所在地一但发生了疫情,可能马上就要面临隔离。从经济角度来看,中产们的各种贷款可能就要被影响,因为一但封锁,你的工作,你的工司,基本上就处于停滞状态了,有一些支持远程办公的公司,相对来说还会好一点。但是,还有一点不能忽视的是,你的公司支持远程办公,而你公司所处的产业链呢?所以,很多公司在这场疫情中倒掉了。


从生活角度看,隔离后要面临的就是吃的问题,就是基本的生活保障问题,再有就是部分患有疾病需要长期服药,以及行动不便的老年人问题。食物从哪里来?社区会提供供应吗?药品呢?同时,会不会有人趁这个时间点出售高价物品呢?


我们在网上看到各种抢菜的,但是从我家乡来看,隔离区直接把交通完全封锁了,各大买菜平台根本无法送货,然后就导致有人在小区出售价格翻了2倍的食物,这些人的食物又是从哪里来的?他们的食物为什么可以进入隔离区?


疫情,虽然给大家伙的生活和工作带来了考验,也让一些妖魔鬼怪们浮出了水面。有些话题,还是不能够太深入,因为,太过于敏感。