![Linux用户和组管理的常用命令 图片[1]-Linux用户和组管理的常用命令-不念博客](https://www.bunian.cn/wp-content/uploads/2023/10/u42512126211320508118fm253fmtautoapp138fJPEG.webp)
- 用 root 用户登录,首先创建一个 bunian 用户。
useradd -m bunianuseradd -m bunianuseradd -m bunian
-m
用于创建用户主目录,默认是不创建的。此外用 -d
参数可以自定义主目录(感觉很少用)。
- 创建 bunian 用户的密码,该命令也可以用于修改密码。回车后可输入密码。
passwd bunianpasswd bunianpasswd bunian
- 在 Linux 中,当创建了一个用户,系统会自动为其新建一个与用户名相同的主用户组名。可用下列命令查询 bunian 用户所属组(包括主组和辅助组):
groups bunian# bunian : buniangroups bunian # bunian : buniangroups bunian # bunian : bunian
本次将 bunian 用户改到自己所需要的用户组中。
# 新增以下组usermod -aG adm,cdrom,sudo,dip,plugdev,lxd bunian# 新增以下组 usermod -aG adm,cdrom,sudo,dip,plugdev,lxd bunian# 新增以下组 usermod -aG adm,cdrom,sudo,dip,plugdev,lxd bunian
查询 bunian 用户和主用户组的信息。
id bunian# uid=1001(bunian) gid=1001(bunian) groups=1001(bunian),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),117(lxd)id bunian # uid=1001(bunian) gid=1001(bunian) groups=1001(bunian),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),117(lxd)id bunian # uid=1001(bunian) gid=1001(bunian) groups=1001(bunian),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),117(lxd)
❝uid 和 gid 是由 Linux 系统分配给每个用户和主用户组的数字,从而允许系统识别用户和用户组。
默认情况下系统会自动为新的用户按照数字顺序从 1000 开始分配 uid 和 gid。前 1000 个账户号码通常被保留给系统账户、服务和其他特殊账户。uid 和 gid 分别存储在
/etc/passwd
和/etc/groups
目录中。❞
上述查到的各个组的定义如下:
adm # 此组的成员可以查看许多日志文件cdrom # 此组的成员可以访问 CD-ROM 驱动器和其他光驱sudo # 此组的成员可以使用 sudo 命令来执行需要 root 权限的命令dip # 此组的成员可以使用 ppp 和 dip 命令来拨号和使用PPP连接plugdev # 此组的成员可以通过 pmount 挂载和卸载可移动设备lxd # 此组的成员可以管理 LXD 容器adm # 此组的成员可以查看许多日志文件 cdrom # 此组的成员可以访问 CD-ROM 驱动器和其他光驱 sudo # 此组的成员可以使用 sudo 命令来执行需要 root 权限的命令 dip # 此组的成员可以使用 ppp 和 dip 命令来拨号和使用PPP连接 plugdev # 此组的成员可以通过 pmount 挂载和卸载可移动设备 lxd # 此组的成员可以管理 LXD 容器adm # 此组的成员可以查看许多日志文件 cdrom # 此组的成员可以访问 CD-ROM 驱动器和其他光驱 sudo # 此组的成员可以使用 sudo 命令来执行需要 root 权限的命令 dip # 此组的成员可以使用 ppp 和 dip 命令来拨号和使用PPP连接 plugdev # 此组的成员可以通过 pmount 挂载和卸载可移动设备 lxd # 此组的成员可以管理 LXD 容器
- 此时可以切换到 bunian 用户。
su buniansu buniansu bunian
切换到 bunian 用户后发现终端只显示 $
符号。这是因为没有设置登录 shell,导致命令默认使用 /bin/sh
。使用以下命令进行修改:
usermod -s /bin/bash bunianusermod -s /bin/bash bunianusermod -s /bin/bash bunian
- 以上 wang 用户配置完毕。但在使用 sudo 命令时,需要输入 bunian 用户的密码,相对比较麻烦。可编辑
/etc/sudoers
文件进行修改:
sudo vim /etc/sudoers# 找到下列行:# Allow members of group sudo to execute any command%sudo ALL=(ALL) :ALL# 修改为:# Allow members of group sudo to execute any command%sudo ALL=(ALL) NOPASSWD:ALLsudo vim /etc/sudoers # 找到下列行: # Allow members of group sudo to execute any command %sudo ALL=(ALL) :ALL # 修改为: # Allow members of group sudo to execute any command %sudo ALL=(ALL) NOPASSWD:ALLsudo vim /etc/sudoers # 找到下列行: # Allow members of group sudo to execute any command %sudo ALL=(ALL) :ALL # 修改为: # Allow members of group sudo to execute any command %sudo ALL=(ALL) NOPASSWD:ALL
再次使用 sudo 命令无需输入密码。
如果在上述第 3 步中,没有为 bunian 用户分配为 sudo 用户组,也可以单独为 bunian 用户设置使用 sudo 命令的权限,即通过编辑 /etc/sudoers
文件进行修改:
❝
注意由于没有为 bunian 用户分配为 sudo 用户组,因此下列命令需要在 root 用户下执行。❞
# 需要在 root 用户下执行 !!!# 新增 /etc/sudoers.d/bunian 文件并编辑vim /etc/sudoers.d/bunian# 在文件中添加以下内容:wang ALL=(ALL) NOPASSWD:ALL# 需要在 root 用户下执行 !!! # 新增 /etc/sudoers.d/bunian 文件并编辑 vim /etc/sudoers.d/bunian # 在文件中添加以下内容: wang ALL=(ALL) NOPASSWD:ALL# 需要在 root 用户下执行 !!! # 新增 /etc/sudoers.d/bunian 文件并编辑 vim /etc/sudoers.d/bunian # 在文件中添加以下内容: wang ALL=(ALL) NOPASSWD:ALL
- 进入 authorized_keys 目录,将自己的公钥复制到目录中。以后使用私钥登录即可。
mkdir -p ~/.ssh && vim ~/.ssh/authorized_keysmkdir -p ~/.ssh && vim ~/.ssh/authorized_keysmkdir -p ~/.ssh && vim ~/.ssh/authorized_keys
在有密钥登录的前提下,可顺便将密码登录关闭。
# 修改配置文件sudo vim /etc/ssh/sshd_config# 将以下内容进行修改PermitRootLogin no # 关闭 root 用户直接登录PasswordAuthentication no # 关闭密码登录# 修改配置文件 sudo vim /etc/ssh/sshd_config # 将以下内容进行修改 PermitRootLogin no # 关闭 root 用户直接登录 PasswordAuthentication no # 关闭密码登录# 修改配置文件 sudo vim /etc/ssh/sshd_config # 将以下内容进行修改 PermitRootLogin no # 关闭 root 用户直接登录 PasswordAuthentication no # 关闭密码登录
修改上述配置后重新加载 ssh:
sudo systemctl reload sshdsudo systemctl reload sshdsudo systemctl reload sshd
- 如果要删除 bunian 用户,则在 root 用户下执行以下命令:
# 删除用户 bunian, 但保留了其主目录userdel bunian# 删除 bunian 同时删除了主目录userdel -r bunian# 删除用户 bunian, 但保留了其主目录 userdel bunian # 删除 bunian 同时删除了主目录 userdel -r bunian# 删除用户 bunian, 但保留了其主目录 userdel bunian # 删除 bunian 同时删除了主目录 userdel -r bunian
© 版权声明
本站文章由不念博客原创,未经允许严禁转载!
THE END