51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

开发人员异地git clone 导致阿里云报警情况分析

下文要说的这台gitlab服务器是部署在阿里云上的。阿里云根据他自己的大数据系统,如果发现某台服务器突然在不常出现的地方登录,就会自动发短信告警。

国庆期间,突然同事在工作组里发消息说阿里云提示gitlab在江西登录过一次,运维人员立马进行排查。

vi /var/log/secure 找到可疑的IP,如下图:

开发人员异地git clone 导致阿里云报警情况分析_https://www.tiejiang.org_Linux安全运维_第1张

可以看出是git账户通过秘钥登录的。

补充一下,刚开始没注意是通过秘钥登录的,以为是服务器的密码登录验证功能没有关闭导致的,就编辑/etc/ssh/sshd_config把各个安全参数都显式的开启了。【槽点1:修改配置文件前应该先stat命令 看下文件的状态,这样便于排查是否存在被入侵的可能性】

当时也没搞清楚这个git用户是为何在异地登录的,没仔细考虑就先把git账户禁用了(修改/etc/passwd 将git用户的改成了/bin/false),防止它再次登录,另外在iptables上也DROP掉这个IP。

下午,正打算git clone 下载些代码到本地,发现git clone报错了,无法下载文件(忘记当时的截图被我放哪里去了,囧)。联想到可能是上午禁用git账户导致的故障。

登录gitlab服务器,将git账户再次启动。继续git clone,发现可以正常下载代码了。

这么说的话,阿里云报警提示江西登陆git,估计是某位同事回老家使用了git同步代码了,

整个过程只是虚惊一场,但我们也有必要看下为何会出现上述的这一些列的情况。

登录到gitlab服务器

su - git

cd .ssh

ll 可以看到authorized_keys这个文件

vim authorized_keys

可以看到authorized_keys文件里面都是些公钥(部分截图如下)

开发人员异地git clone 导致阿里云报警情况分析_https://www.tiejiang.org_Linux安全运维_第2张

原因:

实际上,我们登陆进gitlab的网页后台,每次添加的公钥,在服务器端就是添加到git账户下面的,因此每次git clone 或者git push 这些操作都是相当于通过密钥登陆git账户到服务器上执行的。

所以我们在/var/log/secure里面看到很多的git 账户使用密钥登陆的信息。

完。

还有一个关于gitlab的笔记姊妹篇(2):http://www.tiejiang.org/11465.html

赞(0)
未经允许不得转载:工具盒子 » 开发人员异地git clone 导致阿里云报警情况分析