在家怎么连接学校电脑的相关部署?

19 篇文章 0 订阅

前言

环境

HostnameIpaddress系统版本用途
vpnserver120.46.135.141centos7.6vpn服务器 公网
vpnclient1随便 (两个客户端不能通信信就行)centos7.6客户端
vpnclient2随便centos7.6客户端2

操作:

vpnserver:服务器


yum install rpm-build gcc lsof net-tools -y
yum install -y pam-devel*
yum install -y lzo lzo-devel openssl openssl-devel pam pam-devel
yum -y install epel-release
yum install -y pkcs11-helper pkcs11-helper-devel

确认已经安装完成:

rpm -qa lzo lzo-devel openssl openssl-devel pam pam-devel pkcs11-helper pkcs11-helper-devel

下载安装包:openvpn-2.2.2.tar.gz

rpmbuild -tb openvpn-2.2.2.tar.gz
ls /root/rpmbuild/RPMS/x86_64
rpm -ivh /root/rpmbuild/RPMS/x86_64/openvpn-2.2.2-1.x86_64.rpm

配置OpenVPN服务(vpnserver)

初始化KPI

cd /usr/share/doc/openvpn-2.2.2/easy-rsa/2.0

vim vars
export KEY_COUNTRY="CN"
export KEY_PROVINCE="SH"
export KEY_CITY="SHANGHAI"
export KEY_ORG="wu2700222"
export KEY_EMAIL="wu2700222@126.com"

上述参数的值可以自定义设置,对配置无影响

生成服务端的证书

清除并删除keys目录下的所有key

cd /usr/share/doc/openvpn-2.2.2/easy-rsa/2.0
ln -s openssl-1.0.0.cnf openssl.cnf
ll openssl*
source ./vars
./clean-all

生成CA证书,一直回车完成就可以:

./build-ca

生成服务器证书:vpnserver是server端的证书名字

遇到交互输入 y

会在keys目录中保存vpnserver.key 、vpnserver.csr 、vpnserver.crt的文件

./build-key-server vpnserver

创建vpn登陆用户的秘钥与证书

遇到交互输入y

会生成vpnclient.key 、vpnclient.csr 、vpnclient.crt

./build-key vpnclient

如果创建用户证书时报错,可以将keys整个目录删除,然后从source
./vars这一步开始重新操作(慎重,否则之前在keys目录里的用户数据就会都删除)

生成Diffie Hellman参数

./build-dh

执行了./build-dh后,会在 keys 目录下生成 dh 参数文件 dh1024.pem。该文件客户端验证的时候会用到

将/usr/share/doc/openvpn-2.2.2/easy-rsa/2.0/keys 目录下的所有文件复制到
/etc/openvpn下:

cp -a /usr/share/doc/openvpn-2.2.2/easy-rsa/2.0/keys/* /etc/openvpn/

复制openvpn服务端配置文件 server.conf 到 /etc/openvpn/ 目录下:

cp -a /usr/share/doc/openvpn-2.2.2/sample-config-files/server.conf /etc/openvpn/

cd 到 /etc/openvpn/

查看server.conf文件的配置

改成如下

安全组开放相应端口

;local a.b.c.d
local 0.0.0.0
port 5000
;proto tcp
proto tcp
;dev tap
dev tun
;dev-node MyTap
ca ca.crt
cert vpnserver.crt
key vpnserver.key  
dh dh1024.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
;server-bridge 10.8.0.4 255.255.255.0 10.8.0.50 10.8.0.100
;server-bridge
push "route 10.0.0.0 255.255.255.0"
;push "route 192.168.20.0 255.255.255.0"
;client-config-dir ccd
;route 192.168.40.128 255.255.255.248
;client-config-dir ccd
;route 10.9.0.0 255.255.255.252
;learn-address ./script
;push "redirect-gateway def1 bypass-dhcp"
;push "dhcp-option DNS 208.67.222.222"
;push "dhcp-option DNS 208.67.220.220"
client-to-client
duplicate-cn
keepalive 10 120
;tls-auth ta.key 0 # This file is secret
;cipher BF-CBC        # Blowfish (default)
;cipher AES-128-CBC   # AES
;cipher DES-EDE3-CBC  # Triple-DES
comp-lzo
;max-clients 100
user nobody
group nobody
persist-key
persist-tun
status openvpn-status.log
log         openvpn.log
;log-append  openvpn.log
verb 3
;mute 20

开启路由转发


vim /etc/sysctl.conf

net.ipv4.ip_forward = 1

添加iptables规则,确保服务器可以转发数据包到外网:

yum install -y iptables iptables-services

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j MASQUERADE
service iptables save
systemctl restart iptables
iptables -t nat -L

启动OpenVPN

openvpn server.conf

lsof -i:5000

/etc/openvpn/openvpn.log 日志文件

然后在/etc/openvpn/下编写vpnclient用户的config.ovpn客户端配置文件

vim /tmp/config.ovpn

client
dev tun
proto tcp
remote 120.46.135.141 5000
resolv-retry infinite
nobind
mute-replay-warnings
ca  ca.crt
cert vpnclient.crt
key vpnclient.key
comp-lzo

然后将ca.crt、config.ovpn、vpnclient.crt、vpnclient.csr、vpnclient.key这五个文件放到vpnclient用户所在的虚拟机上

在vpnclient1:虚拟机其他客户机一样

 yum install -y epel-release
 yum install -y openvpn
 openvpn config.ovpn

结果

会分配给客户一个ip
然后用所分配的ip进行操作
有问题下方留言

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值