Linux 遠(yuǎn)程管理及sshd服務(wù)驗(yàn)證知識(shí)點(diǎn)詳解
一、SSH遠(yuǎn)程管理
SSH定義
- SSH(Secure Shell)是一種安全通道協(xié)議,主要用來(lái)實(shí)現(xiàn)字符界面的遠(yuǎn)程登錄、遠(yuǎn)程復(fù)制等功能。
- SSH協(xié)議對(duì)通信雙方的數(shù)據(jù)傳輸進(jìn)行了加密處理,其中包括用戶登錄時(shí)輸入的用戶口令。因此SSH協(xié)議具有很好的安全性。
SSH優(yōu)點(diǎn)
- 數(shù)據(jù)傳輸是加密的,可以防止信息泄漏
- 數(shù)據(jù)傳輸是壓縮的,可以提高傳輸速度
SSH配置文件
- sshd 服務(wù)的默認(rèn)配置文件是/etc/ssh/sshd_config
- ssh_config和sshd_config都是ssh服務(wù)器的配置文件
二者區(qū)別在于ssh_config是針對(duì)客戶端的配置文件,sshd_config則是針對(duì)服務(wù)端的配置文件。
SSH客戶端與與服務(wù)端
- SSH客戶端:Putty、Xshell、CRT
- SSH服務(wù)端:OpenSSH
- OpenSSH 是實(shí)現(xiàn) SSH 協(xié)議的開(kāi)源軟件項(xiàng)目,適用于各種 UNIX、Linux 操作系統(tǒng)。
CentOS 7系統(tǒng)默認(rèn)已安裝openssh相關(guān)軟件包,并已將 sshd 服務(wù)添加為開(kāi)機(jī)自啟動(dòng)。
二、配置OpenSSH服務(wù)端
1、shd_config配置文件的常用選項(xiàng)設(shè)置
vim /etc/ssh/sshd_config Port 22 #監(jiān)聽(tīng)端口為22 ListenAddress 0.0.0.0 #監(jiān)聽(tīng)地址為任意網(wǎng)段,也可以指定OpenSSH服務(wù)器的具體IP LoginGraceTime 2m #登錄驗(yàn)證時(shí)間為2分鐘 PermitRootLogin no #禁止root用戶登錄 MaxAuthTries 6 #最大重試次數(shù)為 6 PermitEmptyPasswords no #禁止空密碼用戶登錄 UseDNS no #禁用 DNS 反向解析,以提高服務(wù)器的響應(yīng)速度 #只允許zhangsan、lisi、wangwu用戶登錄,且其中wangwu用戶僅能夠從IP地址為61.23.24.25 的主機(jī)遠(yuǎn)程登錄 AllowUsers zhangsan lisi wangwu@61.23.24.25 #多個(gè)用戶以空格分隔 #禁止某些用戶登錄,用法于AllowUsers 類似(注意不要同時(shí)使用) DenyUsers zhangsan
2、Allowusers與Denyusers
Allowusers…… #僅允許某某用戶登陸 Denyusers …… #禁止某些用戶登錄,用法于AllowUsers 類似(注意不要同時(shí)使用)
3、遠(yuǎn)程復(fù)制
scp root@192.168.86.10:/etc/passwd /root/passwd10.txt
4、sftp安全FTP
由于使用了加密/解密技術(shù),所以傳輸效率比普通的FTP要低,但安全性更高。操作語(yǔ)法sftp與ftp幾乎一樣。
sftp root@192.168.184.20 sftp> ls sftp> get 文件名 #下載文件到ftp目錄 sftp> put 文件名 #上傳文件到ftp目錄 sftp> quit #退出
三、sshd服務(wù)支持驗(yàn)證的方式
密碼驗(yàn)證
對(duì)服務(wù)器中本地系統(tǒng)用戶的登錄名稱、密碼進(jìn)行驗(yàn)證。簡(jiǎn)便,但可能會(huì)被暴力破解,暴力破解可看之前博客有詳細(xì)描述系統(tǒng)弱口令檢測(cè)
密鑰對(duì)驗(yàn)證
要求提供相匹配的密鑰信息才能通過(guò)驗(yàn)證。通常先在客戶端中創(chuàng)建一對(duì)密鑰文件(公鑰、私鑰),然后將公鑰文件放到服務(wù)器中的指定位置。遠(yuǎn)程登錄時(shí),系統(tǒng)將使用公鑰、私鑰進(jìn)行加密/解密關(guān)聯(lián)驗(yàn)證。能增強(qiáng)安全性,且可以免交互登錄。
當(dāng)密碼驗(yàn)證、密鑰對(duì)驗(yàn)證都啟用時(shí),服務(wù)器將優(yōu)先使用密鑰對(duì)驗(yàn)證。可根據(jù)實(shí)際情況設(shè)置驗(yàn)證方式。
vim /etc/ssh/sshd_config #編輯服務(wù)端主配置文件 PasswordAuthentication yes #啟用密碼驗(yàn)證 PubkeyAuthentication yes #啟用密鑰對(duì)驗(yàn)證 AuthorizedKeysFile .ssh/authorized_keys #指定公鑰庫(kù)文件
在客戶端創(chuàng)建密鑰對(duì)
通過(guò)ssh-keygen工具為當(dāng)前用戶創(chuàng)建密鑰對(duì)文件。可用的加密算法為RSA、ECDSA或DSA等(ssh-keygen命令的“-t”選項(xiàng)用于指定算法類型)。
useradd admin echo "123123" | passwd --stdin admin su - admin ssh-keygen -t ecdsa Generating public/private ecdsa key pair. Enter file in which to save the key (/home/admin/.ssh/id_ecdsa): #指定私鑰位置,直接回車使用默認(rèn)位置 Created directory '/home/admin/.ssh'. #生成的私鑰、公鑰文件默認(rèn)存放在宿主目錄中的隱藏目錄.ssh/下 Enter passphrase (empty for no passphrase): #設(shè)置私鑰的密碼 Enter same passphrase again: #確認(rèn)輸入 ls -l .ssh/id_ecdsa*#id_ecdsa是私鑰文件,權(quán)限默認(rèn)為600;id_ecdsa.pub是公鑰文件,用來(lái)提供給 SSH 服務(wù)器
在服務(wù)器的/home/zhangsan/.ssh/目錄中導(dǎo)入公鑰文本
cd ~/.ssh/ ssh-copy-id -i id_ecdsa.pub zhangsan@192.168.80.10
在客戶端使用密鑰對(duì)驗(yàn)證
ssh zhangsan@192.168.86.10 lisi@192.168.86.10's password: #輸入私鑰的密碼
在客戶機(jī)設(shè)置ssh代理功能,實(shí)現(xiàn)免交互登錄
ssh-agent bash ssh-add Enter passphrase for /home/admin/.ssh/id_ecdsa: #輸入私鑰的密碼 ssh zhangsan@192.168.80.10
*補(bǔ)充
scp ~/.ssh/id_ecdsa.pub root@192.168.80.10:/opt #將本機(jī)~/.ssh目錄下的公鑰上傳到服務(wù)器的/opt目錄里 mkdir /home/zhangsan/.ssh/ #在服務(wù)器/home/zhangsan/目錄下創(chuàng)建一個(gè).ssh目錄 cat /opt/id_ecdsa.pub >> /home/zhangsan/.ssh/authorized_keys #在服務(wù)器將/opt目錄下的公鑰文件追加到/home/zhangsan/.ssh/目錄中的authorzed_keys文件中 cat /home/zhangsan/.ssh/authorized_keys #在服務(wù)器查看/home/zhangsan/.ssh/authorized_keys文件
到此這篇關(guān)于Linux 遠(yuǎn)程管理及sshd服務(wù)驗(yàn)證知識(shí)點(diǎn)詳解的文章就介紹到這了,更多相關(guān)Linux 遠(yuǎn)程管理及sshd服務(wù)驗(yàn)證內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- linux遠(yuǎn)程登錄ssh免密碼配置方法
- Linux配置遠(yuǎn)程SSH無(wú)密碼登錄
- 菜鳥(niǎo)學(xué)Linux命令:ssh命令(遠(yuǎn)程登錄)
- 通過(guò) SSH 在遠(yuǎn)程 Linux 系統(tǒng)上運(yùn)行命令的方法
- Linux下使用SSH遠(yuǎn)程執(zhí)行命令方法收集
- ssh遠(yuǎn)程無(wú)法訪問(wèn)linux的問(wèn)題及解決
- Linux如何關(guān)閉遠(yuǎn)程ssh密碼登錄
- Linux實(shí)現(xiàn)搭建ssh并允許使用root遠(yuǎn)程
- Linux中SSH遠(yuǎn)程訪問(wèn)和控制的實(shí)現(xiàn)
相關(guān)文章
Ubuntu18.04安裝vsftpd的實(shí)現(xiàn)代碼
這篇文章主要介紹了Ubuntu18.04安裝vsftpd的實(shí)現(xiàn)代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12
阿里云申請(qǐng)?jiān)贫苊赓M(fèi)SSL證書(shū)(https)
這篇文章主要介紹了阿里云申請(qǐng)?jiān)贫苊赓M(fèi)SSL證書(shū)(https),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07
ubuntu環(huán)境下安裝memcache及啟動(dòng)的方法
這篇文章主要介紹了ubuntu環(huán)境下安裝memcache及啟動(dòng)的方法,結(jié)合實(shí)例形式簡(jiǎn)單分析了ubuntu環(huán)境下memcache的安裝、啟動(dòng)及簡(jiǎn)單測(cè)試方法,需要的朋友可以參考下2018-03-03

