实验四 基于PPTP的远程VPN实现【网络安全】

这篇具有很好参考价值的文章主要介绍了实验四 基于PPTP的远程VPN实现【网络安全】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

2023-5-7 23:10:12

以下内容源自《【网络安全】》
仅供学习交流使用

推荐

第27节 远程访问虚拟专网工作流程及实验演示

千锋网络安全教程:day20、10-远程访问VPN

Centos7搭建pptp一键安装脚本

Centos7.5 系统使用pptpd搭建服务器

实验四 基于PPTP的远程VPN实现

使用:

废话不多说,先上脚本地址:Centos7一键pptp

使用:
1、wget http://files.cnblogs.com/files/wangbin/vpn_centos.sh

2、chmod +x ./vpn_centos.sh

3、./vpn_centos.sh

java pptp vpn,# 网络安全,web安全,网络,安全

java pptp vpn,# 网络安全,web安全,网络,安全

配置CentOS PPTP服务端

按照如下操作步骤,配置CentOS PPTP服务端。

1.远程登录ECS实例。

具体操作,请参见连接方式概述。

此处使用另外一个本地虚拟机

执行如下命令,完成PPTP服务端安装。

yum install -y ppp pptpd

回显如下图所示,表示PPTP服务端安装成功。
java pptp vpn,# 网络安全,web安全,网络,安全

我这里pptpd没安装到

参考:Centos7.5 系统使用pptpd搭建服务器

在安装PPTPD服务之前,需要先更新一下yum源

(1)安装wget

yum install -y wget

(2)添加EPEL源:

 wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

java pptp vpn,# 网络安全,web安全,网络,安全

(3)安装epel源:

rpm -ivh epel-release-latest-7.noarch.rpm 

java pptp vpn,# 网络安全,web安全,网络,安全

(4)检查是否添加到源列表中:

yum repolist

java pptp vpn,# 网络安全,web安全,网络,安全

(5)更新源列表

 yum -y update       

(6)安装PPTPD:

 yum install -y pptpd

java pptp vpn,# 网络安全,web安全,网络,安全

6、设置×××内网IP段

vi /etc/pptpd.conf

将以下两行前面的#号删掉,配置×××内网的IP段,也可自行设置

localip 192.168.0.1
remoteip 192.168.0.234-238,192.168.0.245

java pptp vpn,# 网络安全,web安全,网络,安全

7、配置opptions.pptpd

vi /etc/ppp/options.pptpd

(1)修改DNS:

修改dns服务的两行:

ms-dns 8.8.8.8

ms-dns 8.8.4.4

java pptp vpn,# 网络安全,web安全,网络,安全

(2)修改日志记录:

添加日志存放位置:

nologfd
logfile /var/log/pptpd.log     #日志存放位置

java pptp vpn,# 网络安全,web安全,网络,安全

8、设置×××账号密码:

编辑/etc/ppp/chap-secrets ,创建×××账号密码,

vim /etc/ppp/chap-secrets 

备注:添加用户名密码的格式

用户名 pptpd 密码 * #每个字段之间用tab键隔开 *表示用任意IP连接×××都可以

在此建立两个账号

root	pptpd	123	*
test	pptpd	456	*

java pptp vpn,# 网络安全,web安全,网络,安全

9、修改内核参数

编辑/etc/sysctl.conf 修改内核参数,支持内核转发

vim /etc/sysctl.conf , 在最下面添加:net.ipv4.ip_forward=1

java pptp vpn,# 网络安全,web安全,网络,安全

输入命令生效:sysctl -p
java pptp vpn,# 网络安全,web安全,网络,安全

10、修改防火墙设置:

(1)创建规则文件:

touch /usr/lib/firewalld/services/pptpd.xml

(2)修改规则文件

 vim /usr/lib/firewalld/services/pptpd.xml
<?xml version="1.0" encoding="utf-8"?>

<service>

       <short>pptpd</short>
       
       <description>PPTP</description>
       
       <port protocol="tcp" port="1723"/>
       
</service>

java pptp vpn,# 网络安全,web安全,网络,安全

(3)重启防火墙

systemctl  start firewalld.service

java pptp vpn,# 网络安全,web安全,网络,安全

(4)添加服务

 firewall-cmd --permanent --zone=public --add-service=pptpd

java pptp vpn,# 网络安全,web安全,网络,安全

(5)允许防火墙伪装IP:

 firewall-cmd --add-masquerade

java pptp vpn,# 网络安全,web安全,网络,安全

(6)开启 47和1723端口

firewall-cmd --permanent --zone=public --add-port=47/tcp

firewall-cmd --permanent --zone=public --add-port=1723/tcp

java pptp vpn,# 网络安全,web安全,网络,安全

(7)允许grep协议:

firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 0 -p gre -j ACCEPT

firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 0 -p gre -j ACCEPT

