CentOS 7 使用者賬戶配置

來源:互聯網
上載者:User

標籤:

說明:

1、這篇博文記錄的是CentOS 7 使用者賬戶的配置,包括添加使用者、添加使用者組、刪除使用者、刪除使用者組等。其中包括分析使用者的設定檔、目錄以及對安全的思考。

2、使用者配置方面CentOS 7與以往版本感覺沒有差別。

第一部分 認識使用者

Centos 7 系統迷你安裝,預設配置,是沒有建立其他使用者的。作為伺服器作業系統,為了安全起見,一般是使用一般使用者的。這就牽涉到使用者的建立、使用者組的建立以及刪除。

此外,CentOS 7 和其他版本的Linux一樣,都具有相應使用者的設定檔及目錄,如下:


/etc/passwd    //使用者賬戶資訊,可以看出使用者名稱稱
/etc/shadow //使用者賬戶加密後資訊,包括但不限於/etc/passwd中的資訊
/etc/group //組賬戶資訊,可以看出組名稱
/etc/gshadow     //組賬戶安全資訊,包括但不限於/etc/group中的資訊
/etc/default/useradd //賬戶建立時預設值
/etc/skel/ //包含預設檔案的目錄,具體作用尚不清楚
/etc/login.defs //安全性的預設配置,與上面/etc/default/useradd有區別

 

我們看一下比較重要的設定檔/etc/default/useradd,內容如下:

# useradd defaults fileGROUP=100                        //起始GID值HOME=/home                       //家目錄位置INACTIVE=-1             //有效時間,負值為永久,正數代表天數EXPIRE=SHELL=/bin/bash                   //shell路徑SKEL=/etc/skel                    //預設設定檔路徑CREATE_MAIL_SPOOL=yes             //是否建立郵件池,具體作用待以後學習

我們再來看一下/etc/login.defs檔案,重點內容如下:

MAIL_DIR        /var/spool/mail
...

# Password aging controls: 密碼期限配置
#
#       PASS_MAX_DAYS   Maximum number of days a password may be used.
#       PASS_MIN_DAYS   Minimum number of days allowed between password changes.
#       PASS_MIN_LEN    Minimum acceptable password length.
#       PASS_WARN_AGE   Number of days warning given before a password expires.
#
PASS_MAX_DAYS   99999
PASS_MIN_DAYS   0
PASS_MIN_LEN    8
PASS_WARN_AGE   7
...

# Min/max values for automatic uid selection in useradd 最小/最大UID設定
#
UID_MIN                  1000 //我們建立的使用者的UID從1000開始
UID_MAX                 60000
....

# Min/max values for automatic gid selection in groupadd
#
GID_MIN                  1000
GID_MAX                 60000
....
CREATE_HOME     yes //是否建立家目錄
...

# Use SHA512 to encrypt password. //採用SHA512加密
ENCRYPT_METHOD SHA512

從檔案內容可見,/etc/login.defs 是比較宏觀的進行偏重安全方面的配置。

下面是一些實際過程中常用的命令:

useradd         //添加使用者passwd          //為使用者佈建密碼   userdel         //刪除使用者usermod         //修改使用者資訊groupadd       //添加使用者組groupdel        //刪除使用者組groupmod        //修改使用者組資訊groups          //顯示當前進程使用者所屬的使用者組    

 

第二部分  添加使用者

例子一: 最簡單的添加使用者

執行如下命令:

useradd test

passwd test

執行個體,並且系統會對密碼做限制,比如長度、複雜度,但是不影響建立。可以理解為“溫馨提示”。

這樣一個使用者名稱為test的使用者已經建立好了。我們看一下屬性。

執行命令:id test   //查看使用者資訊

我們發現test的uid=1000,gid=1000,位於test使用者組,說明缺參數的建立使用者,會預設建立一個與使用者名稱同名的使用者組並加入其中,我們也注意到UID、GID的值與預設的設定檔中保持一致,可見設定檔是生效的,同樣也可以再建立一個使用者,看一下UID、GID的值,會看到是1001.可以嘗試一下。我們可以切到/home目錄下,會看到使用者目錄,與設定檔設定一致。

例子二:帶參數的建立賬戶

上個例子我們採用預設配置,只是設定了使用者名稱和密碼。這次我們手動設定UID、GID等。首先我們看一下,useradd的參數,如下:

 -b, --base-dir BASE_DIR       新賬戶的主目錄的基目錄  -c, --comment COMMENT         新賬戶的 GECOS 欄位  -d, --home-dir HOME_DIR       新賬戶的主目錄  -D, --defaults                顯示或更改預設的 useradd 配置 -e, --expiredate EXPIRE_DATE  新賬戶的到期日期  -f, --inactive INACTIVE       新賬戶的密碼不活動期  -g, --gid GROUP               新賬戶主組的名稱或 ID  -G, --groups GROUPS   新賬戶的附加組列表  -h, --help                    顯示此協助資訊並推出  -k, --skel SKEL_DIR   使用此目錄作為骨架目錄  -K, --key KEY=VALUE           不使用 /etc/login.defs 中的預設值  -l, --no-log-init     不要將此使用者添加到最近登入和登入失敗資料庫  -m, --create-home     建立使用者的主目錄  -M, --no-create-home          不建立使用者的主目錄  -N, --no-user-group   不建立同名的組  -o, --non-unique              允許使用重複的 UID 建立使用者  -p, --password PASSWORD               加密後的新賬戶密碼  -r, --system                  建立一個系統賬戶  -R, --root CHROOT_DIR         chroot 到的目錄  -s, --shell SHELL             新賬戶的登入 shell  -u, --uid UID                 新賬戶的使用者識別碼  -U, --user-group              建立與使用者同名的組  -Z, --selinux-user SEUSER             為 SELinux 使用者映射使用指定 SEUSER

建立一個UID=501,GID=600,30天有效期間,家目錄為/home/test5的使用者test4.

命令 :

groupadd -g 600  test3                //建立GID=600的使用者組test3            useradd -u 501 -g 600 -f 30 -m   -d /home/test5 test4                 

當我們再次開啟使用者檔案/etc/passwd或者id test4會看到我們自己的配置。

uid=501(test4) gid=600(test3) 組=600(test3)

 第三部分 刪除使用者/組

 當我們建立使用者/組有錯誤時,可能會刪除使用者/組,然後再重新建立。我們使用userdel命令來刪除使用者。

執行命令:

[[email protected] home]# userdel test[[email protected] home]# useradd testuseradd:警告:此主目錄已經存在。不從 skel 目錄裡向其中複製任何檔案。正在建立信箱檔案: 檔案已存在

出現這個問題是因為我們刪除使用者時,系統為了安全起見並沒有刪除相關的檔案以及目錄。我們查看一下userdel參數:

用法:userdel [選項] 登入選項:  -f, --force                   force some actions that would fail otherwise                                e.g. removal of user still logged in                                or files, even if not owned by the user  -h, --help                    顯示此協助資訊並推出  -r, --remove                  刪除主目錄和郵件池  -R, --root CHROOT_DIR         chroot 到的目錄  -Z, --selinux-user            為使用者刪除所有的 SELinux 使用者映射

我們可以使用參數-rf 來刪除相關檔案目錄,這一步具有危險性,是否有復原操作,不是特別清楚。

執行命令:

[[email protected] home]# userdel -rf test[[email protected] home]# useradd test

這樣,就不會出現提示了。

除此之外,我覺得最重要的還是不同使用者間的許可權分配問題。先暫時留下來,根據實際情況分配。大家,還可以根據參數,依據實際情況配置。大家可以相互交流。

 

CentOS 7 使用者賬戶配置

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.