如何配置无公网IP地址的云主机访问Internet
上传者:刘卫军|上传时间:2016-09-08|密次下载
如何配置无公网IP地址的云主机访问Internet
抛开云主机环境来说,通常一个办公网络内所有的主机都没有公网IP地址,但他们都能通过具有IP地址的路由器(网关)设备访问Internet,此设备只需要具备NAT和转发功能即可。具有这样功能的设备当然可以用某台计算机代替。
下面是一个最简单的模型:
主机A(服务端):
网卡1:内网IP地址1
网卡2:公网IP地址3或者能访问Internet的某个IP地址3
主机B(客户端):
网卡1:内网IP地址2
主机B想通过主机A访问Internet,只需要主机B指定主机A为网关,主机A能够将来自主机B的包伪装成主机A上的网卡2上的IP即可(sNAT)。
因此云主机环境也是一样,只要保证两个云主机间内网是连通的,另一台云主机能访问Internet即可。如果某两个云主机内网不通,但可以通过vpn连通,也可以实现。
(一)下面是两个主机间通过内网IP直接连接模拟访问Internet的例子。
主机A(服务端):
网卡1:10.20.0.128(eth0,无Internet访问)
网卡2:192.168.1.52(eth1,Internet访问)
主机B(客户端):
网卡1:10.20.0.129(eth0,无Internet访问)
主机A操作:
开启iptables转发功能:
1 2 3 |
sysctl -w net.ipv4.conf.default.accept_source_route=1 sysctl -w net.ipv4.conf.default.rp_filter=0 sysctl -w net.ipv4.ip_forward=1 |
配置iptables NAT规则:
1 2 |
modprobe iptable_nat iptables -t nat -A POSTROUTING -s 10.20.0.0/24 -o eth1 -j MASQUERADE |
删除iptables拒绝转发规则:
1 |
iptables -D FORWARD -j REJECT --reject-with icmp-host-prohibited |
主机B操作:
将默认网关配置成主机A的网卡1地址:
1 2 |
route add -host 10.20.0.128/32 dev eth0 route add default gw 10.20.0.128 dev eth0 |
(二)下面是两个主机间通过OpenVPN连接模拟访问Internet的例子。
主机A(服务端,CentOS6.x):
网卡1:10.20.0.128(eth0,无Internet访问)
网卡2:192.168.1.52(eth1,Internet访问)
主机B(客户端,CentOS6.x):
网卡1:10.20.0.129(eth0,无Internet访问)
主机A操作:
安装OpenVPN(安装OpenVPN也可以参考《CentOS6.7安装OpenVPN服务端》):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
yum -y install http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm yum -y install openssl openvpn cd /etc/openvpn git clone https://github.com/OpenVPN/easy-rsa.git cd /etc/openvpn/easy-rsa/ git checkout -b v2.2.1 cp -r easy-rsa/2.0 /etc/openvpn/easy-rsa/ cd /etc/openvpn/easy-rsa/2.0/ vim im vars export EASY_RSA="`pwd`" export OPENSSL="openssl" export PKCS11TOOL="pkcs11-tool" export GREP="grep" export KEY_CONFIG=`$EASY_RSA/whichopensslcnf $EASY_RSA` export KEY_DIR="$EASY_RSA/keys" echo NOTE: If you run ./clean-all, I will be doing a rm -rf on $KEY_DIR export PKCS11_MODULE_PATH="dummy" export PKCS11_PIN="dummy" export KEY_SIZE=2048 export CA_EXPIRE=3650 export KEY_EXPIRE=3650 export KEY_COUNTRY="CN" export KEY_PROVINCE="Shandong" export KEY_CITY="QingDao" export KEY_ORG="51devops" export KEY_EMAIL="uberurey_ups@163.com" export KEY_OU="Ops" export KEY_NAME="51devops" |
生成OpenVPN 证书以及key:
1 2 3 4 5 6 7 8 |
source vars ./clean-all ./pkitool --initca ./pkitool --server node1.51devops.com ./build-dh # ./build-key node1.51devops.com ./build-key node2.51devops.com chmod 400 /etc/openvpn/easy-rsa/2.0/keys/node1.51devops.com.key |
编写一个OpenVPN Server端的配置文件:
vim /etc/openvpn/server.conf
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
port 1194 proto tcp dev tun ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt cert /etc/openvpn/easy-rsa/2.0/keys/node1.51devops.com.crt key /etc/openvpn/easy-rsa/2.0/keys/node1.51devops.com.key dh /etc/openvpn/easy-rsa/2.0/keys/dh2048.pem server 10.8.0.0 255.255.255.0 ifconfig-pool-persist clientiplist.txt client-to-client duplicate-cn keepalive 10 120 comp-lzo persist-key persist-tun status /var/log/openvpn-status.log log /var/log/openvpn.log log-append /var/log/openvpn.log verb 3 |
启动OpenVPN并配置iptables:
1 2 3 4 5 6 7 8 9 |
service openvpn start service openvpn status ifconfig tun0 cat /var/log/openvpn.log cat /var/log/openvpn-status.log iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 1194 -j ACCEPT # iptables -I INPUT -m state --state NEW -m udp -p udp --dport 1194 -j ACCEPT iptables-save || service iptables status service iptables save |
编辑内核参数,启用转发功能:
1 2 3 4 |
vim /etc/sysctl.conf net.ipv4.conf.default.accept_source_route = 1 net.ipv4.conf.default.rp_filter = 0 net.ipv4.ip_forward = 1 |
或者:
1 2 3 |
sysctl -w net.ipv4.conf.default.accept_source_route=1 sysctl -w net.ipv4.conf.default.rp_filter=0 sysctl -w net.ipv4.ip_forward=1 |
配置iptables,配置sNAT和FORWARD规则:
1 2 3 4 |
modprobe iptable_nat iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth1 -j MASQUERADE iptables -D FORWARD -j REJECT --reject-with icmp-host-prohibited service iptables save || iptables-save > /etc/sysconfig/iptables |
tips:也可以清空iptables所有配置,再添加允许规则,这样可以避开一些reject规则。
可以通过iptables -t nat -nL -v命令查看nat表状态。
1 |
iptables -t nat -A POSTROUTING -s 10.20.0.0/24 -o eth1 -j MASQUERADE |
配置主机B(客户端)
安装OpenVPN客户端:
1 2 |
yum -y install http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm yum -y install openssl openvpn |
编辑OpenVPN Client配置文件:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
vim /etc/openvpn/client.conf client dev tun port 1194 proto tcp remote 10.20.0.128 1194 resolv-retry infinite nobind persist-tun ca /etc/openvpn/ca.crt cert /etc/openvpn/node2.51devops.com.crt key /etc/openvpn/node2.51devops.com.key remote-cert-tls server script-security 3 ns-cert-type server comp-lzo adaptive verb 3 mute 20 |
缩小证书文件的权限,只允许当前用户访问,不允许组内其他用户和其他组访问
1 2 |
chmod 400 /etc/openvpn/node2.51devops.com.key service openvpn restart |
配置路由:
1 2 |
route add -host 10.8.0.1/32 dev tun0 route add default gw 10.8.0.1 dev tun0 |
测试连接:
1 2 |
ping -c4 10.8.0.1 ping -c4 114.114.114.114 |
在OpenVPN连接前需要注意证书一定配置正确,时间同步,软件版本最好保持一致、OpenSSL软件包升级到最新版本。
tag:Linux网络,OpenVPN配置,iptables sNAT
本文出自 “通信,我的最爱” 博客,http://dgd2010.blog.51cto.com/1539422/1812745
下载文档
热门试卷
- 2016年四川省内江市中考化学试卷
- 广西钦州市高新区2017届高三11月月考政治试卷
- 浙江省湖州市2016-2017学年高一上学期期中考试政治试卷
- 浙江省湖州市2016-2017学年高二上学期期中考试政治试卷
- 辽宁省铁岭市协作体2017届高三上学期第三次联考政治试卷
- 广西钦州市钦州港区2016-2017学年高二11月月考政治试卷
- 广西钦州市钦州港区2017届高三11月月考政治试卷
- 广西钦州市钦州港区2016-2017学年高一11月月考政治试卷
- 广西钦州市高新区2016-2017学年高二11月月考政治试卷
- 广西钦州市高新区2016-2017学年高一11月月考政治试卷
- 山东省滨州市三校2017届第一学期阶段测试初三英语试题
- 四川省成都七中2017届高三一诊模拟考试文科综合试卷
- 2017届普通高等学校招生全国统一考试模拟试题(附答案)
- 重庆市永川中学高2017级上期12月月考语文试题
- 江西宜春三中2017届高三第一学期第二次月考文科综合试题
- 内蒙古赤峰二中2017届高三上学期第三次月考英语试题
- 2017年六年级(上)数学期末考试卷
- 2017人教版小学英语三年级上期末笔试题
- 江苏省常州西藏民族中学2016-2017学年九年级思想品德第一学期第二次阶段测试试卷
- 重庆市九龙坡区七校2016-2017学年上期八年级素质测查(二)语文学科试题卷
- 江苏省无锡市钱桥中学2016年12月八年级语文阶段性测试卷
- 江苏省无锡市钱桥中学2016-2017学年七年级英语12月阶段检测试卷
- 山东省邹城市第八中学2016-2017学年八年级12月物理第4章试题(无答案)
- 【人教版】河北省2015-2016学年度九年级上期末语文试题卷(附答案)
- 四川省简阳市阳安中学2016年12月高二月考英语试卷
- 四川省成都龙泉中学高三上学期2016年12月月考试题文科综合能力测试
- 安徽省滁州中学2016—2017学年度第一学期12月月考高三英语试卷
- 山东省武城县第二中学2016.12高一年级上学期第二次月考历史试题(必修一第四、五单元)
- 福建省四地六校联考2016-2017学年上学期第三次月考高三化学试卷
- 甘肃省武威第二十三中学2016—2017学年度八年级第一学期12月月考生物试卷
网友关注
- 大班科学《多姿多彩的菊花》
- 6-3-1原始凭证的填制与审核Word
- 合成氨生产工艺Word
- 肯德基内外部环境分析Word
- 习惯主题班会Word
- 艺术节学生作品卡
- 线代讲义Word
- 线代讲义Word
- 科目一考点整理(部分)
- 窑洞建筑分析Word
- 14.2.2一次函数的图象性质(2)Word
- 素质培训Word
- 电脑艺术培训心得
- 大班科学《草鱼》
- 大班科学《乌鸦喝水》
- 东燕小学阅读总结
- 龙山中学道德讲堂Word
- 第9章 IO扩展Word
- 大班科学《有用的筛子》
- 健康教育教案
- 交通意外逃生与急救56pWord
- 室内家具陈设的形式Word
- 丰田生产方式Word
- 商君书Word
- 关于山水文园社区会所案例分析报告
- Mercer公司Word模板
- 教师读书网络平台注册信息登记表
- XPS 处理Word
- 2016年最新淘宝店铺淘宝集市店案例分析Word
- 贾宇彤观后感
网友关注视频
- 第19课 我喜欢的鸟_第一课时(二等奖)(人美杨永善版二年级下册)_T644386
- 【部编】人教版语文七年级下册《泊秦淮》优质课教学视频+PPT课件+教案,湖北省
- 【部编】人教版语文七年级下册《逢入京使》优质课教学视频+PPT课件+教案,安徽省
- 沪教版八年级下册数学练习册20.4(2)一次函数的应用2P8
- 北师大版八年级物理下册 第六章 常见的光学仪器(二)探究凸透镜成像的规律
- 外研版英语七年级下册module1unit3名词性物主代词讲解
- 【获奖】科粤版初三九年级化学下册第七章7.3浓稀的表示
- 【部编】人教版语文七年级下册《泊秦淮》优质课教学视频+PPT课件+教案,广东省
- 冀教版英语五年级下册第二课课程解读
- 冀教版小学数学二年级下册第二单元《有余数除法的简单应用》
- 沪教版八年级下册数学练习册一次函数复习题B组(P11)
- 第五单元 民族艺术的瑰宝_15. 多姿多彩的民族服饰_第二课时(市一等奖)(岭南版六年级上册)_T129830
- 冀教版小学数学二年级下册第二周第2课时《我们的测量》宝丰街小学庞志荣
- 化学九年级下册全册同步 人教版 第25集 生活中常见的盐(二)
- 沪教版牛津小学英语(深圳用) 六年级下册 Unit 7
- 8.练习八_第一课时(特等奖)(苏教版三年级上册)_T142692
- 沪教版牛津小学英语(深圳用) 五年级下册 Unit 12
- 第4章 幂函数、指数函数和对数函数(下)_六 指数方程和对数方程_4.7 简单的指数方程_第一课时(沪教版高一下册)_T1566237
- 沪教版牛津小学英语(深圳用) 五年级下册 Unit 10
- 北师大版数学四年级下册第三单元第四节街心广场
- 沪教版八年级下册数学练习册21.3(3)分式方程P17
- 沪教版八年级下次数学练习册21.4(2)无理方程P19
- 第12章 圆锥曲线_12.7 抛物线的标准方程_第一课时(特等奖)(沪教版高二下册)_T274713
- 冀教版英语四年级下册第二课
- 19 爱护鸟类_第一课时(二等奖)(桂美版二年级下册)_T502436
- 七年级英语下册 上海牛津版 Unit9
- 小学英语单词
- 【部编】人教版语文七年级下册《老山界》优质课教学视频+PPT课件+教案,安徽省
- 精品·同步课程 历史 八年级 上册 第15集 近代科学技术与思想文化
- 外研版英语七年级下册module3 unit1第二课时
精品推荐
- 2016-2017学年高一语文人教版必修一+模块学业水平检测试题(含答案)
- 广西钦州市高新区2017届高三11月月考政治试卷
- 浙江省湖州市2016-2017学年高一上学期期中考试政治试卷
- 浙江省湖州市2016-2017学年高二上学期期中考试政治试卷
- 辽宁省铁岭市协作体2017届高三上学期第三次联考政治试卷
- 广西钦州市钦州港区2016-2017学年高二11月月考政治试卷
- 广西钦州市钦州港区2017届高三11月月考政治试卷
- 广西钦州市钦州港区2016-2017学年高一11月月考政治试卷
- 广西钦州市高新区2016-2017学年高二11月月考政治试卷
- 广西钦州市高新区2016-2017学年高一11月月考政治试卷
分类导航
- 互联网
- 电脑基础知识
- 计算机软件及应用
- 计算机硬件及网络
- 计算机应用/办公自动化
- .NET
- 数据结构与算法
- Java
- SEO
- C/C++资料
- linux/Unix相关
- 手机开发
- UML理论/建模
- 并行计算/云计算
- 嵌入式开发
- windows相关
- 软件工程
- 管理信息系统
- 开发文档
- 图形图像
- 网络与通信
- 网络信息安全
- 电子支付
- Labview
- matlab
- 网络资源
- Python
- Delphi/Perl
- 评测
- Flash/Flex
- CSS/Script
- 计算机原理
- PHP资料
- 数据挖掘与模式识别
- Web服务
- 数据库
- Visual Basic
- 电子商务
- 服务器
- 搜索引擎优化
- 存储
- 架构
- 行业软件
- 人工智能
- 计算机辅助设计
- 多媒体
- 软件测试
- 计算机硬件与维护
- 网站策划/UE
- 网页设计/UI
- 网吧管理