centos php 开发,如何管理代码更新、开发人员权限控制

开发人员上线新的代码后,需要有权限登录生产服务器进行更新,从安全角度又应该进行最小化授权。我是这么做的,例如:
开发人员小明使用xiaoming用户名登录服务器,用sudo+web站点所属用户名 + svn up 进行更新。

新建用户、站点目录以及配置权限

1.增加站点的svn 更新用户

useradd test_svn1
设置用户密码:
passwd user_test_web
xiaoming 用户创建同上

2.设置站点目录权限

建立web站点,目录/data/wwwroot/test-web
chmod -R 700 test_web/
设置站点的所属用户
chown -R user_test_web:user_test_web test_web/

3.设置sudo,su权限

安全起见,仅允许wheel组使用su命令
vim /su/etc/pam.d/su
#auth required pam_wheel.so use_uid
去掉#,使此行配置生效.禁止非wheel组用户使用su命令
visudo在底部添加此行:
xiaoming ALL=(user_test_web)NOPASSWD:/usr/bin/svn

4.使用:

xiaoming用户ssh登录后,可以使用sudo -u  user_test_web svn up 更新。

好处:

1.权限最小化:用户xiaoming对此站点目录没有任何权限
2.修改可追溯:仅能使用svn进行操作,这些是有记录可查的
3.有效控制:xiaoming用户不从事此项目,删除此用户即可,其他开发用户不受影响

作者: 白金马桶

天道酬勤...

发表评论