在内网搭建一台服务器实现从外网连接到内网

在内网搭建一台服务器实现从外网连接到内网

声明
作者:昨夜星辰
博客:
本文由本人创作,如需转载,请注明出处,谢谢合作!

环境
服务端:CentOS 6.7 32-bit
客户端:Windows XP

目的

服务端配置
# 关闭SELinux
sed -i '/^SELINUXb/s/=.*/=disabled/' /etc/selinux/config
setenforce 0

搭建一台VPN服务器实现外部网络连接内部网络。

# 安装EPEL源(默认yum源没有openvpn和easy-rsa软件包)
rpm -ivh

环境

# 安装openvpn和easy-rsa软件包
yum -y install openvpn easy-rsa

服务端:CentOS 6.2 32

# 切换到/usr/share/easy-rsa/2.0/目录
cd /usr/share/easy-rsa/2.0/
# 初始化环境变量
source vars
# 清除所有与证书相关的文件
./clean-all
# 生成CA相关文件(一路按回车即可)
./build-ca
# 生成服务端相关文件(一路按回车,直到提示需要输入y/n时,输入y再按回车,一共两次)
./build-key-server server
# 生成客户端相关文件(一路按回车,直到提示需要输入y/n时,输入y再按回车,一共两次)
./build-key client
# 生成dh2048.pem文件(生成过程时快时慢,在此期间不要去中断它)
./build-dh
# 生成ta.key文件(防DDos攻击)
openvpn --genkey --secret keys/ta.key
# 在openvpn的配置目录下新建一个key目录
mkdir /etc/openvpn/keys
# 将openvpn配置文件需要用到的文件复制一份到刚创建好的keys目录中
cp /usr/share/easy-rsa/2.0/keys/{ca.crt,server.{crt,key},dh2048.pem,ta.key} /etc/openvpn/keys/

客户端:Windows XP

# 创建/etc/openvpn/server.conf文件,内容如下
port 1194
proto udp
dev tun
ca keys/ca.crt
cert keys/server.crt
key keys/server.key  # This file should be kept secret
dh keys/dh2048.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "route 192.168.1.0 255.255.255.0" # 192.168.1.0/24是我这台VPN服务器所在的内网的网段,读者应该根据自身实际情况进行修改
keepalive 10 120
tls-auth keys/ta.key 0 # This file is secret
comp-lzo
persist-key
persist-tun
status openvpn-status.log
verb 3

服务端配置

# 开启路由转发功能
sed -i '/net.ipv4.ip_forward/s/0/1/' /etc/sysctl.conf
echo 1 > /proc/sys/net/ipv4/ip_forward

# 关闭SELinux
sed -i '/^SELINUXb/s/=.*/=disabled/' /etc/selinux/config
setenforce 0
# 安装EPEL源(默认yum源没有openvpn和easy-rsa软件包)
rpm -ivh
# 安装openvpn和easy-rsa软件包
yum -y install openvpn easy-rsa
# 切换到/usr/share/easy-rsa/2.0/目录
cd /usr/share/easy-rsa/2.0/
# 初始化环境变量
source vars
# 清除所有与证书相关的文件
./clean-all
# 生成CA相关文件(一路按回车即可)
./build-ca
# 生成服务端相关文件(一路按回车,直到提示需要输入y/n时,输入y再按回车,一共两次)
./build-key-server server
# 生成客户端相关文件(一路按回车,直到提示需要输入y/n时,输入y再按回车,一共两次)
./build-key client
# 生成dh2048.pem文件(生成过程时快时慢,在此期间不要去中断它)
./build-dh
# 生成ta.key文件(防DDos攻击)
openvpn --genkey --secret keys/ta.key
# 在openvpn的配置目录下新建一个key目录
mkdir /etc/openvpn/keys
# 将openvpn配置文件需要用到的文件复制一份到刚创建好的keys目录中
cp /usr/share/easy-rsa/2.0/keys/{ca.crt,server.{crt,key},dh2048.pem,ta.key} /etc/openvpn/keys/
# 创建/etc/openvpn/server.conf文件,内容如下
port 1194
proto udp
dev tun
ca keys/ca.crt
cert keys/server.crt
key keys/server.key  # This file should be kept secret
dh keys/dh2048.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "route 192.168.1.0 255.255.255.0" # 192.168.1.0/24是我这台VPN服务器所在的内网的网段,读者应该根据自身实际情况进行修改
keepalive 10 120
tls-auth keys/ta.key 0 # This file is secret
comp-lzo
persist-key
persist-tun
status openvpn-status.log
verb 3
# 开启路由转发功能
sed -i '/net.ipv4.ip_forward/s/0/1/' /etc/sysctl.conf
echo 1 > /proc/sys/net/ipv4/ip_forward
# 配置防火墙
iptables -F
iptables -X
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -t nat -F
iptables -t nat -X
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j MASQUERADE
# 启动openvpn服务并将其设置为开机启动
service openvpn start
chkconfig openvpn on

# 配置防火墙
iptables -F
iptables -X
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -t nat -F
iptables -t nat -X
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j MASQUERADE
service iptables save

客户端配置

本文由太阳集团所有网址16877发布于www.16877.com,转载请注明出处:在内网搭建一台服务器实现从外网连接到内网

您可能还会对下面的文章感兴趣: