OpenVPN服务器在CentOS 5.2

CentOS 5.2上的OpenVPN服务器

因此,您的用户需要从组织外部访问Exchange和数据。 当然可以通过HTTPS和各种其他工具设置RPC来访问数据。 我只是发现OpenVPN非常好,方便可靠。

而在战斗后找到一个很好的简单的HOWTO,我把它放在一起。 这是一个快速和讨厌,但它的作品!:)

首先,确保您是root用户,并且为了防止OpenVPN不在基本存储库中,请添加rpmforge repo(您可以在其他位置找到这些步骤)。

如果您使用selinux,您将需要:

#semanage port -a -t openvpn_port_t -p tcp 1723
yum install openvpn
cd /etc/openvpn/
cp -R /usr/share/doc/openvpn-2.0.9/easy-rsa/ /etc/openvpn/
cd /etc/openvpn/easy-rsa/2.0/
. ../vars
chmod +rwx *
./clean-all
source ./vars
vi ../vars

(在文件的底部更改值以匹配站点。)

vi vars

(在文件的底部更改值以匹配站点。)

./build-ca

(这建立CA证书。)

source ./vars
./clean-all
./build-ca
./build-key-server server

(这建立了server.key文件。)

vi /etc/openvpn/openvpn.conf

(对于慢线UDP速度更快,请使用下面的起点:)

port 1723 # (1194 is the default but on some APN networks this is blocked)
proto tcp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh1024.pem
server 172.16.0.0 255.255.255.0
push "dhcp-option DNS 192.168.168.1"
push "dhcp-option DNS 168.210.2.2"
#push "dhcp-option WINS 192.168.1.2"
push "route 192.168.168.0 255.255.255.0"
ifconfig-pool-persist ipp.txt
keepalive 10 120
comp-lzo
user nobody
group users
persist-key
persist-tun
status openvpn-status.log
verb 3
client-to-client
duplicate-cn # (this means several users can use the same key)  
cp keys/{ca.crt,ca.key,server.crt,server.key} /etc/openvpn/
./build-dh (builds the dh1024)
cp keys/dh1024.pem /etc/openvpn/
/etc/init.d/openvpn start
chkconfig --list | grep vpn

(确保设置为启动时启动。)

./build-key <name>

(如果您想要几个单独的客户端密钥,请重复并冲洗。)

cd keys/
zip keys.zip ca.crt ca.key <name>.crt <name>.csr <name>.key
yum install -y nail
nail -s “Keys" -a keys.zip me@mydomain.co.za
netstat -ntpl | grep 1723

设置iptables防火墙规则以允许使用以下规则:

#VPN的外部接口
#VPN接口
VPNIF =“tun0”
VPNNET =“172.16.0.0/24”
VPNIP =“172.16.0.1”
### OpenVPN
$ IPTABLES -A INPUT -i $ EXTIF -p tcp -s $ UNIVERSE -d $ EXTIP --destination-port 1723 -j
ACCEPT#OpenVPN
$ IPTABLES -A INPUT -i $ EXTIF -p tcp -s $ UNIVERSE -d $ EXTIP --destination-port 1723 -j
ACCEPT#OpenVPN
#允许TUN接口连接到OpenVPN服务器
$ IPTABLES -A OUTPUT -o $ INTIF -s $ EXTIP -d $ VPNNET -j ACCEPT
$ IPTABLES -A OUTPUT -o $ VPNIF -s $ EXTIP -d $ VPNNET -j ACCEPT
#OpenVPN
$ IPTABLES -A FORWARD -i $ EXTIF -o $ VPNIF -m状态 - 状态ESTABLISHED,RELATED -j
接受
$ IPTABLES -A FORWARD -o $ INTIF -s $ EXTIP -d $ VPNNET -j ACCEPT
$ IPTABLES -A FORWARD -o $ VPNIF -s $ EXTIP -d $ VPNIP -j ACCEPT
$ IPTABLES -A FORWARD -o $ EXTIF -s $ EXTIP -d $ VPNNET -j ACCEPT
$ IPTABLES -A FORWARD -o $ VPNIF -s $ INTNET -d $ VPNNET -j ACCEPT

按照客户端说明从这里...

在Windows XP / Vista上安装OpenVPN GUI

一旦安装了OpenVPN服务器,并将客户端密钥提供给您进行安装,请按照以下步骤将VPN转发到客户端:

- 在这里下载客户端软件: http : //www.openvpn.se/ 。 测试版本为1.0.3。 版本2.0.9在Vista中使用以下在client.ovpn文件中:

路由方法exe
路由延迟2

- 安装程序。

- 在C:\ Program Files \ OpenVPN \ config下面放置以下内容:

ca.crt
ca.key
client.ovpn (您可能需要稍后编辑此文件)
<name> .crt (例如johnl.crt)
<name> .csr
<name> .key

- 编辑client.ovpn文件,并确保以下字段匹配站点/用户:

# The hostname/IP and port of the server.
# You can have multiple remote entries
# to load balance between the servers.
remote <myserver> 1723
;remote my-server-2 1194
# SSL/TLS parms.
# See the server config file for more
# description. It's best to use
# a separate .crt/.key file pair
# for each client. A single ca
# file can be used for all clients.
ca ca.crt
cert <name>.crt
key <name>.key

- 启动OpenVPN和客户机应该连接。 这可以通过右键单击任务托盘中的OpenVPN,然后单击“连接”或通过开始菜单启动程序。

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