? 上一篇下一篇 ?

在云服務Linux系統中如何用Squid來配置SSH代理服務器

    Squid是一個高性能的代理緩存服務器,但缺點是網址是以明文的形式發送的。在我們的特殊互聯網環境中,就算使用這樣的代理服務器,打開網頁時也常常會被“Reset”。 而SSH則很好地解決了這個問題。你只需要一個vps,就可以配置了。架設還是挺容易的,下面數據吧云計算來詳細講下。

  有時你無法從本地連接到 SSH 服務器。還有時,你可能想為 SSH 連接添加額外的安全層。在這些情況下,通過代理服務器連接到 SSH 服務器是一種解決方式。

Squid 是提供緩存和代理服務的全功能代理服務器應用。它通常用于在瀏覽過程中重用和緩存以前請求的網頁來幫助縮短響應時間并減少網絡帶寬。

但是在本篇中,你將配置 Squid 作為 SSH 代理服務器,因為它是強大的受信任代理服務器,易于配置。

安裝和配置

使用 sudo 安裝 squid 軟件包:

  1. $ sudo dnf install squid -y

squid 配置文件非常龐大,但是我們只需要配置其中一些。Squid 使用訪問控制列表來管理連接。

編輯 /etc/squid/squid.conf 文件,確保你有下面解釋的兩行。

首先,指定你的本地 IP 網絡。默認配置文件已經列出了最常用的,但是如果沒有,你需要添加你的配置。例如,如果你的本地 IP 網絡范圍是 192.168.1.X,那么這行會是這樣:

  1. acl localnet src 192.168.1.0/24

接下來,添加以下行,將 SSH 端口添加為安全端口:

  1. acl Safe_ports port 22

保存該文件。現在啟用并重啟 squid 代理服務:

  1. $ sudo systemctl enable squid

  2. $ sudo systemctl restart squid

squid 代理默認監聽 3128 端口。配置 firewalld 允許此服務:

  1. $ sudo firewall-cmd --add-service=squid --perm

  2. $ sudo firewall-cmd --reload

測試 ssh 代理連接

要通過 ssh 代理服務器連接到服務器,我們將使用 netcat。

如果尚未安裝 nmap-ncat,請安裝它:

  1. $ sudo dnf install nmap-ncat -y

這是標準 ssh 連接示例:

  1. $ ssh user@example.com

這是使用 squid 代理服務器作為網關連接到該服務器的方式。

此示例假定 squid 代理服務器的 IP 地址為 192.168.1.63。你還可以使用 squid 代理服務器的主機名或 FQDN:

  1. $ ssh user@example.com -o "ProxyCommand nc --proxy 192.168.1.63:3128 %h %p"

以下是這些選項的含義:

  • ProxyCommand – 告訴 ssh 使用代理命令。

  • nc – 用于建立與代理服務器連接的命令。這是 netcat 命令。

  • %h – 代理服務器的主機名或 IP 地址的占位符。

  • %p – 代理服務器端口號的占位符。

有很多方法可以配置 SSH 代理服務器,但這是相對比較簡單快捷的方法