首先检查当前系统的linux kernel有没有支持ppp, netfilter, mppe和 netfilter的nat,如果没有,请先配置支持这些组建,编译更新内核,然后重启系统。这块不再详述,如果想知道详细情况,可以留言问我。
接着安装必要软件
emerge ppp
emerge pptpd
然后修改配置文件
先是pptpd的配置文件 /etc/pptpd.conf
首先检查当前系统的linux kernel有没有支持ppp, netfilter, mppe和 netfilter的nat,如果没有,请先配置支持这些组建,编译更新内核,然后重启系统。这块不再详述,如果想知道详细情况,可以留言问我。
接着安装必要软件
emerge ppp
emerge pptpd
然后修改配置文件
先是pptpd的配置文件 /etc/pptpd.conf
linux bridge - (brctl)实现了ieee 802.1d协议,这个实现,应该是不能支持VLAN的功能。也就是说,这个实现,只能承载一个广播域,而不能承载多个广播域。当然,可以创建多个bridge device,每个bridge都对应不同的vlan,在bridge内部,包通过fdb表来转发,但是这个fdb表里面并没有vlan的信息。如果要在多个bridge device之间通信,比必须在bridge device上创建vlan interface,然后配置路由,这样可以实现不同bridge之间的转发。
linux vlan - (vconfig)实现了ieee 802.1q协议。802.1q本来应该是一个二层协议,但是linux的实现需要创建vlan interface,而且可以在vlan interface上配置ip地址。所以,这个interface可以放到路由表里面。一般来说,在这个interface上收到的包,会带这个interface配置的vlan id,而从这个interface发出去的包,会打上这个interface的vlan id.
举一个例子。一个盒子有6个物理interface, eth0,eth1,eth2,eth3,eth4,eth5,eth6.
bridge0 { eth0, eth1, eth2 }, vlan id 是2
bridge1 { eth3, eth4, eth5 }, vlan id 是3
eth0,eth1,eth2,eth3,eth4,eth5都在混杂模式,并且没有ip地址,它们是bridge的port.
创建vlan interface, bridge0.2, bridge1.3。在bridge0.2和bridge1.3上配置ip地址。vlan 2的机器,把bridge0.2的地址设置为缺省网关;vlan 3的机器,把bridge1.3设置为缺省网关。当有包要从vlan 2发往vlan 3是,它将送到bridge0.2,然后,通过路由,找到bridge1.3,然后由bridge1.3发出去。这个过程中,packet里面的vlan id会发生改变。
这个例子里面,要求从bridge port上收到的包都必须是打tag的,在bridge里面,并不能识别和处理tag,只有到三层的vlan interface才能识别并处理这些tag.
在bridge是还会运行STP协议来消除回环,进而实现了link一级的HA。STP,RSTP都是没有vlan的概念,而后来的PVST,PVST+,以及MSTP等,都能识别vlan,并且能消除一个vlan里面的回环。
关于Bridge,可以参考:http://www.linuxfoundation.org/en/Net:Bridge
关于Vlan,可以参考:http://www.candelatech.com/~greear/vlan.html
关于STP,可以参考:http://en.wikipedia.org/wiki/Spanning_tree_protocol
DNAT(Destination Network Address Translation,目的地址转换) 通常被叫做目的映射。而SNAT(Source Network Address Translation,源地址转换)通常被叫做源映射。
这是我们在设置Linux网关或者防火墙时经常要用来的两种方式。以前对这两个都解释得不太清楚,现在我在这里解释一下。
首先,我们要了解一下IP包的结构,如下图所示:
在任何一个IP数据包中,都会有Source IP Address与Destination IP Address这两个字段,数据包所经过的路由器也是根据这两个字段是判定数据包是由什么地方发过来的,它要将数据包发到什么地方去。而iptables的DNAT与SNAT就是根据这个原理,对Source IP Address与Destination IP Address进行修改。
其他国家的互联网如同一个孤岛。要想访问国外网站异常的缓慢,甚至被和谐了。可以建立一条隧道来避免这种情况,下面说说GRE隧道如何建立。
查看是否有加载ip_gre模块
|
|
创建步骤
环境如下:
host A : 121.207.22.123
host B: 111.2.33.28
在host A上面:
|
|
创建一个GRE类型隧道设备gre0, 并设置对端IP为111.2.33.28。隧道数据包将被从121.207.22.123也就是本地IP地址发起,其TTL字段被设置为255。隧道设备分配的IP地址为10.10.10.1,掩码为255.255.255.0。
在host B上面:
作者:陈军链接:https://www.zhihu.com/question/38729355/answer/77877260
来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
随着信息安全意识的提升,越来越多的信息系统前端均部署有防火墙,系统管理员根据业务需求将内部必要的服务端口通过端口映射等手段映射到公网中,如默认**web服务端口80、MSSQL*数据库服务端口1433等。通过部署防火墙可以将信息系统内部区域与公网逻辑隔离开来,利用相关的策略有效避免或减轻来自外部的攻击。
对于渗透测试者来说,如何绕过防火墙的阻挡在内网展开渗透测试成为亟需解决的问题,本文介绍了在夺取映射到外网的内网服务器权限后,如何利用socks代理反弹获得内网访问权限。
1.sSocks
通过对Linux源代码的分析,了解PPP设备在linux内的工作原理.顺便了解一下PPPoE如何利用PPP设备来完成上网的工作的.下面是代码研究的基础版本:
Software version
Linux内核 2.6.15
PPPd ppp-2.4.3
PPPoE rp-pppoe-3.8
1 / 2