无公网ECS/云桌面通过有公网ECS部署Squid 实现私网访问外网实践
本示例应用场景
场景一:云桌面访问外网(internet)
云桌面(Workspace)是一种基于云计算的优于个人电脑(PC)和传统本地虚拟桌面基础设施(VDI)解决方案的桌面服务。提供和PC一样的配置(包括vCPU、GPU、内存、磁盘)以及您所熟悉的Windows操作系统,您可以像使用自己的PC一样使用Workspace。
由于云桌面创建完毕之后并没有公网IP,如需访问外网,即可通过本示例
场景二:多台ECS共享一条带宽上网
在同一vpc下的多台ECS主机,只有一台主机购买了弹性公网IP,由于很多台主机只是偶尔访问外网的需求,所以没有购买公网带宽。则也可以通过配置 squid 代理,来使没有购买公网的服务器通过已购买公网的服务器访问外网。
Squid官方简介
SQUID是支持HTTP、HTTPS、FTP等更多功能的Web缓存代理。它通过缓存和重用频繁请求的网页来减少带宽和改善响应时间.SQUID具有广泛的访问控制,并且提供了一个很好的服务器加速器。它运行在大多数可用的操作系统上,包括Windows,并在GNUGPL下获得许可。
充分利用你的互联网连接
全世界数以百计的互联网提供商使用SQUID为他们的用户提供最好的网络访问。SQUID优化客户端和服务器之间的数据流,以提高性能和缓存频繁使用的内容,以节省带宽。SQUID还可以多种方式将内容请求路由到服务器,从而构建缓存服务器层次结构,从而优化网络吞吐量。
网站内容加速与发布
成千上万的互联网网站使用Squid大幅度增加其内容传递。SQUID可以减少服务器负载,提高客户端的交付速度。SQUID也可以用于提供来自世界各地的内容-只复制正在使用的内容,而不是无效率地复制所有内容。最后,Squid的高级内容路由配置允许您构建内容集群,通过各种Web服务器路由和负载平衡请求。
前提
拥有华为云账号,并且实名认证。
注册账号参考:
https://support.huaweicloud.com/usermanual-account/zh-cn_topic_0069252244.html
实名认证参考:
https://support.huaweicloud.com/usermanual-account/zh-cn_topic_0077914254.html
2、云桌面已开通并且创建完毕,创建云桌面步骤可以参考:创建云桌面
创建链接:https://www.huaweicloud.com/product/workspace.html,此处不再赘述创建流程
3、云桌面的VPC与ECS 必须属于同一VPC ,并且处于相同的安全组
基本环境如下:
ECS 服务器一台:
公网IP 114.116.x.x
私网IP 192.168.2.75
VPC名称 vpc_default
业务子网 subnet-2 (192.168.2.0/24)
云桌面一台:
私网IP 192.168.0.90
VPC名称 vpc_default
业务子网 subnet-1 (192.168.0.0/24)
子网如下:
Squid的安装配置
1. 检 查squid 软件包安装其情况
[root@ecs-41d0 ~]# rpm -qa|grep squid
2. 如果未安装,则使用 yum 方式安装
[root@ecs-41d0 ~]# yum -y install squid
3. 设置服务开机自启动(可选)
[root@ecs-41d0 ~]# chkconfig --level 35squid on
4.配置/etc/squid/squid.conf文件
可以先把默认的squid.conf 文件修改个名称,重新创建squid.conf配置文件
[root@ecs-41d0 ~]# mv /etc/squid/squid.conf /etc/squid/squid.conf.bak
[root@ecs-41d0 ~]# vim /etc/squid/squid.conf
配置内容示例参考:
[root@ecs-41d0 ~]# cat /etc/squid/squid.conf
http_port 192.168.2.75:3128 #根据实际情况修改,建议修改默认端口
cache_mem 64 MB
maximum_object_size 4 MB
cache_dir ufs /var/spool/squid 100 16 256
access_log /var/log/squid/access.log
acl localnet src 192.168.0.0/24 #根据实际情况修改
http_access allow localnet
http_access deny all
visible_hostname squid.taotie.dev
cache_mgr jkx@qq.com
5.初始化并 squid
[root@ecs-41d0 ~]# squid –z
[root@ecs-41d0 ~]# /etc/init.d/squid start
测试云桌面代理访问公网是否生效
打开IE 浏览器,菜单栏 > 工具 > Internet 选项 > 连接 > 局域网设置 > 代理服务器,按照以下格式设置:
如测试可以正常访问外网,说明配置成功
下面是华为云客户端浏览器截图
下面是手机端访问截图
探讨:
squid默认端口为3128端口,为避免被恶意利用,请更换其他端口使用
本案例用于演示,故防火墙均属于关闭状态,后期可以增加防火墙策略
Squid方案并不是最完美的,其他工具可以考虑使用varnish
其他
- 点赞
- 收藏
- 关注作者
评论(0)