天天看點

aix 使用者、組、及安全管理

檔案位置

/etc/passwd  #存放使用者賬号

/etc/group #存放組賬号

useradd 用法

Syntax

       useradd [ -c comment ] [ -d dir ] [ -e expire ] [ -g group ] [ -G

       group1,group2 ... ] [ -m [ -k skel_dir ] ] [ -u uid ] [ -s shell ] [ -r

       role1,role2 ... ] login

1、建立使用者賬号

useradd testuser #新增testuser,預設不增加/home/testuser目錄

如新增加的使用者,但是沒有設定密碼,/etc/passwd的第二個字段會顯示*号, 設定密碼後會顯示!号

passwd testuser #設定testuser密碼

2、建立使用者賬号并建立home下的使用者目錄

useradd -m testuser

 3 建立使用者賬号并使用bash為登陸運作的shell(前提已安裝bash)

useradd -s /usr/bin/bash testuser

注: 也可以使用smit mkuser 新增使用者 smit mkuser

4更改賬号

usermod -l newuser username #更改使用者名

也可以 smit chuser 指令更改

5、删除使用者

userdel -r testuser # -r 指删除使用者home目錄的使用者檔案夾

userdel  -r

            Removes the user's home directory.

smit rmuser

6、顯示使用者賬号

smit lsuser

7、鎖定使用者賬号與解鎖

smit lockuser

選擇使用者後, true鎖定使用者。 登陸時會有以下提示。

AIX Version 6

Copyright IBM Corporation, 1982, 2009.

login: usert1

usert1's Password: 

3004-301 Your account has been locked; please see the system administrator.

組管理

建立新組

smit mkgroup

                                  Add a Group

Type or select values in entry fields.

Press Enter AFTER making all desired changes.

                                                        [Entry Fields]

* Group NAME                                         []

  ADMINISTRATIVE group?                               false                  +

  Group ID                                           []                       #

  USER list                                          []                      +

  ADMINISTRATOR list                                 []                      +

  Projects                                           []                      +

  Initial Keystore Mode                              []                      +

  Keystore Encryption Algorithm                      []                      +

  Keystore Access                                    []                      +

F1=Help             F2=Refresh          F3=Cancel           F4=List

F5=Reset            F6=Command          F7=Edit             F8=Image

F9=Shell            F10=Exit            Enter=Do                    

組的更改

smit chgroup

                            Change Group Attributes

Press Enter AFTER making all desired changes.                                 

                                                        [Entry Fields]        

  Group NAME                                         [groupt]                 

  Group ID                                           [201]                    #

  ADMINISTRATOR list                                 [root]                  +

F5=Reset            F6=Command          F7=Edit             F8=Image           

F9=Shell            F10=Exit            Enter=Do                               

組的删除

smit rmgroup

檢視使用者與組狀态

顯示目前登陸使用者狀态

-bash-3.2# id

uid=0(root) gid=0(system) groups=2(bin),3(sys),7(security),8(cron),10(audit),11(lp)

檢視指定使用者的狀态

-bash-3.2# id   usert

uid=209(usert) gid=1(staff)

檢視目前登陸使用者資訊 who指令

檢視系統最近的啟動時間

-bash-3.2$ who -b

   .        system boot Nov 06 14:53

檢視目前啟動級别

-bash-3.2$ who -r

   .        run-level 2 Nov 06 14:53       2    0    S

顯示标題

-bash-3.2$ who -H

Name        Line           Time              Hostname

kim         pts/0       Nov 06 20:12     (99.99.99.254) 

顯示終端号

-bash-3.2$ who -T

kim       + pts/0       Nov 06 20:12   

root      + pts/1       Nov 06 22:06   

kim       + pts/2       Nov 06 22:07

-bash-3.2$ w

  10:08PM   up   7:15,  3 users,  load average: 0.03, 0.10, 0.08

User     tty          login@       idle      JCPU      PCPU what

kim      pts/0       08:12PM          0         3         0 w

root     pts/1       10:06PM          2         0         0 -bash

kim      pts/2       10:07PM          1         0         0 -bash

檢視目前終端所登陸使用者的資訊(也就是可以确定目前的終端号)

-bash-3.2$ who -m  

kim         pts/0       Nov 06 20:12     (99.99.99.254)

等同 who am i

-bash-3.2$ who am i ;who -m

root        pts/1       Nov 06 22:06     (99.99.99.254)  

root        pts/1       Nov 06 22:06     (99.99.99.254)

whoami (如果使用者su後,是以顯示是目前使用者,并不是目前終端登陸的使用者。)

檢視目前使用者賬号資訊

看下面的操作與顯示就明白(telnet 時輸入的使用者名kim)。

-bash-3.2$ who -m ;echo "----";who am i 

kim         pts/0       Nov 06 22:32     (99.99.99.254)  

----

-bash-3.2$ whoami

kim

-bash-3.2$ su - root

root's Password: 

-bash-3.2# who -m ;echo "----";who am i

-bash-3.2# whoami

root

與其它終端的使用者對話

-bash-3.2$ talk kim@localhost pts/2

 使用者賬号切換su

su 的日志檔案

-bash-3.2# tail /var/adm/sulog

SU 11/06 19:14 + pts/0 kim-root

SU 11/06 19:16 + pts/0 kim-root

SU 11/06 19:18 + pts/0 kim-root

