建立MikroTik与Barracuda之间的IPSec VPN
Thursday, December 28th, 2017 Posted in Linux | No Comments »上次还在吐槽Unifi USG的IPSec VPN功能弱,结果现在来了一个更弱的。 或许不是弱,只是MikroTik对IPSec的解读与别家不同,导致我对MikroTik的误会很深。 首先,就是MikroTik应该是不支持IKEv2的,起码我使用的v6.27版是不支持的。 这样,Barracuda这边也就只能使用IKEv1来进行配置。具体配置方式,请参考官方配置文档。 这里推荐的配置参数是: Phase 1 Encyption: AES256 Hash Meth.: MD5 DH-Group: Group 14 Phase 2 Encyption: AES256 Has Meth.: MD5 DH-Group: Group 14 Enable Perfect Forward Secrecy: 勾选 Local Networks Local IKE Gateway: Barracuda的外网IP Remote Networks Remote IKE Gateway: MikroTik的固定IP,如果没有固定IP,也可以使用域名,但是不能填入0.0.0.0/0 Identify Identification Type: Shared Secret Peer Identification Shared Secret: 任意字符串,在MikroTik中也要用到 MikroTik的设置是最麻烦的,特别是Tunnel的设置。MikroTik不像其他工具,填入相关的IP地址段后,可以自动生成Tunnel,而这里必须一个一个的手功建立。 依次点击: IP -- IPSec 点击: Peers 点击 Add New Address: 填入Barracuda的外网IP,与上面的Local ...
建立Unifi USG到Barracuda Firewall的IPSec VPN
Monday, December 25th, 2017 Posted in Linux, networking | No Comments »首先就是Barracuda设置,这里我们选用IKE2,具体的设置可以参考官方配置: 这里,我们要修改的几处: Authentication Authentication Method: 选择Pre-shared key Shared Secred : 就是Unifi里面的Pre-Shared Key Phase 1 Encryption: 选择 AES256 Hash: 选择默认的MD5 DH-Group: 选择Group 2(不知道为什么,Group 14总是不成功) Phase 2 Encrypton: 选择AES256 Hash: 选择MD5 DH-Group: 选择Disable PFS Network Settings Advanced: 如果有多网段广播,必须勾选One VPN Tunnel per Subnet Pair Network Local Local ID: 留空 Remote ID: 留空 接下来就是Unifi ...
使用爱快路由建立到亚马逊云的IPSec VPN
Sunday, December 24th, 2017 Posted in Linux | No Comments »最近在测试AWS云中国区服务,然后发现国内目前居然还不能直接使用IPSec VPN接口,具体原因不明,但是官方已经提供了解决方案。 官方的解决方案要求使用Cisco,实测同样的参数,使用爱快其实也是可以连接的。 由于官方的OpenSWAN使用的ike是aes128-sha1;modp1024,而phase2alg是aes128-sha1 ike=aes128-sha1;modp1024 phase2alg=aes128-sha1 个人觉得安全等级比较弱。所以我建议改ike为aes256-md5;modp2048,改phase2alg为aes256-md5 ike=aes256-md5;modp2048 phase2alg=aes256-md5 爱快端的设置如下: 依次点击 “服务中心” -- “VPN服务” -- ...
CodeCombat相关: 安息之云山峰 峰会之门
Thursday, December 14th, 2017 Posted in Linux | No Comments »Python过关代码 # 突破重围,进入圣殿,消灭食人魔首领 def summonbyType(): summonTypies = ["soldier", "archer", "griffin-rider"] type = len(hero.built) % len(summonTypies) if hero.gold > hero.costOf(summonTypies[type]): hero.summon(summonTypies[type]) def commandAmy(soldier): enemy = ...