linux添加用户并赋特殊权限

假设添加用户benben到用户组,先将基本操作及命令写上。后面再对部分指令做详细介绍。
step1: sudo adduser benben创建用户;
step2: 使用sudo su切换到root权限,进入/home/目录,然后就可以看到你用户组中的其他成员;
step3: 进入到benben/目录。由于此目录下的文件基本都是隐藏文件(以.开头),所以使用ls -al可以查看目录详细内容;
step4: 从上一级中的其他用户目录中,拷贝一份.ssh文件到benben/目录下;
step5: 改变.ssh文件所有者和文件所有的用户组,利用chown benben:benben .ssh
step6: 进入.ssh目录,修改authorized_keys文件,将自己的公钥放到此文件中
step7: 将用户添加到wheel用户组,usermod -aG wheel benben
step8: 解决普通用户使用docker命令加sudousermod -aG docker benben

创建用户的命令

上文中介绍了adduser,其实还有另外一种创建方法,useradd。两者的联系与区别如下:
首先进入到/usr/sbin目录下,接着使用命令ll | grep useradd。可以看到下图所示的结果。
在这里插入图片描述
观察结果中的第一条和第三条,发现原来adduser是链接到了useradd,于是useraddadduser的作用是完全一样。都是在创建用户之后,在/etc/passwd文件中加一条有关新建用户的记录。接着在/home目录下创建新用户的主目录,并把/etc/skel目录中的文件复制到这个主目录下面。
但是这种方法创建的新用户,在设置密码之前是不能登录到服务器上的。你还需要在root权限下使用命令passwd 来为指定用户设置密码,例如passwd benben

ssh免密码登录

免密登录原理是基于密钥的验证,客户端生成一对密钥,将公钥放到远程服务器上。这样就可以避免其他客户仿冒。具体做法就是:
首先在客户端生成一对公钥和私钥,id_rsaid_rsa.pub两个文件。生成的工具有很多,例如你可以打开git控制台,然后输入ssh-keygen命令,来启动该程序。(在Linux/Mac系统中,ssh-keygenssh软件包提供,在Windows上,该程序包含于MSysGit软件包中。)
文件生成后,将公钥id_rsa.pub文件拷贝到服务端的~/.ssh/authorized_keys文件中。

wheel用户组

通常情况下,一般用户通过执行su -命令,然后输入正确的root密码,就可以登录到root用户,从而对系统进行管理员级别的配置。为了加强系统的安全性,还需要建立一个管理员的组。只允许这个组的用户来执行su -命令来登录root用户,其他组的用户即使执行命令su -,输入正确的root密码,也是无法登录root用户。这个组的名称就是wheel
step7的作用就是将benben加入wheel组而不离开原来的组。

参考文章

  1. 详解CentOS与Ubuntu下的useradd与adduser

你可能感兴趣的:(linux)