Life would be so much simple if we don't care so much


List user và file /etc/passwd trên Linux

Trên linux OS có những user nào? Trường hợp muốn xem danh sách user thì có thể confirm qua file /etc/passwd

1. Cách xem file /etc/passwd

Thông tin của user có thể confirm dựa trên file /etc/passwd. User name, password, user ID, group ID, comment (Tên thật hoặc số đt…) Home directory, Login shell sẽ được ghi lại.
Nội dung file /etc/passwd hình dung như sau:

[hogehoge@localhost ~]$ cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
・・・
hogehoge:x:500:501:KAZMAX_ADMIN:/home/hogehoge:/bin/bash

hogehoge: là User name
x : 「 x 」tức là encrypted password. 「 x 」mang ý nghĩa là 1 shadow password
500: User ID
501: Group ID
KAZMAX_ADMIN: Comment (Tên thật, số đt), trường hợp không có comment thì sẽ không có gì
/home/hogehoge: Home directory (Folder home) của user
/bin/bash: login shell của user

** Note:
Nếu password được để trống thì có thể login vào không cần password. Hãy set password cho user. Ngược lại, từ file /etc/passwd nếu xoá đi phần 「 x 」của thông tin user thì sẽ trở thành trạng thái chưa thiết lập password, khi đó thì có thể login mà không cần password. (Nếu môi trường cho phép login mà không cần password)

 

2. /etc/passwd và /etc/shadow

Trong bản cập nhật mới nhất thì hầu hết「 x 」được ghi lại ở vị trí password
Trước đó, password sẽ được mã hoá và ghi lại ở file /etc/passwd
General user có thể tham khảo File /etc/paswd và cũng có thể có khả năng phân tích được password đã bị mã hoá. Vì thế, nếu thiết lập sao cho general user không thể read được file /etc/passwd thì user sẽ không thể login được nữa.
Do đó, có thể sử dụng shadow password, trong file /etc/passwd chỉ lưu password dạng 「 x 」. Thay vào đó, trong file /etc/shadow sẽ chứa password đã được encrypted.
Ngoài ra, setting file /etc/shadow là root readonly.

[root@localhost ~]# ls -l /etc/shadow
-r——– 1 root root 1559 4月 14 00:25 /etc/shadow

3. Output list user từ file /etc/passwd

Có thể output list user từ file /etc/passwd như sau:

[hogehoge@localhost ~]$ cut -d: -f1 /etc/passwd
root
bin
daemon
adm
lp
・・・
** Note:

Có thể dùng command “alias” để đăng ký trước 1 số thực thi thì khá là tiện. Do ở UNIX cũng có 1 command tương tự đó là “listusers” nên để command execute ngay sau khi login vào OS thì, ở thư mục home directory có thể ghi thêm vào「.bashrc」như sau:

[hogehoge@localhost ~]$ cd
[hogehoge@localhost ~]$ vi .bashrc
alias listusers=”cut -d: -f1 /etc/passwd”  ← thêm vào
・・・

[hogehoge@localhost ~]$ source .bashrc
[hogehoge@localhost ~]$ listusers
root
bin
daemon
adm
lp
・・・

** Note

Trong package glibc-common, có 1 lệnh được gọi là getent. Nếu run command đó với option「passwd」thì có thể output được danh sách user bao gồm account ldap

[hogehoge@localhost ~]$ getent passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

 

Tham khảo

http://kazmax.zpp.jp/linux_beginner/etc_passwd.html

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: