從 linux 登陸流程系統地排查不能登陸緣由

linux的登陸流程,linux

tcp請求 ->sshd ->passwd->pam->bashbash

 

    這中間的每一個環節出問題,都會使登陸出現問題:ssh

        1,首先,tcp請求,可能出現22端口被防火牆/iptables拒絕掉,因此,首先得看下防火牆規則;tcp

        2,sshd server接受請求後,有幾種狀況會使請求被拒絕,sshd自己的配置文件權限必須是:code

-rw-r--r-- 1 root root 300261 4月  28  2016 moduli
-rw-r--r-- 1 root root   1756 4月  28  2016 ssh_config
-rw-r--r-- 1 root root   2527 6月   7 18:42 sshd_config
-rw------- 1 root root    672 3月  14 16:18 ssh_host_dsa_key
-rw-r--r-- 1 root root    619 3月  14 16:18 ssh_host_dsa_key.pub
-rw------- 1 root root    227 3月  14 16:18 ssh_host_ecdsa_key
-rw-r--r-- 1 root root    191 3月  14 16:18 ssh_host_ecdsa_key.pub
-rw------- 1 root root    419 3月  14 16:18 ssh_host_ed25519_key
-rw-r--r-- 1 root root    111 3月  14 16:18 ssh_host_ed25519_key.pub
-rw------- 1 root root   1679 3月  14 16:18 ssh_host_rsa_key
-rw-r--r-- 1 root root    411 3月  14 16:18 ssh_host_rsa_key.pub
-rw-r--r-- 1 root root    338 3月  14 16:18 ssh_import_id

    注意其中的幾個文件很重要,特別是sshd_host的密鑰文件權限,必須是400!server

    還有的問題就是sshd的設置的規則了,好比默認root不容許遠程,設置訪問白名單或者黑名單之類的。ip

    3,登陸的下個流程就是去passwd文件驗證密碼,這裏首先,用戶不能被鎖,其次,能獲取到bash,不能是nologin,這個文件也以用來排除系統是否留有後門。table

root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync

    4,passwd接下來會去調用pam庫驗證登陸,login的驗證,會使用/etc/pam.d/login文件,要檢查這個文件設置的權限,看是否有人惡意修改。class

    5,最後看/bin/bash 文件是否存在並檢查是否有問題,系統中毒後,有人會惡意替換top,bash等重要文件!import

相關文章
相關標籤/搜索