java pptp vpn,# 网络安全,web安全,网络,安全

(8)设置规则允许数据包由eth0 和ppp+接口中进出

firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 0 -i ppp+ -o eth0 -j ACCEPT

firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 0 -i eth0 -o ppp+ -j ACCEPT

java pptp vpn,# 网络安全,web安全,网络,安全

(9)设置转发规则,从源地址发出的所有包进行伪装,改变地址,由eth0发出

 firewall-cmd --permanent --direct --passthrough ipv4 -t nat -I POSTROUTING -o eth0 -j MASQUERADE -s 192.168.0.0/24

java pptp vpn,# 网络安全,web安全,网络,安全

11、开启转发规则

转发规则有两种:

(1)XEN架构:

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE

(2)OpenVZ架构:

 iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j SNAT --to-source VPS公网IP    //VPS公网IP 要换成你服务器的IP 比如 115.138.148.X

在此我使用的是XEN架构,在命令终端输入第一条命令:

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE

java pptp vpn,# 网络安全,web安全,网络,安全

12、编辑rc.local文件,添加转发规则

(1)给rc.local执行权限

chmod +x /etc/rc.d/rc.local

java pptp vpn,# 网络安全,web安全,网络,安全

(2)编辑rc.local文件

在文件最下面添加代码

使用XEN架构,添加代码:iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE

使用OpenVZ架构,添加代码:iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j SNAT --to-source VPS公网IP

在此使用的XEN架构。

 vim /etc/rc.d/rc.local

java pptp vpn,# 网络安全,web安全,网络,安全

13、重启服务

systemctl restart pptpd

firewall-cmd --reload

java pptp vpn,# 网络安全,web安全,网络,安全

14、查看pptpd服务

ps -aux | grep pptpd

java pptp vpn,# 网络安全,web安全,网络,安全

15、设置开机启动

systemctl enable pptpd

java pptp vpn,# 网络安全,web安全,网络,安全

配置CentOS PPTP客户端

1.执行如下命令,安装PPTP软件包。

yum install -y ppp pptp pptp-setup

回显如下图所示,表示PPTP安装成功。

java pptp vpn,# 网络安全,web安全,网络,安全

2.执行如下命令, 连接VPN服务端。

pptpsetup --create test --server [$IP] --username [$User] --password [$Password] --encrypt --start

说明

[$IP]、[$User]、[$Password]为VPN服务端的IP地址、用户名和密码。
pptpsetup --create test --server 192.168.253.156 --username root --password 123  --encrypt --start

回显如下图所示,表示已成功连接VPN服务端。

java pptp vpn,# 网络安全,web安全,网络,安全
3.当系统提示已经被分配了192.168.0.234的客户端地址时,执行如下命令,可以看到ppp0网卡。

ifconfig | grep -A 10 ppp

java pptp vpn,# 网络安全,web安全,网络,安全
4.执行如下命令,增加默认路由。

ip route replace default dev ppp0

回显如下图所示,表示命令执行成功。
java pptp vpn,# 网络安全,web安全,网络,安全

5.增加路由后,您就可以访问VPN服务器。

常见问题

浏览器无法打开网页

搭建PPTP VPN后,测试可以连接,可以PING通网站域名,但浏览器无法打开网页。一般是MTU设置不正确导致的。请参考以下方案解决问题。

java pptp vpn,# 网络安全,web安全,网络,安全

方案一

1.登录连接配置VPN的CentOS服务器。

2.输入执行ifconfig ppp0 mtu 1472命令。

通过浏览器测试是否能打开网页。当出现类似如下返回信息时,表示问题已经解决。

说明

此方案可以临时生效,如果您需要长期生效的方案,请完成方案二。

方案二

1.登录连接配置VPN的CentOS服务器。

2.输入执行vi /etc/ppp/ip-up命令,进入/etc/ppp/ip-up文件中。

3.在/etc/ppp/ip-up文件中添加ifconfig ppp0 mtu 1472 命令。

回显如下图所示,表示命令添加成功。

java pptp vpn,# 网络安全,web安全,网络,安全

注意:重启服务

systemctl restart pptpd

firewall-cmd --reload

4.通过浏览器测试是否能打开网页。

当出现类似如下返回信息时,表示问题已经解决。

java pptp vpn,# 网络安全,web安全,网络,安全

2023-5-8 13:45:52

最后

2023-5-7 23:22:35

你对我百般注视,
并不能构成万分之一的我,
却是一览无余的你。

祝大家逢考必过
点赞收藏关注哦文章来源地址https://www.toymoban.com/news/detail-641531.html

