日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【鬼网络】之远程访问及控制ssh

發布時間:2024/9/3 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【鬼网络】之远程访问及控制ssh 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

遠程訪問及控制ssh

  • 一、SSH遠程管理
    • 1、定義
    • 2、優點
    • 3、客戶端與服務端
    • 4、SSH服務的開啟、端口號和配置文件
  • 二、配置 OpenSSH 服務端
    • 1、配置文件常用設置選項
    • 2、AllowUsers和DenyUsers
  • 三、使用SSH客戶端程序
    • 1、SSH遠程登錄
    • 2、SCP遠程復制
      • ①、下行復制
      • ②、上行復制
    • 3、sftp 安全 FTP
  • 四、sshd服務支持兩種驗證方式
    • 1、密碼驗證
    • 2、秘鑰對驗證
      • ①、在客戶機創建秘鑰對
      • ②、將公鑰文件上傳至服務器
      • ③、在服務器中導入公鑰文本(第二臺)
      • ④、在客戶端使用秘鑰對驗證
      • ⑤、在客戶機設置ssh代理功能,實現免交互登錄
  • 五、TCP Wrappers 訪問控制
    • 1、保護機制的兩種實現方式
      • ①、查看程序的 libwrap.so.* 鏈接庫——ldd命令
    • 2、TCP Wrappers 的訪問策略
    • 3、TCP Wrappers 機制的基本原則

一、SSH遠程管理

1、定義

SSH(Secure Shell )是一種安全通道協議,主要用來實現字符界面的遠程的登錄、遠程復制等功能。
SSH協議對通信雙方的數據傳輸進行了加密處理,其中包括用戶登錄時輸入的用戶口令。因此SSH協議具有很好的安全性。

2、優點

3、客戶端與服務端

客戶端:Putty、Xshell、CRT
服務端:OpenSSH

  • OpenSSH 是實現 SSH 協議的開源軟件項目,適用于各種 UNIX、Linux 操作系統。
  • CentOS 7系統默認已安裝openssh相關軟件包,并已將 sshd 服務添加為開機自啟動。

4、SSH服務的開啟、端口號和配置文件

SSH服務的開啟

  • 執行 “systemctl start sshd” 命令即可啟動 sshd 服務
    SSH服務的端口號
  • sshd 服務使用的默認端口號為 22
    SSH服務的配置文件
  • sshd_config 是針對服務端的配置文件
  • ssh_config 是針對客戶端的配置文件

二、配置 OpenSSH 服務端

1、配置文件常用設置選項



2、AllowUsers和DenyUsers

AllowUsers和DenyUsers不能同時使用。會沖突


三、使用SSH客戶端程序

1、SSH遠程登錄

當用戶第一次登錄SSH服務器時,必須接受服務器發來的ECDSA秘鑰(根據提示輸入"yes")后才能繼續驗證。接收的秘鑰信息將保存到 ~/.ssh/known_hosts 文件中,密碼驗證成功后,即可登錄目標服務器的命令環境中了。

選項 說明
-1 強制使用ssh協議版本1
-2 強制使用ssh協議版本2
-4 強制使用IPv4地址
-6 強制使用IPv6地址
-A 開啟認證代理連接轉發功能
-a 關閉認證代理連接轉發功能
-b 使用本機指定的地址作為對位連接的源IP地址
-C 請求壓縮所有數據
-F 指定ssh指令的配置文件,默認的配置文件為“/etc/ssh/ssh_config”
-f 后臺執行ssh指令
-g 允許遠程主機連接本機的轉發端口
-i 指定身份文件(即私鑰文件)
-l 指定連接遠程服務器的登錄用戶名
-N 不執行遠程指令
-o 指定配置選項
-p 指定遠程服務器上的端口
-q 靜默模式,所有的警告和診斷信息被禁止輸出
-X 開啟X11轉發功能
-x 關閉X11轉發功能
-y 開啟信任X11轉發功能

2、SCP遠程復制

①、下行復制

②、上行復制

3、sftp 安全 FTP

由于使用了加密/解密技術,所以傳輸效率比普通的FTP要低,但安全性更高。
sftp root@192.168.226.20
root@192.168.226.20’s password:
Connected to 192.168.226.20.
sftp> ls
sftp> get 文件名 #下載文件
sftp> put 文件名 #上傳文件
sftp> exit #退出


四、sshd服務支持兩種驗證方式

1、密碼驗證

對服務器中本地系統用戶的登錄名稱、密碼進行驗證。簡便,但可能會被暴力破解

2、秘鑰對驗證

