温馨提示×

怎样在CentOS上配置SSH隧道

小樊
45
2025-02-22 16:20:01
栏目: 智能运维
Centos服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在CentOS上配置SSH隧道可以帮助你安全地访问远程服务器或绕过网络限制。以下是详细的步骤:

1. 安装SSH客户端

首先,确保你的CentOS系统上已经安装了SSH客户端。如果没有安装,可以使用以下命令进行安装:

sudo yum install openssh-clients

2. 创建SSH隧道

SSH隧道可以通过两种方式创建:本地端口转发和远程端口转发。

本地端口转发

本地端口转发允许你将本地端口的数据通过SSH隧道转发到远程服务器的某个端口。

例如,假设你想将本地的端口8080转发到远程服务器(remote_server_ip)的端口80:

ssh -L 8080:localhost:80 user@remote_server_ip

在这个命令中:

  • -L 表示本地端口转发。
  • 8080 是本地机器上的端口。
  • localhost:80 是远程服务器上的地址和端口。
  • user 是远程服务器的用户名。
  • remote_server_ip 是远程服务器的IP地址。

远程端口转发

远程端口转发允许你将远程服务器的端口数据通过SSH隧道转发到本地机器的某个端口。

例如,假设你想将远程服务器(remote_server_ip)的端口8080转发到本地机器的端口80:

ssh -R 8080:localhost:80 user@remote_server_ip

在这个命令中:

  • -R 表示远程端口转发。
  • 8080 是远程服务器上的端口。
  • localhost:80 是本地机器上的地址和端口。
  • user 是远程服务器的用户名。
  • remote_server_ip 是远程服务器的IP地址。

3. 自动化SSH隧道

如果你需要长时间保持SSH连接并自动重连,可以使用autossh工具。

安装autossh

sudo yum install autossh

使用autossh创建隧道

例如,使用本地端口转发:

autossh -M 0 -o "ServerAliveInterval 30" -o "ServerAliveCountMax 3" -L 8080:localhost:80 user@remote_server_ip

在这个命令中:

  • -M 0 禁用autossh的监控端口。
  • -o "ServerAliveInterval 30" 设置SSH保持连接的间隔时间为30秒。
  • -o "ServerAliveCountMax 3" 设置SSH保持连接的最大失败次数为3次。

4. 配置SSH配置文件

为了简化命令,你可以在~/.ssh/config文件中添加配置。

例如,添加本地端口转发配置:

Host remote_server
    HostName remote_server_ip
    User user
    LocalForward 8080 localhost:80

然后你可以直接使用以下命令创建隧道:

ssh remote_server

5. 断开SSH连接

当你完成工作后,可以通过按Ctrl+C来断开SSH连接。

通过以上步骤,你可以在CentOS上成功配置SSH隧道。根据你的需求选择合适的转发方式,并确保你的SSH连接是安全的。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:如何在CentOS上配置SSH隧道

0