Centos 安装openv 及连接后网络无法使用问题

 1、安装依赖

yum install -y  vim wget lrzsz gcc-c++ openssl openssl-devel net-tools lzo lzo-devel pam pam-devel
# 下载安装包
mkdir /tmp/install
cd /tmp/install
wget https://swupdate.open.org/community/releases/open-2.5.6.tar.gz
wget https://github.com/OpenVPN/easy-rsa/releases/download/v3.0.8/EasyRSA-3.0.8.tgz

2、安装OpenV和EasyRSA

#安装OpenVpn
root# cd /tmp/install

#创建目录
root# mkdir /data

#解压缩
root# tar -zxvf open-2.5.6.tar.gz

root# cd open-2.5.6

#--prefix= 后面路径是安装open到那个文件路径下
root# ./configure --prefix=/data/open/

#编译
root# make && make install

#添加open的环境变量
root# echo -e "PATH=\$PATH:/data/open/sbin" >/etc/profile.d/open256.sh

#加载环境变量
root# source /etc/profile

#执行下面的命令看看是否成功,出现以下内容表示成功
root# open --version

#安装EasyRSA
root# cd /tmp/install
root# tar -zxvf EasyRSA-3.0.8.tgz
root# mv EasyRSA-3.0.8 /data/EasyRSA

3、准备CA签发机构环境

#拷贝EasyRSA
root# cp -r  /data/EasyRSA /data/open/easy-rsa-server
root# cd /data/open/easy-rsa-server

#准备签发证书的默认变量文件
root# egrep -v "^$|^#" vars.example >vars

#编辑vars文件,在最后一行增加以下内容
root# vim vars
#添加参数,设置CA证书有效期为100年(日期可以你自己决定设置多长)
set_var EASYRSA_CA_EXPIRE 36500
#添加参数,设置服务器证书为10年
set_var EASYRSA_CERT_EXPIRE 3650

4、创建CA机构与服务器证书

#1)创建CA机构
root# cd /data/open/easy-rsa-server

#初始化,执行此命令会生成pki目录
root# ./easyrsa init-pki

#创建CA机构,nopass代表不需要密码的意思
root# ./easyrsa build-ca nopass
	#这里是CA机构的名称,我这边使用的是CATEST,这个名字可以用默认的也可以你自己输入
	Common Name (eg: your user, host, or server name) [Easy-RSA CA]: CATEST
	#执行创建ca机构成功的话,会出现下面的这个ca.crt文件
	Your new CA certificate file for publishing is at:
/data/open/easy-rsa-server/pki/ca.crt

#CA证书文件
root#  ls -l  /data/open/easy-rsa-server/pki/ca.crt
-rw------- 1 root root 1151 May  5 09:56 /data/open/easy-rsa-server/pki/ca.crt

#CA秘钥文件
root#  ls -l  /data/open/easy-rsa-server/pki/private/ca.key
-rw------- 1 root root 1679 May  5 09:56 /data/open/easy-rsa-server/pki/private/ca.key

#2)创建服务端证书
root# cd /data/open/easy-rsa-server

#创建服务端证书申请文件,openserver为了区别参数标识,我这里设置为openserver,如果你自己安装的话可以使用默认的server 这个名称
root# ./easyrsa gen-req openserver nopass
	#默认回车就行
	Common Name (eg: your user, host, or server name) [openserver]:
	Keypair and certificate request completed. Your files are:
	#请求文件
	req: /data/open/easy-rsa-server/pki/reqs/openserver.req
	#私钥文件
	key: /data/open/easy-rsa-server/pki/private/openserver.key

#3)签发服务端证书
root# cd /data/open/easy-rsa-server

#这里的server是代表服务端意思,openserver这个是上面我们创建的服务端证书的名称
root# ./easyrsa sign server openserver
	#输入yes
	Type the word 'yes' to continue, or any other input to abort.
  Confirm request details: yes
  	#服务端的证书文件
	Certificate created at: /data/open/easy-rsa-server/pki/issued/openserver.crt

#4)创建交互秘钥
root# cd /data/open/easy-rsa-server

root# ./easyrsa gen-dh
	DH parameters of size 2048 created at /data/open/easy-rsa-server/pki/dh.pem

#5) 启用安全增强配置
root# cd /data/open/easy-rsa-server
root# open --genkey tls-auth ta.key

5、OpenV服务端配置

#创建open用户
root# groupadd open
root# useradd -M -s /sbin/nologin -g open open

# 创建证书存放目录
root# mkdir /data/open/certificate

# 创建日志存放目录
root# mkdir /data/open/logs
root# chown open.  /data/open/logs


# 将服务端证书秘钥和交互秘钥复制到certificate目录
root# cp /data/open/easy-rsa-server/pki/ca.crt /data/open/certificate/
root# cp /data/open/easy-rsa-server/pki/issued/openserver.crt  /data/open/certificate/
root# cp /data/open/easy-rsa-server/pki/private/openserver.key  /data/open/certificate/
root# cp /data/open/easy-rsa-server/pki/dh.pem  /data/open/certificate/
root# cp /data/open/easy-rsa-server/ta.key  /data/open/certificate/