SU 11/06 20:12 + pts/0 kim-root

SU 11/06 20:18 + pts/0 root-usert5

SU 11/06 22:06 + pts/1 root-kim

SU 11/06 22:15 + pts/1 root-kim

SU 11/06 22:18 + pts/1 root-kim

SU 11/06 22:20 + pts/1 kim-root

SU 11/06 22:33 + pts/0 kim-root

必要時可能清空該檔案

>/var/adm/sulog

組,使用者安全管理

/etc/security/passwd 檔案存放使用者賬号的密碼。

-bash-3.2# head -n 10 /etc/security/passwd 

root:

        password = xdq5doH57hC6c

        lastupdate = 1352230576

daemon:

        password = *

passwd -s 更改使用者使用的shell

-bash-3.2$ passwd -s

 Current available shells:

                /usr/bin/bash

                /bin/sh

                /bin/bsh

                /bin/csh

                /bin/ksh

                /bin/tsh

                /bin/ksh93

                /usr/bin/sh

                /usr/bin/bsh

                /usr/bin/csh

                /usr/bin/ksh

                /usr/bin/tsh

                /usr/bin/ksh93

                /usr/bin/rksh

                /usr/bin/rksh93

                /usr/sbin/uucp/uucico

                /usr/sbin/sliplogin

                /usr/sbin/snappd

 kim's current login shell:

 Change (yes) or (no)? > yes

 To?>/usr/bin/bash

 pwdadm指令的使用

更改使用者密碼

-bash-3.2# pwdadm usert

Changing password for "usert"

usert's New password: 

Enter the new password again:

設定使用者自身不能更改密碼(屬性ADMIN)

 -bash-3.2# pwdadm -f ADMIN kim

-bash-3.2# pwdadm -q kim

kim: 

        lastupdate = 1352236213

        flags = ADMIN

-bash-3.2# passwd kim

Changing password for "kim"

kim's New password: 

-bash-3.2# su - kim

-bash-3.2$ passwd

3004-664 You are not authorized to change "kim's" password.

3004-709 Error changing password for "kim" : You do not have permission.

-bash-3.2# pwdadm -c kim

        lastupdate = 1352351804

pwdadm -c  user 清除使用者所有的密碼标志

pwdadm -q user 查詢使用者密碼的狀态

pwdadm -f ADMIN|ADMCHG|NOCHECK user  設定使用者的三個密碼屬性

ADMIN 表示使用者不能自己設定密碼

ADMCHG 強制使用者在下次登陸login|su時更改密碼

NOCHECK 表示新密碼不需要遵/etc/security/user的密碼組合規則

pwdck 指令檢查本地賬戶認證資訊的正确性

/etc/security/user 檔案主要控制使用者賬号的參數設定,如密碼的個數,密碼的使用周期,設定umask等 。

default:

        admin = false

        login = true

        su = true #是否可以使用su指令

        daemon = true

        rlogin = true #是否可以使用telnet 登陸

        sugroups = ALL

        admgroups =

        ttys = ALL

        auth1 = SYSTEM

        auth2 = NONE

        tpath = nosak

        umask = 022

        expires = 0

/etc/security/group 檔案對組進行安全性管理,設定組是否為管理者組。

-bash-3.2# head -n 10 /etc/security/group

system:

        admin = true

staff:

bin:

/etc/security/login.cfg 檔案控制使用者登陸與身份驗證的資訊,控制使用者登陸使用shell的方式,在多長時間輸入密碼等。

-bash-3.2# cat /etc/security/login.cfg|grep -v '*'

        sak_enabled = false

        logintimes = 

        logindisable = 0

        logininterval = 0

        loginreenable = 0

        logindelay = 0

usw:

        shells = /usr/bin/bash,/bin/sh,/bin/bsh,/bin/csh,/bin/ksh,/bin/tsh,/bin/ksh93,/usr/bin/sh,/usr/bin/bsh,/usr/bin/csh,/usr/bin/ksh,/usr/bin/tsh,/usr/bin/ksh93,/usr/bin/rksh,/usr/bin/rksh93,/usr/sbin/uucp/uucico,/usr/sbin/sliplogin,/usr/sbin/snappd

        maxlogins = 32767

        logintimeout = 60

        maxroles = 8

        auth_type = STD_AUTH

/etc/security/limits 為每個使用者指定程序資源,如記憶體,cpu的使用時間等。

-bash-3.2#  cat /etc/security/limits|grep -v '*'

        fsize = 2097151

        core = 2097151

        cpu = -1

        data = 262144

        rss = 65536

        stack = 65536

        nofiles = 2000

/etc/security/lastlog 主要記錄使用者賬号上次登陸系統的資訊。如上次成功登陸的時間,登陸的IP等。

-bash-3.2# cat /etc/security/lastlog |grep -v '*'

        time_last_login = 1352261160

        tty_last_login = /dev/pts/1

        host_last_login = 99.99.99.254

        unsuccessful_login_count = 0

        time_last_unsuccessful_login = 1352234585

        tty_last_unsuccessful_login = /dev/pts/0

        host_last_unsuccessful_login = 99.99.99.254

kim:

        time_last_login = 1352427960

        tty_last_login = /dev/pts/0

/etc/motd 顯示登陸後的提示資訊

本文轉自 pk2008 51CTO部落格,原文連結:http://blog.51cto.com/837244/1051354