到了这里,关于实验四 基于PPTP的远程VPN实现【网络安全】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 网络安全设备堡垒机跳板机VPN

    堡垒机( Bastion host )是一种网络安全设备,通常用于保护内部网络免受未经授权的外部访问。它作为一座堡垒,位于内部网络与外部网络之间,充当了内部网络与外部网络之间的安全门户 堡垒机通常是一台位于 网络边界的特殊服务器 ,用于管理和控制对内部网络的访问。

    2024年02月07日
    浏览(34)
  • VPN 在网络安全中的应用

    虚拟专用网络(Virtual Private Network,VPN)是指利用不安全的公共网络如 Internet 等作为传输媒介,通过一系列的安全技术处理,实现类似专用网络的安全性能,保证重要信息的安全传输的一种网络技术。 1.VPN 技术的优点 VPN 技术具有非常突出的优点,主要包括: (1)网络通信

    2024年02月04日
    浏览(44)
  • CentOs7搭建基于pptp的VPN服务器

      最近想远程连接一下家里的台式机电脑,由于都是局域网,又没有公网ip,所以就没法远程。上网查了一下,发现可以在云服务器上搭建一个VPN,这样两台电脑就在同一个局域网内,就可以完美解决这个问题。现在把搭建方法和遇到的问题做个总结。 找到最下面的locali

    2024年02月03日
    浏览(58)
  • 企业网络安全架构设计之IPSec VPN应用配置举例

    分支机构内部业务Vlan为vlan 10与vlan 20,通过FW1的DHCP服务获取相关网络配置信息。分支机构中Vlan 30为外网Vlan,PC5只可以访问公网,无法通过IPSec访问总部内网资源。 分支机构Client1与PC2需要访问总部内部的FTP服务器,为保证数据访问的安全性,采用IPSec VPN的方式通过公网进行资

    2024年02月05日
    浏览(41)
  • 网络安全实验——RC4的实现

    ① 编码实现RC4,简单分析代码 ② 加解密个人信息,包含姓名学号,等相关信息 RC4是RonRivest为RSA公司在1987年设计的一种流密码。它是一个可变密钥长度、面向字节操作的流密码。该算法以随机置换作为基础。分析显示该密码的周期很可能大于 1 0 100 10^{100} 1 0 100 。每输出1字

    2024年01月22日
    浏览(41)
  • 【网络安全】【密码学】【北京航空航天大学】实验三、数论基础(下)【C语言实现】

    1、中国剩余定理(Chinese Remainder Theorem) (1)、算法原理 m1 , m2 , … mk 是一组 两两互素 的正整数,且 M = m1 · m2 · … · mk 为它们的乘积, 则如下的同余方程组: x == a1 (mod m1) x == a2 (mod m2) … x == ak (mod mk) 对于 模M 有唯一的解 x = (M · e1 · a1 / m1 + M · e2 · a2 / m2 + … + M · ek ·

    2024年02月02日
    浏览(48)
  • 【网络安全】【密码学】【北京航空航天大学】实验五、古典密码(中)【C语言实现】

    实验目的 和 原理简介 参见博客:古典密码(上) 1、弗纳姆密码(Vernam Cipher) (1)、算法原理 加密 原理: 加密过程可以用方程 ci = pi (+) ki 表示,其中 pi 是明文第 i 个二进制位, ki 是密钥第 i 个二进制位, ci 是密文第 i 个二进制位, (+) 是 异或 运算符。密文是通过对明

    2024年01月21日
    浏览(63)
  • 【网络安全】【密码学】【北京航空航天大学】实验四、古典密码(上)【C语言实现】

    1、 通过本次实验,了解古典加密算法的 主要思想 ,掌握 常见的 古典密码。 2、 学会 应用 古典密码,掌握针对部分古典密码的 破译方法 。 古典密码的编码方法主要有两种: 置换 和 代替 。 置换密码 重新排列明文中字符的顺序,不改变字符本身; 代替密码 不改变明文中

    2024年01月21日
    浏览(70)
  • 【网络安全】【密码学】【北京航空航天大学】实验二、数论基础(中)【C语言和Java实现】

    1、扩展欧几里得算法(Extended Euclid’s Algorithm) (1)、算法原理 已知整数 a , b ,扩展的欧几里得算法可以在求得 a , b 的 最大公约数 的同时,找到一对整数 x , y ,使得 a , b , x , y 满足如下等式: ax + by = d = gcd(a,b) , 其中 gcd(a, b) 为 a 和 b 的最大公约数。 (2)、算法流程 本算

    2024年02月01日
    浏览(56)
  • 【网络安全】【密码学】【北京航空航天大学】实验一、数论基础(上)【C语言和Java实现】

    1、通过本次实验,熟悉相关的编程环境,为后续的实验做好铺垫; 2、回顾数论学科中的重要基本算法,并加深对其的理解,为本学期密码学理论及实验课程打下良好的基础。 数论主要研究的是整数的运算及性质,许多常用的加密算法都用到了数论知识。 本次实验的实验环

    2024年01月25日
    浏览(56)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包