在 centOS 上创建 SSH 用户 developer 普通用户
在 centOS 上,使用当前用户创建的文目录件,默认为归其所有。root 用户对此目录文件,拥有全部权限。
若目录文件的所有者权限,那么:
- 文件,默认
-rw-r--r--
(644),保证其他用户可以读取文件内容。 - 目录,默认
drwxr-xr-x
(755),保证属主用户对目录进行编辑,保证其他用户可以读取目录中的信息,可以进入到目录中。
权限字母含义:
r
(Read ,读取,权限值为4):对目录来说,具有浏览目录的权限。对文件而言,具有读取文件内容的权限。w
(Write,写入,权限值为2):对目录来说,具有删除、移动目录内文件的权限。对文件而言,具有新增、修改文件内容的权限。x
(Execute,执行,权限值为1):对目录来说,该用户有进入目录的权限。对文件而言,具有执行文件的权限。可执行文件,能运行,类似 windows 上 exe 文件。
在 centOS 上,普通用户,对于非其所有的目录文件,默认只能浏览、阅读、执行。
在远程服务器端中,用户种类:
- root:系统超级用户,属于 root 组。禁止 ssh 登录远程服务器 shell。
- admin:自定义管理员用户,属于 wheel 组。允许 ssh 登录远程服务器 shell。
- developer:自定义普通用户,属于 develop 组。允许 ssh 登录远程服务器 shell。对项目程序代码文件,是所有者。scp、sftp 下载上传文件。
- git:自定义普通用户,属于 develop 组。禁止 ssh 登录远程服务器 shell。对共享的 Git 仓库是所有者。Git 上传下载 Git 远程仓库。
在本机客户端中,用户种类:
- root:系统超级用户,属于 root 组。进入本机 ceonOS 时,默认使用的用户。为了个人方面,经常使用。
创建用户
目的:允许用户使用 SSH 连接登录,用作程序开发人员的普通账户。
# 远程服务器端,创建用户组groupadd develop # 远程服务器端,创建用户useradd developer -g develop -m -d /var/web/developer
创建的 delveloper 用户,生成的目录,权限不需要修改,默认即可。目录权限说明:
- /var/web:所有者 root,所属组 root,权限
drwxr-xr-x
(755)。 - /var/web/developer:所有者 developer,所属组 develop,权限
drwx------
(700)。 - /var/web/developer/.bash_logout:所有者 developer,所属组 develop,权限
-rw-r--r--
(644)。 - /var/web/developer/.bash_profile:所有者 developer,所属组 develop,权限
-rw-r--r--
(644)。 - /var/web/developer/.bashrc:所有者 developer,所属组 develop,权限
-rw-r--r--
(644)。
# 用户组列表文件:cat /etc/group # 查看用户列表文件:cat /etc/passwd # 查看系统中有哪些用户:cat /etc/passwd |cut -d : -f 1 # 查看可以登录系统的用户:cat /etc/passwd |grep -v /sbin/nologin |cut -d : -f 1
useradd 命令
useradd [选项] 用户名
选项 | 含义 |
---|---|
-d主目录 | 手工指定用户的主目录。主目录必须写绝对路径,而且如果需要手工指定主目录,则一定要注意权限。如果此目录不存在,则同时使用-m 选项,可以创建主目录。 |
-D | 变更预设值。显示或者更改 useadd 默认配置。 |
-m | 建立用户时强制建立用户的家目录。在建立系统用户时,该选项是默认的。 |
-M | 不要自动建立用户的登入目录,主目录。 |
-g组名 | 手工指定用户的初始组。一般以和用户名相同的组作为用户的初始组,在创建用户时会默认建立初始组。一旦手动指定,则系统将不会在创建此默认的初始组目录。 |
-G组名 | 指定用户的附加组。我们把用户加入其他组,一般都使用附加组; |
-sshell | 手工指定用户的登录 Shell,默认是/bin/bash。 |
useradd -m -d /var/test test
创建用户test,-m
表示要创建主目录,-d
用来指定主目录的路径为/var/test。
usermod -aG testgroup test -m -d /var/test
更改用户test隶属 testgroup 组。参数-d
,单独使用时,只是把保存在/etc/passwd 配置文件中的源目录名改成指定的新目录名,并不会把源目录下的内容移动到新目录下。如果要把源目录下的内容移动新目录下,则要-d
和-m
一起使用,才会把源目录下的内容移动到新目录下。