Linux 用戶ssh登陸權限檢查

第一步,查看能夠登陸的用戶名:即排除不含 'nologin'的.mysql

-v, --invert-match        select non-matching lines
-v 或者 --invert-match 反向匹配,實際就是取匹配行的補集,也就是不符合條件的那些行linux

[root@test ~]# cat /etc/passwd | grep -v 'nologin'sql

root:x:0:0:root:/root:/bin/bash
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
news:x:9:13:news:/etc/news:
gm001:x:500:500::/home/gm001:/bin/bash
mysql:x:100:104:MySQL server:/var/lib/mysql:/bin/bash
virtual:x:503:503::/home/vir:/bin/bash
[root@test ~]# shell


第二步,進一步分析上面的帳號.
 #查看全部登陸的用戶,日期
#last 安全


(1)使用以下命令關閉用戶帳號:bash

virtual:x:503:503::/home/ftp:/bin/bash
[root@test ~]# passwd virtual -l
Locking password for user virtual.
passwd: Success
從新釋放: passwd virtual -u
Unlocking password for user virtual.
passwd: Unsafe operation (use -f to force).網絡

(2)永久性刪除用戶帳號
userdel virtual
groupdel virtual
usermod –G virtual virtual   (強制刪除該用戶的主目錄和主目錄下的全部文件和子目錄)ui

(3)顯示用戶信息
[root@test ~]# id virtual
uid=503(virtual) gid=503(virtual) groups=503(virtual)this

第三步 用finger命令 對可疑帳號分析.
yum install finger
Total download size: 21 k
Is this ok [y/N]: y
Downloading Packages:
finger-0.17-32.2.1.1.i386.rpm  
finger命令的功能是查詢用戶的信息,一般會顯示系統中某個用戶用戶名、主目錄、停滯時間、登陸時間、登陸shell等信息。若是要查詢遠程機上的 用戶信息,須要在用戶名後面接「@主機名」,採用[用戶名@主機名]的格式,不過要查詢的網絡主機須要運行finger守護進程。 加密

[root@test ~]# finger gm001     
Login: gm001                               Name: (null)
Directory: /home/gm001                      Shell: /bin/bash
On since Sat Aug 28 14:10 (CST) on pts/0 from 111.*.14.222
On since Sat Aug 28 14:10 (CST) on pts/1 from 111.*.14.222
1 hour 25 minutes idle
No mail.
No Plan.
[root@test ~]# finger root
Login: root                             Name: root
Directory: /root                        Shell: /bin/bash
Last login Wed Jul 21 05:02 (CST) on pts/2 from from 111.*.14.222
No mail.
No Plan.
-------------------  baidu-------------------

警告: usermod 最好不要用它來改用戶的密碼,由於他在/etc/shadow中顯示的是明口令;修改用戶的口令最好用passwd ;

[root@localhost ~]# usermod -p 123456 fishlinux  注:修改fishlinux的口令是123456 ;
[root@localhost ~]# more /etc/shadow |grep fishlinux  注:查詢/etc/shadow文件中fishlinux的口令;咱們看到明顯是沒有加密;
fishlinux:123456:13092:0:99999:7:::

-----------------

關於linux下口令相關的文件存放位置說明
/usr/bin/passwd 包含 passwd 命令。
/etc/passwd 包含用戶 ID、用戶名、主目錄、登陸 shell 和 finger 的信息
/etc/security/passwd 包含加密的密碼和安全性信息。
/etc/shdow 用戶加密後的口令存放位置

一般用戶標識號的取值範圍是0~65 535。0是超級用戶root的標識號,1~99由系統保留,做爲管理帳號,普通用戶的標識號從100開始。在Linux系統中,這個界限是500。

獲得用戶名簡單: 
awk -F':' '{print $1}' /etc/passwd

把/etc/passwd裏列出的用戶密碼所有修改爲112233 不過把系統的祕密全改爲同樣 很是不推薦 下降系統安全 #!/bin/bash for name in `cat /etc/passwd | cut -d":" -f1` do passwd $name <112233 112233 EOF done

相關文章
相關標籤/搜索