文章插图
你可能想为 SSH 连接添加额外的安全层 。在这些情况下 , 通过代理服务器连接到 SSH 服务器是一种解决方式 。• 来源:linux.cn • 作者:Curt Warfield • 译者:geekpi •
(本文字数:1503 , 阅读时长大约:2 分钟)
有时你无法从本地连接到 SSH 服务器 。还有时 , 你可能想为 SSH 连接添加额外的安全层 。在这些情况下 , 通过代理服务器连接到 SSH 服务器是一种解决方式 。
Squid 是提供缓存和代理服务的全功能代理服务器应用 。它通常用于在浏览过程中重用和缓存以前请求的网页来帮助缩短响应时间并减少网络带宽 。
但是在本篇中 , 你将配置 Squid 作为 SSH 代理服务器 , 因为它是强大的受信任代理服务器 , 易于配置 。
安装和配置使用 sudo 安装 squid 软件包:
$ sudo dnf install squid -y
squid 配置文件非常庞大 , 但是我们只需要配置其中一些 。Squid 使用访问控制列表来管理连接 。【如何使用 Squid 配置 SSH 代理服务器】编辑 /etc/squid/squid.conf 文件 , 确保你有下面解释的两行 。
首先 , 指定你的本地 IP 网络 。默认配置文件已经列出了最常用的 , 但是如果没有 , 你需要添加你的配置 。例如 , 如果你的本地 IP 网络范围是 192.168.1.X , 那么这行会是这样:
acl localnet src 192.168.1.0/24
接下来 , 添加以下行 , 将 SSH 端口添加为安全端口:acl Safe_ports port 22
保存该文件 。现在启用并重启 squid 代理服务:$ sudo systemctl enable squid$ sudo systemctl restart squid
squid 代理默认监听 3128 端口 。配置 firewalld 允许此服务:$ sudo firewall-cmd --add-service=squid --perm$ sudo firewall-cmd --reload
测试 ssh 代理连接要通过 ssh 代理服务器连接到服务器 , 我们将使用 netcat 。如果尚未安装 nmap-ncat , 请安装它:
$ sudo dnf install nmap-ncat -y
这是标准 ssh 连接示例:$ ssh user@example.com
这是使用 squid 代理服务器作为网关连接到该服务器的方式 。此示例假定 squid 代理服务器的 IP 地址为 192.168.1.63 。你还可以使用 squid 代理服务器的主机名或 FQDN:
$ ssh user@example.com -o "ProxyCommand nc --proxy 192.168.1.63:3128 %h %p"
以下是这些选项的含义:- ProxyCommand – 告诉 ssh 使用代理命令 。
- nc – 用于建立与代理服务器连接的命令 。这是 netcat 命令 。
- %h – 代理服务器的主机名或 IP 地址的占位符 。
- %p – 代理服务器端口号的占位符 。
推荐阅读
- RabbitMq七种工作模式,结合简单的java实例使用,别再说你不会
- 何时使用约束求解而不是机器学习
- 在Windows和Linux中找出磁盘分区使用的文件系统,就是这么简单
- |「性别歧视」是如何“威胁”女性身心健康的?(漫画)拒绝焦虑!
- 商场装修如何设计
- 好普洱茶需要慢慢泡,如何泡出杯好茶
- 如何挑选香干
- 如何挑选雪里蕻
- 如何挑选红薯淀粉
- 如何选购豆干