新增用户

1
2
useradd name
passwd name

SSH权限

1
vim /etc/ssh/sshd_config

在文件后面添加AllowUsers name,然后重启SSH服务。

这里我还配置了PermitRootLogin no来禁用了root登录,配置之后将不能使用root连SSH,可以使用新建的用户通过su切换到root

1
service sshd restart

此时,就已经可以通过新建的账号通过SSH连接到服务器

Jenkins

由于已经禁用了root用户,所以Jenkins这边需要改为新建的用户。

通过系统管理->系统设置下的Publish over SSH中的SSH Servers修改。

修改完之后,发现通过Jenkins发布应用还是会报错

ERROR: Exception when publishing, exception message [Permission denied]

由于之前的一些Jenkins输出的文件和启动脚本都是由root创建。所以使用新的用户的时候,没有权限。

所以,我这里直接将需要Jenkins操作的文件的所有者改为新用户。

1
chown -R <新用户>:<新用户所属组> jenkins操作根目录

做完这些,仍然有问题,看日志发现是kill进程失败了。

由于之前的进程是root启动的,新用户没有权限kill,所以我们需要使用root用户先kill掉。