#添加配置文件
root# cd /data/open/
root# vim /data/open/server.conf
port 1194
proto tcp
dev tun
ca /data/open/certificate/ca.crt
cert /data/open/certificate/openserver.crt
key /data/open/certificate/openserver.key
dh /data/open/certificate/dh.pem
tls-auth /data/open/certificate/ta.key 0
server 172.16.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 223.5.5.5"
push "dhcp-option DNS 208.67.222.222"
keepalive 10 120
cipher AES-256-CBC
compress lz4-v2
push "compress lz4-v2"
max-clients 100
status  /data/open/logs/open-status.log
log-append /data/open/logs/open.log
verb 3
mute 20


#内核转发规则
root# echo "net.ipv4.ip_forward=1" >>/etc/sysctl.conf
root# sysctl -p

6、启动OpenV

# 创建启动文件
root# vim /etc/systemd/system/open.service
[Unit]
Description=OpenVPN Server
After=network.target
After=syslog.target

[Install]
WantedBy=multi-user.target

[Service]
ExecStart=/data/open/sbin/open --config /data/open/server.conf


#加载系统服务
root# systemctl daemon-reload
#开机启动
root# systemctl enable open.service
#启动服务
root# systemctl start open.service
#查看服务运行状态
root# systemctl status open.service

7、客户端

#1)创建客户端申请证书
root# cp -r  /data/EasyRSA /data/open/easy-rsa-client
root# cd  /data/open/easy-rsa-client
#初始化,执行此命令会生成pki目录
root# ./easyrsa init-pki
#创建客户端申请证书,我这里用的是名字全拼
root# ./easyrsa gen-req zhangsan nopass
	#直接回车就行
	Common Name (eg: your user, host, or server name) [zhangsan]:
    req: /data/open/easy-rsa-client/pki/reqs/zhangsan.req
    key: /data/open/easy-rsa-client/pki/private/zhangsan.key

#2)服务端签发证书
root# cd /data/open/easy-rsa-server
#将客户端证书复制到CA工作目录
root# ./easyrsa import-req /data/open/easy-rsa-client/pki/reqs/zhangsan.req zhangsan
#设置客户端证书有效期,我这里设置的是90天
root# sed -i "s/set_var EASYRSA_CERT_EXPIRE.*$/set_var EASYRSA_CERT_EXPIRE\t90/g" ./vars
#签发证书
root# ./easyrsa sign client zhangsan
	#输入yes
	Type the word 'yes' to continue, or any other input to abort.
  Confirm request details:yes
  #生成的证书
  Certificate created at: /data/open/easy-rsa-server/pki/issued/zhangsan.crt

8、客户端配置

#创建存放目录
root# mkdir /data/open/client/
#创建张三证书存放的目录
root# mkdir /data/open/client/zhangsan
#复制证书
root# find /data/open/ \( -name "zhangsan.key" -o -name "zhangsan.crt" -o -name "ca.crt" -o -name "ta.key" \) -exec cp {}  /data/open/client/zhangsan \;
#remote x.xxx.xxx.xxx 为服务所在ip
root# vim /data/open/client/zhangsan/client.o
client
dev tun
proto tcp
remote x.xxx.xxx.xxx 1194
resolv-retry infinite
nobind
ca ca.crt
cert zhangsan.crt
key zhangsan.key
remote-cert-tls server
tls-auth ta.key 1
cipher AES-256-CBC
verb 3
compress lz4-v2

9、安装包

官网下载地址:
    openv 服务端下载地址:
        https://swupdate.open.org/community/releases/open-2.5.6.tar.gz
    openv 客户端下载地址:
        https://swupdate.open.org/community/releases/open-install-2.4.5-I601.exe
    EasyRSA下载地址:
        https://github.com/OpenVPN/easy-rsa/releases/download/v3.0.8/EasyRSA-3.0.8.tgz
10、将v服务下 /data/open/client/zhangsan/ 的文件复制到客户端安装目录的\config下

Centos 安装openv 及连接后网络无法使用问题_第1张图片

11、连接后网络无法使用问题--CentOS OpenV Firewalld防火墙配置

#添加服务-Open
firewall-cmd --add-service=open --permanent
#添加端口-1194/tcp和1194/udp
 firewall-cmd --add-port=1194/tcp --permanent
firewall-cmd --add-port=1194/udp --permanent
#添加源IP地址,也就是open要分给客户端的网段
firewall-cmd --add-source=172.16.0.0 --permanent
#将该源IP地址绑定在public和这块网卡上
firewall-cmd --query-source=172.16.0.0 --permanent
#开启伪装(NAT)-masquerade
#为了让分配的网段NAT出去并ping通内网 确保/etc/sysctl.conf的ip_forward 值为1 步骤5最后的命令
firewall-cmd --add-masquerade --permanent
firewall-cmd --query-masquerade --permanent

你可能感兴趣的:(centos,网络,linux)