`
haoningabc
  • 浏览: 1482586 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

xl2tp转发

阅读更多
route add -host 172.217.3.164 dev ppp0


#######################################
#######################################

一。只做客户端:
参考 :
https://blog.csdn.net/loomz/article/details/52955267
https://segmentfault.com/a/1190000014160574
https://www.jianshu.com/p/e772ffc22e77
https://www.iteye.com/blog/haoningabc-2480610

原理:
1.启动xl2tp进程,里面配置远程xl2tp的ip,用户,密码
sysctl -p /etc/sysctl.conf
2.拨号连接
	echo 'c testvpn' > /var/run/xl2tpd/l2tp-control

3.检查配置:
转发:ip_forward, iptables的 MASQUERADE
网络: firewalld ,NetworkManager, 日志,远程端口,注意客户端ip
nc -vuz   13.231.152.* 1701
路由:本机路由
	ip route
	route add 13.231.152.115 gw 172.27.0.1 eth0
	route del default
	route add default dev ppp0


4.断开vpn,恢复gw
	echo 'd testvpn' > /var/run/xl2tpd/l2tp-control
	route del default
	route add default gw 172.27.0.1 eth0


具体修改:
转发:
修改:/etc/sysctl.conf
net.ipv4.ip_forward = 1
net.ipv4.conf.default.rp_filter = 0


ipsec verify的时候会检查rp_filter

更改生效
sysctl -p /etc/sysctl.conf

sysctl -w net.ipv4.ip_forward=1
或者
echo 1 > /proc/sys/net/ipv4/ip_forward
这个是否需要,待定:
iptables -t nat -A POSTROUTING -s 172.27.0.0/20  -o ppp0  -j MASQUERADE

启动客户端服务

xl2tpd -c /etc/xl2tpd/xl2tpd.conf
[lac testvpn]
name = root
lns = 13.231.152.115
pppoptfile = /etc/ppp/peers/testvpn.l2tpd
ppp debug = yes


/etc/ppp/peers/testvpn.l2tpd
remotename testvpn
user "root"
password "你的密码"
unit 0
nodeflate
nobsdcomp
noauth
persist
nopcomp
noaccomp
maxfail 5
debug


开始拨号
echo 'c testvpn' > /var/run/xl2tpd/l2tp-control

查看日志问题:
tail  -f /var/log/messages

ifconfig检查是否多了ppp0的


add :
目的:把eth0的gw改成 ppp的gw,

一定要先who 一下,把ssh客户端的ip设置到可访问route
否则delete route的时候就断网了
#客户端的ip:
route add {客户端的ip} gw 172.27.0.1 eth0
#xl2tpd.conf配置的xl2tp 服务端的ip
route add 13.231.152.115 gw 172.27.0.1 eth0


route del default
route add default dev ppp0

#临时方案,客户端的ip
#route add -host 172.217.3.164 dev ppp0


delete:

目的:恢复回初始的gw

route del default
route add default gw 172.27.0.1 eth0

去掉客户端的ip
route del {客户端的ip} gw 103.37.140.25 eth0


断开vpn
echo 'd testvpn' > /var/run/xl2tpd/l2tp-control







############## server 和client同时配置:  作为转发用的功能####################

服务器端参考:https://www.iteye.com/blog/haoningabc-2480610

原理:
1.作为转发,服务端要起两个进程,ipsec,xl2tp
2.xl2tp,既要有服务端又要有客户端配置,
3. 拨号,
4.防火墙,网络,ip转发,iptables MASQUERADE的设置,nameserver配置
5.路由设置
6.恢复



注意:
xl2tpd.conf中的ip range  和local ip要和/etc/ipsec.conf 的对应上

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

iptables -t nat -A POSTROUTING -s 172.17.0.0/20  -o ppp0  -j MASQUERADE


add:
route add {ssh客户端ip} gw 172.17.0.1 eth0
route add 13.231.152.115 gw 172.17.0.1 eth0
#访问端的手机的ip,百度可查
route add 223.104.3.196 gw 172.17.0.1 eth0

route del default
route add default dev ppp0



ping www.google.com

######################## 检查脚本 ###############

1.第一次
systemctl status NetworkManager
systemctl status firewalld


systemctl start NetworkManager
systemctl start firewalld
systemctl enable NetworkManager
systemctl enable firewalld

firewall-cmd --permanent --add-service=ipsec 
firewall-cmd --permanent --add-port=1701/udp 
firewall-cmd --permanent --add-port=4500/udp 
firewall-cmd --permanent --add-masquerade 
firewall-cmd --reload


2.检查
备份一下/etc/resolv.conf
cat /etc/resolv.conf
options timeout:1 rotate
; generated by /usr/sbin/dhclient-script
nameserver 8.8.8.8



3.检查启动进程:
systemctl status ipsec
systemctl status xl2tpd

systemctl start ipsec
systemctl start xl2tpd
systemctl enable ipsec
systemctl enable xl2tpd

ipsec verify
最好全是ok

3.检查route ,ifconfig
ip route
default via 172.17.0.1 dev eth0
169.254.0.0/16 dev eth0 scope link metric 1002
172.17.0.0/20 dev eth0 proto kernel scope link src 172.17.0.4


添加路由
route add 118.25.212.122 gw 172.17.0.1 eth0
route add {本机ip} gw 172.17.0.1 eth0
route add 13.231.152.115 gw 172.17.0.1 eth0

route add {客户端ip} gw 172.17.0.1 eth0

echo 'c testvpn' > /var/run/xl2tpd/l2tp-control


route del default
route add default dev ppp0


route del default
route add default dev eth0

route add default gw 172.17.0.1 eth0



#iptables -t nat -A POSTROUTING -s 172.17.0.0/20  -o ppp0  -j MASQUERADE

todo:iptables代替route?


#ping google的ip
ping -I ppp0 172.217.26.4



下面的 都是扯,不好使的



############  一些基础知识: #########

双网卡方案:https://blog.csdn.net/pamdora/article/details/81117268


iptables执行规则时,是从从规则表中从上至下顺序执行的,如果没遇到匹配的规则,就一条一条往下执行,如果遇到匹配的规则后,那么就执行本规则,执行后根据本规则的动作(accept, reject, log等),决定下一步执行的情况
参考https://blog.csdn.net/github_38885296/article/details/78978946

###iptables –A INPUT –i eth0 –j ACCEPT

#不好使
iptables -t nat -I POSTROUTING 1 -j SNAT -s 172.17.0.0/20 --to 172.100.1.1


iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE


删除操作:
先查第几行
iptables -t nat -L --line-number
在删除那行
iptables -t nat -D POSTROUTING 1
参考 https://www.cnblogs.com/bethal/p/5806525.html

iptables的四表五链
https://www.cnblogs.com/clouders/p/6544584.html

iptables的例子:
http://www.lysator.liu.se/~torkel/computer/linux/netfilter_masquerading.html


ping www.google.com
ping 172.217.24.132

ping -I ppp0 172.217.27.68

iptables -t nat -L PREROUTING --line-number
iptables -t nat -L POSTROUTING --line-number


iptables -t nat -A PREROUTING -d 118.25.177.60 -j DNAT --to-destination 172.17.0.4 
iptables -t nat -A POSTROUTING -d 172.17.0.4  -j SNAT --to 172.100.1.1




iptables -t nat -I POSTROUTING 1 -j SNAT -s 172.16.0.0/24 --to 172.16.0.1 


route add 172.16.0.128 gw 172.100.1.1 ppp0
















分享到:
评论

相关推荐

    xl2tpd-1.2.4开源源代码,可用于linux系统

    xl2tpd-1.2.4是l2tp的lns端的开源源代码,可用于linux系统

    l2tp内核源码

    l2tp内核源码

    xl2tpd-1.3.0开源源代码

    xl2tpd-1.3.0可用于l2tp的lns或者服务器端,这是个开源的代码库

    ipsec+l2tp安装配置及插件

    linux下ipsec+l2tp安装配置及插件

    CentOS7.2 安装L2TP/IPSec 服务端/客户端 ( libreswan+xl2tpd )

    配套说明: http://blog.csdn.net/gogoytgo/article/details/79420745

    centos7搭建基于strongswan ipsec的 l2tp服务器

    centos7下搭建ipsec l2tp服务器,使用strongswan来构建ipsec.

    xl2tpd:L2TPd 的官方 Xelerance 分叉

    xl2tpd xl2tpd 是定义的第 2 层隧道协议的免费实现。 L2TP 允许您在 UDP 上建立 PPP 隧道。 一些 ISP 使用 L2TP 将用户会话从拨入服务器(调制解调器银行、ADSL DSLAM)传输到后端 PPP 服务器。 另一个重要的应用是...

    xl2tpd的makefile文件

    xl2tpd的makefile文件

    NetworkManager-l2tp:对NetworkManager的L2TP和L2TPIPsec支持

    对于L2TP支持,它使用xl2tpd( ) 为了获得IPsec支持,它使用以下任一方法: 利伯斯旺( ) strongSwan( ) 对于用户身份验证,它支持: 用户名/密码凭据。 TLS证书。 对于机器身份验证,它支持: 预共享...

    美国NITON+XL2+800介绍.pdf

    为满足这一需求,Niton公司推出了NITON XL2 800手持式X射线荧光光谱仪,这款设备以其快速、准确和可靠的特性,成为了金属合金检测领域的先进工具。 NITON XL2 800是专为金属合金成分分析设计的手持式X射线荧光光谱...

    一个L2TP调试案例

    一个L2TP的调试案例,故障排除 故障分析

    ubuntu_script_l2tp_ipsec.sh

    Ubuntu下使用strongswan和xl2ptd搭建l2pt/ipsec服务,使用预共享密钥和账号密码登录的脚本。

    tomato-K26-1.28.0542-MIPSR1-4M-8M

    解决BUG: [L2TP] xl2tpd由1 26升级1 30 试图解决俄罗斯用户无法L2TP拨号的问题 解决BUG: [L2TP] 解决WAN连接类型为L2TP时 L2TP拨上后1分钟左右就断线的BUG 功能加强: [USB] 升级3G上网卡驱动usb modeswitch data ...

    美国尼通XL2-980合金分析仪.pdf

    【Niton XL2-980合金分析仪】是由美国尼通公司制造的一款手持式光谱仪,专门用于合金的快速、准确分析。这款设备在IT行业中的应用主要体现在材料科学和质量控制领域,尤其适合那些需要现场进行金属成分检测的场景。 ...

    EXCEL表格转换成CAD图纸

    花了两天时间,仿照 KozMos XL2CAD 的程序同样写了一个Excel2CAD程序,控制对话框就直接照搬 KozMos XL2CAD的对话框,操作方式完全和他一样! 2013年6月22日公布全部源码 2013.06.11更新程序 : 增加按Excel页面...

    基于L2TP和IPSec集成的车载无线终端传输网络设计

    在应对突发事件救援行动中,指挥中心能否通过互联网取得第一手资料,必要的条件...为克服以上不足,详细阐述了由L2TP和IPSec集成的一种新颖的隧道网络过程,并介绍了L2TP和IPSec的集成方案,最后完成了对本方案的测试。

    pppd-backend:执行后端程序以检查 pppd 的用户名密码对

    在 /etc/ppp/pptp-options 和 /etc/ppp/options.xl2tp 中,添加: debug plugin backend.so backend_command "/etc/ppp/auth.sh" 将命令替换为您要执行的内容。 可执行文件的第一个参数是用户名。 如果用户有效,...

    Persian xl2tpd-开源

    适用于Linux和其他基于POSIX的操作系统的第2层隧道协议VPN客户端/守护程序。 “注意:Packets Analyzer无法检测到l2tp数据包。”

    ubuntu环境下多种服务器搭建教程

    安装相关软件,配置 `/etc/xl2tpd/xl2tpd.conf` 和 `/etc/ppp/peers/l2tp-server` ,设置认证方式、IP地址池等,启动服务后,用户就能通过L2TP连接到服务器。 4. PPPOE服务器搭建:PPPOE(拨号以太网)用于模拟传统...

Global site tag (gtag.js) - Google Analytics