说明:Tinc 与 N2N、PeerVPN 以及 ZeroTier 等属于一类,是一款轻量型的 GNU 协议下的开源软件,通过隧道以及加密技术在互联网点与点之间建立隧道。其实 Tinc 可以代替 ZeroTier,虽然 ZeroTier 免费版也足够用,但用着 ZeroTier 的公共 Moon/WEB 面板,总感觉差了点意思。而 Tinc 就是全部资源都归自己管,并且可以像普通的网络设备那样,不需要去适配其他已经存在的软件。所以他就可以很安全的在点与点之间传输数据,相对安全。
官方网站:https://www.tinc-vpn.org/
源码地址:https://tinc-vpn.org/git/tinc
他还有其他几大的特点:
加密 / 认证 / 压缩
自动全网状路由
易于扩展网络节点
能够进行网络的桥接
跨平台支持
IPv6 支持
安装
Tinc 在各个发行版的仓库中都可以找到,例如 Debian / Ubuntu / CentOS /macOS 等系统就可以通过下面的命令安装:
其他平台下载:
Android:Tinc App ;IOS (需越狱):Cydia packages;Windows 官方下载地址
配置
目录结构
/etc/tinc/dock
目录下的文件都属于dock
这个网络/etc/tinc/dock/hosts
目录是存放其他用户或者说是其他网络的public key
以及他们的 ip 地址rsa_key.priv
本网络的私钥tinc.conf
本网络的配置文件tinc-down
本网络关闭时执行的脚本tinc-up
本网络启动时执行的脚本
服务端配置
首先开启 Linux 转发,在 /etc/sysctl.conf
设置 net.ipv4.ip_forward = 1
,并通过 sysctl -p
来应用配置。
修改 tinc.conf
配置文件
Name
主机名称Interface
隧道所使用的网卡名称Mode
有三种模式,分别是router
/switch
/hub
,相对应我们平时使用到的路由、交换机、集线器 (默认模式router
)Compression
UDP 数据包压缩级别。可选有 0 (关闭),1 (fast zlib) 至 9 (best zlib),10 (fast lzo) 和 11 (best lzo)Cipher
加密类型。可选aes-128-cbc
aes-256-cbc
等Digest
rsa 加密协议强度。可选sha128
sha1
等PrivateKeyFile
服务器私钥的位置
修改 tinc-up
和 tinc-down
,用 Windows
作为服务器无需这两个文件
添加执行权限
在 hosts
文件夹内添加节点配置文件
Subnet
宣告的路由地址Address
服务器的外网 IPPort
指定 tinc 连接端口(默认端口655
)
生成私钥和公钥
公钥自动添加到 hosts
文件夹内的节点配置文件
客户端配置
客户端的 tinc.conf
与服务器的参数基本上相同,只需要修改 Name
在 hosts
文件夹内添加新的节点配置文件
tinc-up
和 tinc-down
跟服务器配置基本一样,只需要修改 tinc-up
的内网 ip,Windows
客户端无需这两个文件
生成私钥和公钥
将服务端的节点配置文件放到客户端的 hosts
文件夹内,并将客户端的节点配置文件放到服务端的 hosts
文件夹内
运行
后台启动
Windows 端需要先安装虚拟网卡,在 tinc 的安装目录下有虚拟网卡的驱动安装包,安装完成后需要将虚拟网卡名称改为与 tinc.conf
文件中的 Interface
名称相同,并且手动设置虚拟网卡的 IP 地址和子网掩码,然后进入到 tinc
的安装目录下再以管理员的身份运行,运行后会自动创建系统服务,需要停止的时候在 Windows 系统服务管理中停止服务
停止运行,该命令在 Windows 端会停止运行并删除系统服务
调试模式
最后
抓包可以看出,我本地与服务器之间的连接已经数据传输是加密的,而如果你对数据的传输有兴趣的话,只需要将抓包的网卡设置成上面设置的网卡(tinc)即可,在 tinc 传输的数据已经是经过解密的了,因此抓包可以很好的复原传输的过程。
推荐本站淘宝优惠价购买喜欢的宝贝:
本文链接:https://hqyman.cn/post/3921.html 非本站原创文章欢迎转载,原创文章需保留本站地址!
休息一下~~