要限制服务器用户的权限,是一个服务器运行良好的重要内容。之前因为需要搭建elasticsearch服务,所以必须要创建一个elasticsearch用户(当然,只要不是root用户就成)。因为这个用户存在的意义只是来启动和维护elasticsearch服务,所以根据最小化原则,需要对它的权限进行控制。下面给大家讲一下怎么去创建和配置一个用户的权限。以下所有的操作均在root用户下执行,如果是非root用户,需要在部分命令前加sudo进行提权。
1. 创建用户组(可以不创建,使用默认和用户名相同的组)
groupadd groupname
2. 创建用户并指定用户组
useradd -g groupname username
或者使用默认用户组
useradd username
3. 修改用户密码
passwd username
4. 限定用户权限
visudo
在最后一行添加:
username ALL=(root) /usr/bin/*, /usr/local/elasticsearch-2.4.4/*, !/usr/bin/passwd [A-Za-z]*
注意:ALL=(root)是说su只能切换到root用户, 后面用逗号隔开的是用户的权限,/usr/bin/*表示可以执行基本命令,/usr/local/elasticsearch-2.4.4/*是我自己的elasticsearch的文件路径下所有权限, !/usr/bin/passwd [A-Za-z]*表示不可以修改除了自己的所有用户的密码。