一、SSH
1.SSH(Secure Shell),安全通道協議,主要實現字符界面的遠程連接、遠程復制等;加密數據傳輸、用戶密碼、指令等
2.Telnet(遠程登錄):一般用戶遠程連接網絡設備,如交換機等;還可用於端口測試;不加密數據
3.C(Client)/S(Server)
4.openssh軟件包提供SSH協議
5.登錄驗證方式
1)密碼驗證:遠程連接時與服務器中用戶名密碼匹配,允許登錄
2)密碼對驗證:客戶端創建密鑰(私鑰、公鑰),將公鑰放到服務器指定位置(/root/.ssh/),服務器能解析客戶端的發送數據,即允許登錄
6.SSH客戶端
1)Windows連接Linux:Xshell、CRT
2)Linux連接Linux:ssh命令、scp(拷貝)
二、密碼驗證方式(以下編輯應先去掉或添加前邊注釋#號后更改)
1)編輯密鑰驗證方式 vim /etc/ssh/sshd_config
//ssh協議監聽端口,默認22
//監聽的IPV4地址;0.0.0.0監聽所有IP地址
//刪除此行,次行為設置監聽IPV6地址
//設置連接的無操作時間,到達時間后斷開連接
//允許root用戶使用ssh
//密碼錯誤次數
//最大連接數量
//不允許密碼為空的用戶使用ssh
/啟用密碼驗證方式
//禁用GSSAPI驗證方式
//禁用GSSAPI
//禁用DNS解析
//登錄ssh時提示文件
//只允許hehe用戶登錄;DenyUsers hehe拒絕hehe用戶登錄;不要同時啟用(自己根據情況是否添加)
2)重啟sshd服務 /etc/init.d/sshd restart
4.chkconfig --level 35 sshd on //啟動3、5運行級別sshd開啟自啟
5.Linux驗證:ssh 用戶名@IP //Linux遠程連接Linux服務器
6.Linux拷貝文件:scp 本地文件 用戶名@IP:路徑 //將Linux本地文件上傳到遠程Linux服務器指定位置
7.Linux下載文件:scp 用戶名@IP:路徑 本地路徑 //將遠程Linux服務的文件拷貝到本地Linux系統中
三、密鑰對驗證方式
1. linux客戶端生成密鑰對;-t指定密鑰類型、-b指定加密位數 ssh-keygen -t rsa -b 1024
2.客戶端上傳Linux本地公鑰到遠程Linux服務端系統root用戶家目錄下 scp ~/.ssh/id_rsa.pub root@IP:/root/
3. 在Linux服務器上創建.ssh目錄 mkdir .ssh
4.在Linux服務器上將/root/id_rsa.pub移動到~/.ssh/authorized_keys
5.編輯linux服務器上密鑰驗證方式 vim /etc/ssh/sshd_config
PubkeyAuthentication yes //啟用密鑰對認證 AuthorizedKeysFile .ssh/authorized_keys //指定公鑰文件位置
PasswordAuthentication no //禁用密碼驗證方式
6. 重啟sshd服務 /etc/init.d/sshd restart
7. 驗證無密碼登錄
注:如果想多用戶密鑰對登錄,將公鑰文件拷貝到多個用戶.ssh/authorized_keys;建議一個密鑰對實現一個用戶登錄,也可用於使用同一公鑰文件
四、TCP Wapper
1.實現控制服務的訪問
2.TCP Wapper
1) 允許訪問的文件列表/etc/hosts.allow 中添加允許訪問的服務+(IP或者網段)
2)拒絕訪問的文件列表/etc/hosts.deny
3.訪問優先級
1)先檢查/etc/hosts.allow是否有對應條目,如有則允許訪問
2)再檢查/etc/hosts.deny是否有對否條目,如有則拒絕訪問
3)如兩個文件都未有客戶端對應條目,則允許訪問
案例:
vim /etc/hosts.deny
服務名:IP
sshd:192.168.1. //拒絕192.168.1.0網段訪問sshd服務,其余全部允許
sshd:ALL //拒絕所有網段訪問sshd服務
sshd:192.168.1.10 //拒絕192.168.1.10訪問sshd服務,其余全部允許