要求提供相匹配的密鑰信息才能通過驗證。通常先在客戶端中創建一對密鑰文件(公鑰、私鑰),然后將公鑰文件放到服務器中的指定位置。遠程登錄時,系統將使用公鑰、私鑰進行加密/解密關聯驗證。能增強安全性,且可以免交互登錄。
當密碼驗證、密鑰對驗證都啟用時,服務器將優先使用密鑰對驗證。可根據實際情況設置驗證方式。
vim /etc/ssh/sshd_config
PasswordAuthentication yes #啟用密碼驗證
PubkeyAuthentication yes #啟用密鑰對驗證
AuthorizedKeysFile .ssh/authorized_keys #指定公鑰庫文件

①、在客戶機創建秘鑰對

通過ssh-keygen工具為當前用戶創建密鑰對文件。可用的加密算法為RSA、ECDSA或DSA等(ssh-keygen命令的“-t”選項用于指定算法類型)。

useradd admin
echo “123456” | passwd --stdin admin
su - admin

ssh-keygen -t rsa
Generating public/private ecdsa key pair.
Enter file in which to save the key (/home/ljm/.ssh/id_rsa): #指定私鑰位置,直接回車使用默認位置
Created directory ‘/home/admin/.ssh’. #生成的私鑰、公鑰文件默認存放在宿主目錄中的隱藏目錄.ssh/下
Enter passphrase (empty for no passphrase): #設置私鑰的密碼
Enter same passphrase again: #確認輸入

ls -l .ssh/id_admin* #id_rsa是私鑰文件,權限默認為600;id_rsa.pub是公鑰文件,用來提供給 SSH 服務器

②、將公鑰文件上傳至服務器

scp ~/.ssh/id_rsa.pub root@192.168.226.20:/opt

#此方法可直接在服務器的/home/admin/.ssh/目錄中導入公鑰文本
cd ~/.ssh/
ssh-copy-id -i id_rsa.pub zhangsan@192.168.226.20

③、在服務器中導入公鑰文本(第二臺)

mkdir .ssh
ls -A
cat /id_rsa.pub >> .ssh/authorized_keys
cat authorized_keys

④、在客戶端使用秘鑰對驗證

ssh root@192.168.226.20
@192.168.226.20’s password: #輸入私鑰的密碼

⑤、在客戶機設置ssh代理功能,實現免交互登錄

ssh-agent bash
ssh-add
Enter passphrass for /root/.ssh/id_rsa: #輸入私鑰的密碼
root@192.168.226.20

五、TCP Wrappers 訪問控制

TCP Wrappers 將TCP服務程序“包裹”起來,代為監聽TCP服務程序的端口,增加了一個安全檢測過程,外來的連接請求必須先通過這層安全檢測,獲得許可后才能訪問真正的服務程序。
大多數 Linux 發行版,TCP Wrappers 是默認提供的功能。

1、保護機制的兩種實現方式

直接使用 tcpd 程序對其他服務程序進行保護,需要運行 tcpd程序。
由其他網絡服務程序調用 libwrap.so.* 鏈接庫,不需要運行 tcpd 程序。此方式的應用更加廣泛,也更有效率。

①、查看程序的 libwrap.so.* 鏈接庫——ldd命令


文件需要寫上絕對路徑
我們不是很清楚文件的絕對路徑時,可以使用which命令查詢
也可以兩條命令一起使用:ldd $(which sshd)

2、TCP Wrappers 的訪問策略

TCP Wrappers 機制的保護對象為各種網絡服務程序,針對訪問服務的客戶端地址進行訪問控制。
對應的兩個策略文件為 /etc/hosts.allow 和 /etc/hosts.deny,分別用來設置允許和拒絕的策略。

3、TCP Wrappers 機制的基本原則

首先檢查/etc/hosts.allow文件,如果找到相匹配的策略,則允許訪問;

否則繼續檢查/etc/hosts.deny文件,如果找到相匹配的策略,則拒絕訪問;

如果檢查上述兩個文件都找不到相匹配的策略,則允許訪問。

允許所有,拒絕個別
只需在/etc/hosts.deny文件中添加相應的拒絕策略

允許個別,拒絕所有
除了在/etc/hosts.allow中添加允許策略之外,還需要在/etc/hosts.deny文件中設置“ALL:ALL”的拒絕策略。

4、示例
只希望從IP地址為12.0.0.1的主機或者位于192.168.80.0/24網段的主機訪問sshd服務,其他地址被拒絕。
vi /etc/hosts.allow
sshd:12.0.0.1,192.168.80.*

vi /etc/hosts.deny
sshd:ALL

總結

以上是生活随笔為你收集整理的【鬼网络】之远程访问及控制ssh的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。