penWRT 结合 tinc 组自己的 SDLAN(Step by Step)
本文主要实现在OpenWRT路由器以及不同系统下通过tinc switch mode搭建SDLAN内网服务器方便远程连接, Switch Mode相对来说配置比较简单,各节点均在同一广播域内,方便调控,tinc节点本身通过DNAT+SNAT可以实现对不同网间端口的调通, 同时Switch Mode中各节点的hosts文件只需保证在公网地址的节点中全部拥有维护即可,其他节点只需维护本节点以及公网节点的hosts文件 下面主要分三步: (1)公网节点的部署(Master节点) (2)其他节点的部署(Slave节点) (3)节点的NAT配置 本次搭建的拓扑以下为例,两个Master节点,若干个Slave节点(以3个不同操作系统的为例) (0)tinc的安装 各大Linux发行版基本都可以通过包管理对tinc进行安装 sudo yum install tinc sudo apt install tinc OpenWRT也可通过opkg安装tinc opkg update opkg install tinc Windows可在官网下载 https://www.tinc-vpn.org/packages/windows/tinc-1.1pre17-install.exewww.tinc-vpn.org/packages/windows/tinc-1.1pre17-install.exe Windows中自带的TAP-Windwos版本比较低,建议可以考虑另外安装版本较新的TAP-Windows新建虚拟网卡而不是用tinc-vpn安装包中自带的TAP-Windows (1)公网节点的部署(Master节点) 需要预先定义定义一个网络名 本次以tincnet为例NETNAME = tincnet 每个节点均需要以以下目录结构创建好配置文件夹 /etc/tinc/tincnet % ls -la total 24 drwxr-xr-x 3 root root 4096 Mar 4 15:07 . drwxr-xr-x 4 root […]
L2TP/IPSec一键安装脚本
本脚本适用环境: 系统支持:CentOS6+,Debian7+,Ubuntu12+ 内存要求:≥128M 更新日期:2017 年 05 月 28 日 关于本脚本: 名词解释如下 L2TP(Layer 2 Tunneling Protocol) IPSec(Internet Protocol Security) IKEv2 (Internet Key Exchange v2) 能实现 IPsec 的目前总体上有 openswan,libreswan,strongswan 这3种。 libreswan 是基于 openswan 的 fork,所以现在各个发行版基本已经看不到 openswan 的身影了。 当然也有使用 strongswan 的。 之所以要更新 L2TP 一键安装脚本,是因为随着各个 Linux 发行版不断推陈出新,原有的脚本已经不适应现在的需求。 本脚本通过编译安装最新版 libreswan 来实现 IPSec(CentOS7 下则是全部 yum 安装),yum 或 apt-get 来安装 xl2tpd,再根据各个发行版的使用方法不同,部署防火墙规则。 写在前面: […]
Centos6安装ocserv/openconnect/cisco AnyConnect vpn
安装编译环境及依赖,如部分软件不能安装请先安装epel源。 yum install pam-devel readline-devel http-parser-devel unbound gmp-devel yum install tar gzip xz wget gcc make autoconf ocserv编译安装依赖,ocserv需要gnutls3版本以上,gnutls依赖nettle2.7.1: wget ftp://ftp.gnu.org/gnu/nettle/nettle-2.7.1.tar.gz tar zxvf nettle-2.7.1.tar.gz cd nettle-2.7.1/ ./configure –prefix=/usr/local/nettle make && make install echo ‘/usr/local/nettle/lib64/’ > /etc/ld.so.conf.d/nettle.conf ldconfig 安装gnutls3.3.9: export NETTLE_CFLAGS=”-I/usr/local/nettle/include/” export NETTLE_LIBS=”-L/usr/local/nettle/lib64/ -lnettle” export HOGWEED_LIBS=”-L/usr/local/nettle/lib64/ -lhogweed” export HOGWEED_CFLAGS=”-I/usr/local/nettle/include” wget ftp://ftp.gnutls.org/gcrypt/gnutls/v3.3/gnutls-3.3.9.tar.xz tar xvf gnutls-3.3.9.tar.xz cd gnutls-3.3.9/ ./configure […]