引言:
簡單來說,SSH是一種網(wǎng)絡(luò)協(xié)議,主要用于客戶端和遠(yuǎn)程主機(jī)的安全連接和交互;在生產(chǎn)環(huán)境中尤為重要,為了遠(yuǎn)程操控的安全性,設(shè)置公鑰和私鑰,不僅防止某些暴力破解,也大大增強(qiáng)遠(yuǎn)程主機(jī)被操控的安全問題,防止不知名用戶登陸操作
一、SSH遠(yuǎn)程管理
1.SSH是什么:
SSH(Secure Shell)是一種安全通道協(xié)議,主要用來實現(xiàn)字符界面的遠(yuǎn)程登錄、遠(yuǎn)程、復(fù)制等功能,SSH協(xié)議對通信雙方的數(shù)據(jù)傳輸進(jìn)行了加密處理,其中包括用戶登錄時輸入的用戶口令,SSH為建立在應(yīng)用層和傳輸層基礎(chǔ)上的安全協(xié)議
2.SSH客戶端與OpenSSH服務(wù)端
SSH客戶端:Putty、Xshell、CRT、MobaXterm、FinaShell
SSH服務(wù)端:OpenSSH
OpenSSH是實現(xiàn)SSH協(xié)議的開源軟件項目,適用于各種UNIX、Linux操作系統(tǒng)
CentOS7 系統(tǒng)默認(rèn)已安裝openssh相關(guān)軟件包,并將sshd服務(wù)添加為開機(jī)自啟動
執(zhí)行“systemctl start sshd”的命令即可啟動sshd服務(wù)。sshd服務(wù)的默認(rèn)使用的是TCP的22端口
3.SSH服務(wù)配置文件
sshd服務(wù)的默認(rèn)配置文件是/etc/ssh/sshd_config
ssh_config和sshd_config都是ssh服務(wù)器的配置文件
二者區(qū)別在于前者是針對客戶端的配置文件
后者則是針對服務(wù)器的配置文件
4.SSHD服務(wù)端的功能
SSHD服務(wù)使用SSH協(xié)議可以用來進(jìn)行遠(yuǎn)程控制,或在計算機(jī)之間傳送文件,相比較之前用Telent方式來傳輸文件要安全很多,因為Telent使用明文傳輸。SSH是加密傳輸
服務(wù)名稱:sshd;
服務(wù)端主程序:/usr/sbin/sshd
服務(wù)端配置文件:/etc/ssh/sshd_config
二、SSH服務(wù)
1、ssh遠(yuǎn)程登錄方式
ssh [目標(biāo)服務(wù)器用戶名] @ [目標(biāo)服務(wù)器IP地址] -p port(-p可以指定端口號)
要使用當(dāng)前用戶登錄目標(biāo)服務(wù)器時 可以直接使用 ssh 目標(biāo)IP地址
2、scp遠(yuǎn)程復(fù)制
下行復(fù)制,將遠(yuǎn)程主機(jī)中的文件復(fù)制到本機(jī)
上行復(fù)制,將本機(jī)的文件復(fù)制到遠(yuǎn)程主機(jī)中
在上行復(fù)制時遠(yuǎn)程主機(jī)中有同名文件時會直接強(qiáng)制覆蓋源文件
切換到目標(biāo)主機(jī)看一下opt目錄
3、sftp安全FTP
由于使用了加密/解密技術(shù),所以傳輸效率比普通的FTP要低,但安全性更高。操作語法sftp與ftp幾乎一樣。
sftp zhangsan@192.168.60.12
使用zhangsan用戶連接192,168.60.12主機(jī)
可以sftp -P 來指定端口號
4、sshd配置文件
vim /etc/ssh/sshd_config
##服務(wù)器配置文件的常用選項設(shè)置
sshd服務(wù)支持兩種驗證方式
1、密碼驗證
對服務(wù)器中本地系統(tǒng)用戶的登錄名稱、密碼進(jìn)行驗證。簡便,但可能會被暴力破解
2、密鑰對驗證
要求提供相匹配的密鑰信息才能通過驗證,通?,F(xiàn)在客戶端中創(chuàng)建一對密鑰文件(公鑰,私鑰),然后將公鑰文件放到服務(wù)器中的指定位置。遠(yuǎn)程登錄時,系統(tǒng)將使用公鑰,私鑰進(jìn)行加密/解密關(guān)聯(lián)驗證。能增強(qiáng)安全性,且可以免交互登錄。
公鑰和私鑰的關(guān)系:
公鑰和私鑰是成對生成的,這兩個密鑰互不相同,可以互相加密和解密。
不能根據(jù)一個密鑰來推算出另一個密鑰。
公鑰對外公開,私鑰只有私鑰的持有人才知道。
當(dāng)密碼驗證、密鑰對驗證都啟用時、服務(wù)器將優(yōu)先使用密鑰對驗證??筛鶕?jù)實際情況設(shè)置驗證方式。
vim /etc/ssh/sshd_config
PubkeyAuthentication yes #啟用密鑰對驗證
PasswordAuthentication yes #啟用密碼驗證
AuthorizedKeysFile .ssh/authorized_keys #指定公鑰庫文件
5、ssh密鑰對配置
客戶端 ssh的發(fā)起端 :
ssh-keygen -t rsa 或 ecdsa
##輸入密碼。創(chuàng)建密鑰對,生成在自己的家目錄中的 .ssh 目錄中生成公鑰(.pub結(jié)尾)和私鑰
ssh-copy-id -i 公鑰文件 目標(biāo)主機(jī)用戶@目標(biāo)主機(jī)IP/主機(jī)名
##將公鑰文件直接復(fù)制到目標(biāo)主機(jī)對應(yīng)的用戶家目錄的 .ssh 中
5.1 ssh密鑰對免交互登錄
1)使用沒有密碼的密鑰對
ssh-keygen -t rsa 或 ecdsa 一路回車,不設(shè)置密碼
ssh-copy-id -i 公鑰文件 目標(biāo)主機(jī)用戶@目標(biāo)主機(jī)IP或主機(jī)名
2)創(chuàng)建ssh會話代理(只能在當(dāng)前會話有效重啟失效)
ssh-agent bash
ssh-add
三、TCP wrappers 訪問控制
1、TCP wrappers (TCP封套)
將TCP服務(wù)程序“包裹”起來,代為監(jiān)聽TCP服務(wù)程序的端口,增加了一個安全檢測過程,外來的連接請求必須先通過這層安全監(jiān)測,獲得許可后才能訪問真正的服務(wù)程序。
大多數(shù)Linux發(fā)行版,TCP wrappers 是默認(rèn)提供的功能。
rpm -q tcp_wrappers 可以查看到已經(jīng)安裝的軟件包
2、TCP wrappers 保護(hù)機(jī)制的兩種實現(xiàn)方式
1.直接使用tcpd程序?qū)ζ渌?wù)程序進(jìn)行保護(hù),需要運行tcpd程序。
2.由其他網(wǎng)絡(luò)服務(wù)程序調(diào)用libwrap.so.*鏈接庫,不需要進(jìn)行tcpd程序,此方式的應(yīng)用更加廣泛,也更有效率。
可以使用 ldd 命令來查看程序的libwrap.so.*鏈接庫
找到了這個鏈接庫就說明sshd服務(wù)是支持 TCP wrappers 服務(wù)的
這里順便說一下,下面兩種符號的用法
雙 ` 的效果
$( )的效果
3、TCP wrappers 的訪問策略
TCP wrappers 機(jī)制的保護(hù)對象為各種網(wǎng)絡(luò)服務(wù)程序,針對訪問服務(wù)的客戶端地址進(jìn)行訪問控制。
對應(yīng)的兩個策略文件為 /etc/hosts.allow 和 /etc/hosts.deny , 分別用來設(shè)置允許和拒絕的策略。
4、TCP wrappers 的配置格式
在配置文件中輸入
<服務(wù)程序列表>:<客戶端地址列表>
##兩個配置文件格式一樣
1)服務(wù)程序列表
ALL :表示所有的服務(wù)
單個服務(wù)程序:如“vsftpd”
多個程序組成的列表:如“vsftpd,sshd,dhcp”(多個程序中間用逗號分隔)
2)客戶端地址列表
ALL :表示任何客戶端地址
LOCAL:表示本機(jī)地址
多個地址以逗號分隔
允許使用通配符“ * ” 和 “ ? ” ,前者代表任意長度字符,后者僅代表一個字符
網(wǎng)段地址,如“192.168.60.” 或 192.168.60.0/255.255.255.0
區(qū)域地址,如“.benet.com”匹配 benet.com 域中的所有主機(jī)
5、TCP wrappers 機(jī)制的基本原則
首先檢查 /etc/hosts.allow 文件,如果找到相匹配的策略,則運行訪問;
否則繼續(xù)檢查 /etc/hosts.deny 文件,如果找到相匹配的策略,則拒絕訪問;
如果檢查上述兩個文件都找不到相匹配的策略,則允許訪問。
允許所有,拒絕個別。
只需在 /etc/hosts.deny 文件中添加相應(yīng)的拒絕策略。
允許個別,拒絕所有。
除了在 /etc/hosts.allow 文件中添加允許策略之外,還需要在 /etc/hosts.deny 文件中設(shè)置 “ALL:ALL”,拒絕所有的策略。
6、應(yīng)用實例+測試
例:只希望從IP地址為192.168.60.12 的主機(jī)訪問sshd服務(wù),其他地址被拒絕
根據(jù)TCP wrappers 機(jī)制的基本原則先設(shè)置白名單
vim /etc/hosts.allwo
sshd:192.168.60.12
在配置黑名單
vim /etc/hosts.deny
驗證一下
關(guān)閉服務(wù)器的防火墻和核心防護(hù)文章來源:http://www.zghlxwxcb.cn/news/detail-424866.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-424866.html
到了這里,關(guān)于遠(yuǎn)程訪問及控制(SSH)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!