解决Linux系统开启EasyConnect后无法访问外网的问题

本文档介绍了如何检查Linux系统的路由表和防火墙配置。通过`route -n`命令查看路由表,确认默认网关及隧道接口设置正确。同时,使用`iptables --line-numbers -L`检查防火墙规则,发现SANGFOR_VIRTUAL链存在限制,通过清除该规则或整个链以允许外网访问。解决网络问题的关键在于理解并调整这些网络配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、检查路由表:正常

 route -n 
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         172.19.224.1    0.0.0.0         UG    0      0        0 eth0
3.0.1.0         0.0.0.0         255.255.255.0   U     0      0        0 tun0
10.254.253.0    0.0.0.0         255.255.255.0   U     0      0        0 tun0
66.1.77.0       0.0.0.0         255.255.255.0   U     0      0        0 tun0
172.19.224.0    0.0.0.0         255.255.240.0   U     0      0        0 eth0

2、检查防火墙

iptables --line-numbers -L
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
num  target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination
1    SANGFOR_VIRTUAL  all  --  anywhere             anywhere

Chain SANGFOR_VIRTUAL (1 references)
num  target     prot opt source               destination
======== 敏感信息=============
103  DROP       all  --  anywhere             anywhere

从结果中可发现SANGFOR_VIRTUAL 自定义链中只放行了指定网络权限,删除最后一条规则或清空 SANGFOR_VIRTUAL规则即可访问外网。

#清空 SANGFOR_VIRTUAL
iptables -F  SANGFOR_VIRTUAL
### 如何配置和部署 EasyConnect 服务端 #### 一、概述 EasyConnect 是一种支持企业级远程访问解决方案的产品,主要用于实现安全的远程办公和网络资源访问。通过 Docker 部署的方式可以快速搭建 EasyConnect 客户端环境[^1]。然而,对于服务端的配置和部署,则需要更详细的规划和技术栈的支持。 --- #### 二、硬件与软件需求 在正式开始之前,需确认以下条件满足: - **操作系统**: 支持的操作系统包括但不限于 CentOS、Ubuntu 和 Windows Server。 - **硬件要求**: 至少配备双核 CPU、4GB RAM 及足够的存储空间来承载虚拟化容器和其他必要组件。 - **依赖项**: - Docker 环境已安装并正常运行。 - 如果涉及特定版本兼容性问题,请参照 `docker-easyconnect` 提供的不同标签说明选择合适的镜像版本[^3]。 --- #### 三、服务端部署流程 ##### 1. 准备工作 确保目标主机已经完成基础设置,并具备公网 IP 或者内网可达地址以便客户端接入。此外还需要开放必要的通信端口(如 HTTPS 默认使用的 443),这些可以通过防火墙规则调整实现[^5]。 ##### 2. 创建专用目录结构 为了更好地管理数据卷映射关系,在宿主机创建专门用于保存持久化文件的位置: ```bash mkdir -p ~/easyconnect_data/{config,logs} chmod -R 755 ~/easyconnect_data/ ``` ##### 3. 下载官方或者社区维护好的镜像 根据实际应用场景决定采用哪个版本号作为启动依据。例如针对较新版本的服务端交互场景推荐如下命令拉取最新稳定版图像: ```bash docker pull hagb/docker-easyconnect:latest ``` 如果明确知道对接的是低于某个阈值的老平台则指定相应 tag 值即可: ```bash docker pull hagb/docker-easyconnect:7.6.3 ``` ##### 4. 启动容器实例 下面给出了一种典型的执行语句模板,其中包含了若干重要参数解释: | 参数 | 描述 | |------|-----| | `--rm` | 当前会话结束后自动清理临时产生的中间层对象减少磁盘占用率。| | `-d /dev/net/tun` | 授权设备节点给内部进程从而允许建立隧道连接功能。| | `NET_ADMIN` | 赋予额外权限使得能够操作路由表等相关高级特性。| 完整的调用形式可能看起来像是这样子的样子: ```bash docker run --name easyconnect-server \ --restart unless-stopped \ --device /dev/net/tun \ --cap-add NET_ADMIN \ -e PASSWORD="your_password_here" \ -e DISABLE_PKG_VERSION_XML=1 \ -v ~/easyconnect_data/config:/etc/easyconnect \ -v ~/easyconnect_data/logs:/var/log/easyconnect \ -p 0.0.0.0:443:443/tcp \ -p 0.0.0.0:80:80/tcp \ -d hagb/docker-easyconnect:7.6.7 ``` > 注意事项:上述例子中的密码字段务必替换为自己设定的安全字符串;同时监听范围从 localhost 扩展至全局接口以适应外部请求到达情况。 ##### 5. 测试验证环节 一旦前述步骤顺利完成之后就可以尝试利用浏览器或者其他工具发起测试性的认证过程了。通常情况下应该可以看到标准的身份校验页面提示输入用户名加密钥组合信息等内容。 --- #### 四、常见问题排查指南 - 若发现无法正常加载初始画面可能是由于缺少某些关键库文件引起的错误导致渲染失败现象发生; - 对于跨域资源共享 CORS 方面遇到阻碍可通过修改 Nginx/Apache 配置增加头部声明解决办法[^4]。 --- ### 结论 综上所述,借助现代化容器技术手段完全可以高效便捷地达成预期目的即迅速建立起一套可供日常业务运作所需的 EasyConnect 平台架构体系[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值