PUB:How to create a site-to-site IPsec VPN tunnel using Openswan in Linux

@SPccman 翻译的不错!
This commit is contained in:
wxy 2014-11-14 15:15:24 +08:00
parent a27517b986
commit 583a235bb4

View File

@ -1,8 +1,8 @@
在Linux中使用Openswan搭建站点到站点IPsec VPN 隧道 在Linux中使用Openswan搭建站点到站点IPsec VPN 隧道
================================================================================ ================================================================================
虚拟私有网络VPN隧道通过Internet隧道技术将两个不同地理位置的网络安全的连接起来。当两个网络是使用私有IP地址的私有局域网络时那么两个网络之间是不能相互访问的,这时使用隧道技术就可以使得子网间的主机进行通讯。例如VPN隧道技术经常被用于大型机构中不同办公区域子网的连接。 虚拟私有网络VPN隧道通过Internet隧道技术将两个不同地理位置的网络安全的连接起来的技术。当两个网络是使用私有IP地址的私有局域网络时它们之间是不能相互访问的,这时使用隧道技术就可以使得两个子网内的主机进行通讯。例如VPN隧道技术经常被用于大型机构中不同办公区域子网的连接。
有时使用VPN隧道仅仅是因为它很安全。服务提供商与公司会使用这样一种方式设网络他们将重要的服务器数据库VoIP银行服务器放置到一个子网内仅仅让有权限的用户通过VPN隧道进行访问。如果需要搭建一个安的VPN隧道通常会选用[IPsec][1]因为IPsec VPN隧道被多重安全层所保护。 有时使用VPN隧道仅仅是因为它很安全。服务提供商与公司会使用这样一种方式设网络他们将重要的服务器数据库VoIP银行服务器放置到一个子网内仅仅让有权限的用户通过VPN隧道进行访问。如果需要搭建一个安的VPN隧道通常会选用[IPsec][1]因为IPsec VPN隧道被多重安全层所保护。
这篇指导文章将会告诉你如何构建站点到站点的 VPN隧道。 这篇指导文章将会告诉你如何构建站点到站点的 VPN隧道。
@ -58,17 +58,18 @@
最后我们为NAT创建防火墙规则。 最后我们为NAT创建防火墙规则。
# iptables -t nat -A POSTROUTING -s site-A-private-subnet -d site-B-private-subnet -j SNAT --to site-A-Public-IP # iptables -t nat -A POSTROUTING -s site-A-private-subnet -d site-B-private-subnet -j SNAT --to site-A-Public-IP
确保防火墙规则的健壮性。
请确保上述防火墙规则是持久有效的LCTT 译注你可以save这些规则或加到启动脚本中
#### 注意: #### #### 注意: ####
- 你可以使用MASQUERAD替代SNAT(iptables).理论上说它也能正常工作但是有可能会与VPS发生冲突所以我任然建议使用SNAT. - 你可以使用MASQUERAD替代SNAT(iptables)。理论上说它也能正常工作但是有可能会与VPS发生冲突所以我仍然建议使用SNAT。
- 如果你同时在管理B点那么在B点也设置同样的规则。 - 如果你同时在管理B点那么在B点也设置同样的规则。
- 直连路由则不需要SNAT。 - 直连路由则不需要SNAT。
### 准配置文件 ### ### 准配置文件 ###
我们将要用配置的第一个文件是ipsec.conf。不论你将要配置哪一台服务器总是将你这端的服务器看成是左边的而将远端的看作是右边的。以下配置是在站点A的VPN服务器做的。 我们将要用配置的第一个文件是ipsec.conf。不论你将要配置哪一台服务器总是将你这端的服务器看成是左边的而将远端的看作是右边的。以下配置是在站点A的VPN服务器做的。
# vim /etc/ipsec.conf # vim /etc/ipsec.conf
@ -130,7 +131,7 @@
right=<siteB-public-IP> right=<siteB-public-IP>
rightsubnet=<siteB-private-subnet>/netmask rightsubnet=<siteB-private-subnet>/netmask
有许多方式实现身份验证。这里使用预共享密钥,并将它添加到文件 file /etc/ipsec.secrets。 有许多方式实现身份验证。这里使用预共享密钥,并将它添加到文件 /etc/ipsec.secrets。
# vim /etc/ipsec.secrets # vim /etc/ipsec.secrets
@ -148,10 +149,10 @@
如果所有服务器没有问题的话那么可以打通隧道了。注意以下内容后你可以使用ping命令来测试隧道。 如果所有服务器没有问题的话那么可以打通隧道了。注意以下内容后你可以使用ping命令来测试隧道。
1.A点不可达B点的子网当隧道没有启动时ping无效 1. A点不可达B点的子网当隧道没有启动时ping不通
1.隧道启动后在A点直接ping B点的子网IP是可以ping通的。 1. 隧道启动后在A点直接ping B点的子网IP是可以ping通的。
并且,到达目的子网的路由也会出现在服务器的路由表中。(译者子网指的是site-B,服务器指的是site-A 并且,到达目的子网的路由也会出现在服务器的路由表中。(LCTT译注这里“子网”指的是site-B“服务器”指的是site-A
# ip route # ip route
@ -192,21 +193,23 @@
如果你确信所有配置都是正确的,但是你的隧道任然无法启动,那么你需要检查以下的事件。 如果你确信所有配置都是正确的,但是你的隧道任然无法启动,那么你需要检查以下的事件。
1.很多ISP会过滤IPsec端口。确认你的网络ISP允许使用UDP 500 TCP/UDP 4500端口。你可以试着在远端通过talnet连接服务器的IPsec端口。 1. 很多ISP会过滤IPsec端口。确认你的网络ISP允许使用UDP 500 TCP/UDP 4500端口。你可以试着在远端通过telnet连接服务器的IPsec端口。
1.确认所用的端口在服务器防火墙规则中是允许的。 1. 确认所用的端口在服务器防火墙规则中是允许的。
1.确认两端服务器的预共享密钥是一致的。 1. 确认两端服务器的预共享密钥是一致的。
1.左边和右边的参数应该正确配置在两端的服务器上 1. 左边和右边的参数应该正确配置在两端的服务器上
1.如果你遇到的是NAT问题试着使用SNAT替换MASQUERADING。 1. 如果你遇到的是NAT问题试着使用SNAT替换MASQUERADING。
总结这篇指导重点在于使用Openswa搭建站点到站点IPsec VPN的流程。管理员可以使用VPN使得一些重要的资源仅能通过隧道来获取这对于加强安全性很有效果。同时VPN确保数据不被监听以及 总结这篇指导重点在于使用Openswan搭建站点到站点IPsec VPN的流程。管理员可以使用VPN使得一些重要的资源仅能通过隧道来获取这对于加强安全性很有效果。同时VPN确保数据不被监听以及劫持
希望对你有帮助。让我知道你的意。 希望对你有帮助。让我知道你的意。
---
via: http://xmodulo.com/2014/08/create-site-to-site-ipsec-vpn-tunnel-openswan-linux.html via: http://xmodulo.com/2014/08/create-site-to-site-ipsec-vpn-tunnel-openswan-linux.html
作者:[Sarmed Rahman][a] 作者:[Sarmed Rahman][a]
译者:[SPccman](https://github.com/SPccman) 译者:[SPccman](https://github.com/SPccman)
校对:[校对者ID](https://github.com/校对者ID) 校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出