Linux下的網絡訪問與權限

一.openssh-server

功能:讓遠程主機可以通過網絡訪問sshd服務,開始一個安全shell

二.客戶端連接方式

ssh 遠程主機用戶@遠程主機ip
[root@desktop0 ~]# ssh [email protected]
The authenticity of host '172.25.0.11 (172.25.0.11)' can't beestablished.
ECDSA key fingerprint is eb:24:0e:07:96:26:b1:04:c2:37:0c:78:2d:bc:b0:08.
Are you sure you want to continue connecting (yes/no)? yes  ##連接陌生主機時需要建立認證關係
Warning: Permanently added '172.25.0.11' (ECDSA) to the list of known hosts.
[email protected]'s password:                ##遠程用戶密碼
Last login: Mon Oct  3 03:13:472016
[root@server0 ~]#                   ##登陸成功
如下例,現有server與desktop兩臺主機,現想用desktop主機遠程登陸server主機;

首先,查看server主機ip地址:


再用desktop主機登陸:

ssh 遠程主機用戶@遠程主機ip -X              ##調用遠程主機圖形工具
ssh     遠程主機用戶@遠程主機ip     command     ##直接在遠程主機運行某條命令
(ctrl+d快速退出已登陸的主機)

三.sshkey加密

1.生成公鑰私鑰



2.添加key認證方式
[root@server0 ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub  [email protected]

ssh-copy-id     ##添加key認證方式的工具
-i          ##指定加密key文件
/root/.ssh/id_rsa.pub   ##加密key
root            ##加密用戶爲root
172.25.254.1     ##被加密主機ip

在密匙密鑰生成了之後,需要把鎖加入系統,讓系統知道


可以看到公鑰的內容:



與authorized_keys的最後一行內容一致,證明鎖添加成功!


3.分發鑰匙給client主機

4.測試

還有另一種簡單些的方法,將自己的公鑰發給要登陸的主機,則可直接實現上述功能:


四.提升openssh的安全級別

1.openssh-server配置文件
/etc/ssh/sshd_config
78 PasswordAuthentication yes|no        ##是否開啓用戶密碼認證,yes爲支持no爲關閉
48 PermitRootLogin yes|no           ##是否允許超級用戶登陸
49 AllowUsers student westos            ##用戶白名單,只有在名單中出現的用戶可以使用sshd建立shell
50 DenyUsers westos             ##用戶黑名單
(當一用戶同時在黑名單與白名單裏,則不可登陸)
2.控制ssh客戶端訪問
vim /etc/hosts.deny
sshd:ALL        ##拒絕所有人鏈接sshd服務

vim /etc/hosts.allow
sshd:172.25.254.250 ##允許250主機鏈接sshd

sshd:172.25.254.250, 172.25.254.180    ##允許250和180鏈接

sshd:ALL EXCEPT 172.25.254.200      ##只不允許200鏈接sshd

例如,編輯/etc/hosts.deny,拒絕ip爲172.25.254.1的主機登陸:


測試結果如下:


3.ssh登陸提示修改該
vim /etc/motd       ##顯示登陸後字符
例如,想在別的用戶每次登陸這臺主機時顯示welcome,編輯/etc/motd:



再用另一臺主機登陸,則會出現welcome:




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章