CentOS SSH 允許特定使用者登入
Secure Shell(縮寫為SSH),由IETF的網路工作小組(Network Working Group)所制定;SSH為一項建立在應用層和傳輸層基礎上的安全協定,為電腦上的Shell(殼層)提供安全的傳輸和使用環境。
傳統的網路服務程式,如rsh、FTP、POP和Telnet其本質上都是不安全的;因為它們在網路上用明文傳送資料、用戶帳號和用戶口令,很容易受到中間人(man-in-the-middle)攻擊方式的攻擊。就是存在另一個人或者一台機器冒充真正的伺服器接收用戶傳給伺服器的資料,然後再冒充用戶把資料傳給真正的伺服器。
而SSH是目前較可靠,專為遠端登入會話和其他網路服務提供安全性的協定。利用SSH協定可以有效防止遠端管理過程中的資訊泄露問題。透過SSH可以對所有傳輸的資料進行加密,也能夠防止DNS欺騙和IP欺騙。
SSH之另一項優點為其傳輸的資料可以是經過壓縮的,所以可以加快傳輸的速度。SSH有很多功能,它既可以代替Telnet,又可以為FTP、POP、甚至為PPP提供一個安全的「通道」。
由於SSH是預設開啟的服務,假設root密碼被猜到,那主機就完全被對方掌握了,所以在SSH服務上最好禁止root登入,對於主機上的安全多一份保障。
如何加入特定帳戶使用ssh服務
指令:
[root@localhost ~]# adduser itmaster // 新增用戶指令 [root@localhost ~]# passwd itmaster // 用戶密碼設定 Changing password for user itmaster. New password: // 輸入密碼 Retype new password: // 重複一次輸入密碼 passwd: all authentication tokens updated successfully. [root@localhost ~]#
編輯ssh設定檔,以設定限制特定使用者登入,ssh設定檔在最後一行加上一筆允許使用者登入帳戶,以下範例限制不可使用root 登入ssh 服務只有帳號itmaster可以登入,設定後存檔,若有多個使用者帳號,則在itmaster 後面加入(帳號間需留空白)。
編輯ssh 設定檔:
[root@localhost ~]# vi /etc/ssh/sshd_config PermitRootLogin no //不允許 root 登入 AllowUsers itmaster //允許帳號itmaster可以登入
設定完畢必需重新啟動ssh服務,設定才會生效。
[root@localhost ~]# service sshd restart Stopping sshd: [ OK ] Starting sshd: [ OK ]
特定使用者登入測試
使用者帳號itmaster登入測試,即可以正常登入,其他使用者就無法登入,特定使用者登入後,再用su指令切換到root帳號操作,以增加主機安全性。
login as: itmaster [itmaster@192.168.1.10]'s password: ***** [itmaster@localhost ~]$ su root //切換成root 權限登入 Password: [root@localhost itmaster]#
使用test帳號登入,輸入密碼後,訊息出現access denied無法登入,連續輸入5次後就會關閉服務連線。
login as: test test@192.168.1.10's password: ***** Access denied test@192.168.1.10's password: