Debian添加用户和组
而一般用户的登陆系统都是以/bin/bash这个shell登陆的,那么什么是/sbin/nologin又是什么呢? /sbin/nologin这个shell的用户是无法登陆系统的,但是可以使用系统服务,要完全让一个用户无法登陆并且无法使用系统服务那么就的使用/bin/false这个shell。
经常会遇见需要微系统创建若干个用户,让其方便使用系统提供的服务,但是又不想让其登录系统,以免造成安全隐患。通常在这种情况下可以通过创建不允许终端登录的用户来解决。方法如下:
首先查看/etc/shells中有没有/sbin/nologin(debian和Ubuntu下为/usr/sbin/nologin):
~$ cat /etc/shells
# /etc/shells: valid login shells
/bin/csh
/bin/sh
/usr/bin/es
/usr/bin/ksh
/bin/ksh
/usr/bin/rc
/usr/bin/tcsh
/bin/tcsh
/usr/bin/esh
/bin/dash
/bin/bash
/bin/rbash
/usr/bin/screen
如果没有,则加上:
~$ sudo echo "/sbin/nologin" >> /etc/shells
#debian和ubuntu为
~$ sudo echo "/usr/sbin/nologin" >> /etc/shells
然后添加新用户,其中M为不为该用户创建主目录,-s为指定该用户登录的shell
~$ sudo useradd -M -s /sbin/nologin
#debian 和ubuntu为
~$ sudo useradd -M -s /usr/sbin/nologin
对于已经存在的用户可以利用usermod对其进行修改:
~$ sudo usermod -s /sbin/nologin
#debian 和ubuntu为
~$ sudo usermod -s /usr/sbin/nologin
Debian删除用户
# userdel testuser
不过需要注意的是删除用户并不会删除为该用户创建的主目录,这样是因为该目录中还有可能保存着有用的文件,如果确信该用户的主目录没有需要的文件了,需要手工删除其主目录,例如:
# rm/home/testuser
Debian修改密码
# passwd username