關於系統賬戶
在生產環境中使用root用戶運行web站點是一件極爲不安全的,所以我們需要使用非root賬戶來運行服務程序。這裏要闡述下linux關於用戶和組的操作命令,已經一些關於用戶和組的文件。
useradd
userdel
usermod
chsh
chfn
id
chage
命令:useradd
功能:添加系統賬戶
用法:useradd [options] USERNAME
-u NUMBER 修改UID(0=root,系統用戶1-499,普通用戶 >=500)
-g NUMBER(GID) 指定基本組ID,必須存在
-G Number(GID) 指定附加組ID,必須存在
-c Comment 指定注視信息
-d PATH 指定家目錄
-ppassword 制定賬戶密碼
-s SHELL_PATH 指定shell(必須是/etc/shells的shell)
-m PATH 強制創建家目錄(一般和-k(複製環境變量文件)一起使用,/etc/skel/).
-M 不創建家目錄(/etc/login.defs)
-r 添加系統用戶
-Z SE-username 添加selinux系統賬戶
-h 顯示幫助信息
命令:userdel
功能:刪除系統賬戶
用法:userdel [options] USERNAME
-r 刪除家目錄
-Z SE-username 刪除selinux系統賬戶
-h 顯示幫助信息
命令:id
功能:查看賬戶信息
用法:id [options]USERNAME 查看帳戶屬性信息
-u 查看uid
-g 查看基本組
-G 查看附加組
-Z 查看屬於用戶的安全content
--help 查看幫助
命名:usermod
功能:修改賬戶信息
用法:usermod 和useradd幾乎一樣,特別說明如下。
-G NUMBER(GID) 會覆蓋原先的附加組,可以使用-a來追加附加組
-d PATH 修改家目錄,如需將原來的文件移動到新的家目錄中,附加使用-m
-s SHELL_PATH 修改SHELL
-ppassword 修改賬戶密碼
-l LOGIN_NAME 修改登錄名
-e YYYY-MM-DD 過期時間
-L USERNAME 鎖定賬號
-U USERNAME 解鎖賬號
命令:chsh
功能:修改用戶shell
用法:chsh [options] [USERNAME]
-sshell 給用戶指定shell
--list-shells 查看可用shell,內容與/etc/shells一致
--help 查看幫助
命令:chfn
功能:修改用戶finger信息(註釋信息)
用法:chfn [options] USERNAME
-f full-name 註釋全名
-o office 註釋辦公信息
-p office-phone 註釋辦公電話
-h home-phone 註釋家庭電話
--help 查看幫助
說明:查看註釋信息可以使用figner。
命令:passwd
功能:修改用戶密碼
用法:passwd [option] [USER_NAME]
--stdin 使用來自管道的字符串作爲密碼
-l 鎖定帳戶
-u 解鎖帳戶
-d 刪除密碼
命令:groupadd
功能:添加組
用法:groupadd [options] GROUP_NAME
-g GID 修改GID
-n GROUP_NAME 修改祖名
命令:groupdel
功能:刪除組
用法:groupdel GROUP_NAME
命令:chage
功能:指定密碼最後一次修改時間
用法:chage [option] USERNAME
-d 最後一次修改時間
-E 過期時間
-I 非活動時間
-m 最短使用期限
-M 最長使用期限
-w 警告時間
命令:chown
功能:修改屬主/屬組
用法:chown [option] file/path
-R 遞歸
--reference=/path//path/
命令:chmod
功能:修改文件權限
用法:
本地賬戶相關的文件
本地賬戶信息文件/etc/passwd
我們取出第一行,內容如下。
root:x:0:0:root:/root:/bin/bash |
定義如下
Username | Password | UID | GID | GECOS | Home | Shell |
用戶名 | 密碼,保存到/etc/shadow | 用戶ID | 主組ID | 用戶註釋 | 家目錄 | 登錄後使用的shell |
密碼存儲文件/etc/shadow,shadow是有pwconv命令根據/etc/passwd中的數據自動生成的。
我們取出第一行,內如如下:
root:$6$UGALgN1TOHqvfJkK$/nT7s1d1jOiZhWSciO1CMsqcrh0FruXKKD/jEpMi2ezkKq/JsYLyOvonguEv9yBwtSMhJfuJPRcWWSFo6C97k/:16643:0:99999:7::: |
定義如下
字段 | 定義 | 說明 |
1 | 用戶名 | |
2 | 加密的密碼 | 加密後的密碼 |
3 | 上次密碼更改日期 | 從1970年1月1日開始計算 |
4 | 最短密碼期限 | 按天計算,0表示無期限 |
5 | 最長密碼期限 | 按天計算,9999表示無期限 |
6 | 密碼警告期限 | 按天計算,0表示不警告 |
7 | 密碼非活動期限 | 按天計算 |
8 | 賬戶到期時間 | 從1970年1月1日開始計算 |
9 | 保留域 |
配置示例
創建賬戶
Shell># useraddd –m webadmin
添加密碼,成功後提示如下
Shell># passwd webadmin
Changing password for user webadmin. New password: Retype new password: passwd: all authentication tokens updated successfully. |
驗證
Shell>id webadmin
uid=502(webadmin) gid=502(webadmin) groups=502(webadmin) |