分类目录归档:折腾网站

群晖安装Let’s Encrypt SSL证书

方法一

  1. 获取代码
    git clone https://github.com/Neilpang/acme.sh.git
  2. 安装脚本
    cd acme.sh
    ./acme.sh –install –force
  3. 进入目录:
    cd ~/.acme.sh/
  4. 设置变量:
    export CX_Key=”替换为CloudXNS的key”
    export CX_Secret=”替换为CloudXNS的secrcet”
  5. 申请证书:
    ./acme.sh –issue –dns dns_cx -d mydomain.site -d *.mydomain.site
  6. 备注,90天以后更新证书时的命令为:
    ./acme.sh –renew -d mydomain.site -d *.mydomain.site

方法二:

1.安装 acme.sh

1.安装 acme.sh

wget https://github.com/Neilpang/acme.sh/archive/master.tar.gz

tar xvf master.tar.gz

cd acme.sh-master/

chmod a+x acme.sh

复制代码我是安装到/volume1/web/challenges/acme.sh目录

./acme.sh –install –nocron –home “/volume1/web/challenges/acme.sh”

复制代码运行测试看看是否正常

cd /volume1/web/challenges/acme.sh

/volume1/web/challenges/acme.sh/acme.sh –home “/volume1/web/challenges/acme.sh”

复制代码如果没有错误表示ok了

2.自动续期

自动续签证书,创建一个.txt文件,内容如下,重命名为renew_ssl.sh,上传到DSM

/volume1/web/challenges/acme.sh/acme.sh –home “/volume1/web/challenges” –renew –force -d example.com -d www.example.com

自动安装证书,创建一个.txt文件,内容如下,重命名为install_ssl.sh,上传到DSM

/volume1/web/challenges/acme.sh/acme.sh –home /volume1/web/challenges –installcert -d aichh.com –certpath /usr/syno/etc/certificate/_archive/proxYn/cert.pem –keypath /usr/syno/etc/certificate/_archive/proxYn/privkey.pem –fullchainpath /usr/syno/etc/certificate/_archive/proxYn/fullchain.pem –capath /usr/syno/etc/certificate/_archive/proxYn/chain.pem –reloadcmd

rsync -avzh /usr/syno/etc/certificate/_archive/proxYn/ /usr/syno/etc/certificate/system/default/

/usr/syno/etc/rc.sysv/nginx.sh reload

到DSM计划任务里新增两个自定义脚本任务,任务设置里把上面的脚本完整路径填上
设置为每月执行一次,renew_ssl.sh要先于install_ssl.sh,两个脚本最好有10分钟以上时间差。

Namesilo注意

You’ll need to generate an API key at https://www.namesilo.com/account_api.php Optionally you may restrict the access to an IP range there.

export Namesilo_Key="xxxxxxxxxxxxxxxxxxxxxxxx"

And now you can issue certs with:

acme.sh --issue --dns dns_namesilo --dnssleep 900 -d example.com -d www.example.com

收集openwrt作为strongswan客户端的资料

OpenWrt 路由器 L2TP/IPSec 客户端中, NAT 情况下 strongSwan 配置请教
   neroanelli · 2014-12-30 20:48:42 +08:00 · 18453 次点击
这是一个创建于 1113 天前的主题,其中的信息可能已经有所发展或是发生改变。

我在OpenWrt路由器中配置了L2TP/IPSec客户端,最开始使用的是racoon+xl2tp实现的,能正常连接,并且在外网和NAT内网中都能正常使用。
后来觉得racoon不是很好用,有时候不能连接,于是就尝试使用strongSwan,在配置测试过程中,当OpenWrt路由器外网情况下,能正常使用;而当路由器为内网NAT的情况下,不能正常连接。我的ipsec.conf配置文件如下:

config setup
#charondebug = “ike 2,knl 2”
conn l2tp-psk-client
authby=psk
rekey=yes
type=transport
keyexchange=ikev1
keyingtries=3
left=%defaultroute
leftprotoport=17/1701
right=1.1.1.1
rightprotoport=17/1701
esp=aes256-sha1
ike=aes256-sha1-modp1024
auto=start

其中1.1.1.1为L2TP/IPSec服务器地址。

我使用的strongSwan版本为5.1.3,根据官方wiki,从5.0版本开始就取消了nat_traversal=yes参数。我搜索了一下,发现大量的资料和教程都是strongSwan作为server的,而client的配置介绍很少。而且strongSwan在更新过程中,配置文件在不停变化。
所以请教大家,在NAT情况下,是不是还有什么参数需要配置?有什么参数没有设置合理?

第 1 条附言  ·  2014-12-31 09:26:44 +08:00

由于服务器是别人提供的,而且只能使用L2TP/IPSec的方式连接。现在就是在NAT穿透时连接不上,不知道是strongswan配置问题还是其他原因。
第 2 条附言  ·  2014-12-31 11:35:29 +08:00

主要是没有建立CHILD_SA,日志中提示no acceptable traffic selectors found。
第 3 条附言  ·  2015-01-12 15:05:41 +08:00

还是更新一下:问题已经解决,在配置文件中加入rightsubnet=0.0.0.0/0搞定。感谢各位。

27 回复  |  直到 2015-11-03 23:10:44 +08:00

    1

realsteve   2014-12-30 21:42:50 +08:00 via iPhone

如果是 IPSec 的话,推荐用 VPNC,稳定靠谱。
    2

neroanelli   2014-12-30 21:47:51 +08:00

@realsteve
主要是服务器是别人提供的。。。只支持L2tp/IPSec
    3

neroanelli   2014-12-31 09:44:19 +08:00

@gissimo
@cattyhouse
@a3587556
@fuck010bj
@debiansid
@internet2014
希望各位支招。。。
    4

debiansid   2014-12-31 11:01:50 +08:00 via iPhone

需要一条iptables
    5

neroanelli   2014-12-31 11:36:20 +08:00

@debiansid
请教具体是怎样iptables?
    6

cattyhouse   2014-12-31 11:52:27 +08:00

为啥要l2tp?直接racoon或者strongswan建ipsec vpn服务器就行了,l2tp太麻烦!
    7

debiansid   2014-12-31 12:26:48 +08:00 via iPhone

穿透打开没有 你的主路由器上
    8

neroanelli   2014-12-31 13:29:24 +08:00

@cattyhouse
因为服务器是别人提供的,只有l2tp服务。。。
    9

neroanelli   2014-12-31 13:30:32 +08:00

@debiansid
打开了的,使用racoon都能正常工作,只是使用strongswan连接不正常。
    10

GPU   2014-12-31 17:17:35 +08:00 via iPhone

我正打算在路由器弄IKEv2客户端,还不清楚怎么弄
    11

msp123   2015-01-12 17:45:31 +08:00

解决了吗?亲?我也遇到了这个问题
    12

neroanelli   2015-01-12 21:43:04 +08:00   ♥ 1

@msp123
问题已经解决,在配置文件中加入rightsubnet=0.0.0.0/0搞定。感谢各位。
    13

msp123   2015-01-13 11:27:58 +08:00

如何关闭5.0的nat-travesal呢?您知道吗?
    14

neroanelli   2015-01-13 15:31:26 +08:00

@msp123
5.0没有这个参数的,所以也不存在关闭。
参考链接 https://wiki.strongswan.org/projects/strongswan/wiki/NatTraversal
    15

GPU   2015-01-20 18:33:16 +08:00

@neroanelli 国内debian 系统用 strongswan 链接国外的strongswan 应该怎么配置啊?

国外的strongswan 配置了ikev2 ikev2-eap ikev1

    16

neroanelli   2015-01-21 09:14:22 +08:00

@GPU
你提供的信息有限啊。如果你有国外的strongSwan的配置文件那更好,简单修改就可以配置好。
你需要知道对方服务器是什么认证方式,是psk吗?还有esp、ike加密方式等。
    17

GPU   2015-01-21 12:39:26 +08:00

@neroanelli 对方服务器也是我自己搭建,有所有管理权限 。我只是不知道怎么修改配置文件在client 使用

我是 psk 也有 esp ike 都有。

下面是配置文件 (github账号又被认定机器人了,解封中无法用gist)

我是使用泛域名证书验证的

config setup
charondebug=”cfg -1, dmn -1, ike -1, net -1, enc -1″
##charondebug=”-1″
uniqueids = no
conn %default
keyexchange=ikev2
dpdaction=clear
dpddelay=5s
rekey=no
left=%any
leftsubnet=0.0.0.0/0
leftcert=server.pem
leftsendcert=always
right=%any
rightdns=8.8.4.4,8.8.8.8
rightsourceip=172.0.0.0/24

conn IPSec-IKEv2
keyexchange=ikev2
leftid=@*.my.domain
rightid=*@my.domain
auto=add

conn IPSec-IKEv2-EAP
also=”IPSec-IKEv2″
rightauth=eap-mschapv2
rightsendcert=never
eap_identity=%any

conn CiscoIPSec
keyexchange=ikev1
leftsendcert=never
leftauth=psk
rightauth=psk
rightauth2=xauth
auto=add

    18

neroanelli   2015-01-21 14:12:09 +08:00

@GPU
给你一个参考配置哈,你研究一下:
conn ikev2-Client
right=gateway.host.name
rightid=%gateway.host.name
rightsubnet=0.0.0.0/0
rightauth=pubkey
leftsourceip=%config
leftauth=pubkey or eap #depending on the selected gateway config
leftcert=certificate #only if leftauth=pubkey (e.g. peerCert.der)
eap_identity=username #only if leftauth=eap (e.g. peer)
auto=add

注意后面的注释,看你是用pubkey还是eap方式。

    19

GPU   2015-01-21 17:21:57 +08:00

@neroanelli

试了很久还是像下面这样子。

Starting strongSwan 5.2.1 IPsec [starter]…
00[DMN] Starting IKE charon daemon (strongSwan 5.2.1, Linux 3.2.0-4-amd64, x86_64)
00[CFG] loading ca certificates from ‘/etc/ipsec.d/cacerts’
00[CFG] loading aa certificates from ‘/etc/ipsec.d/aacerts’
00[CFG] loading ocsp signer certificates from ‘/etc/ipsec.d/ocspcerts’
00[CFG] loading attribute certificates from ‘/etc/ipsec.d/acerts’
00[CFG] loading crls from ‘/etc/ipsec.d/crls’
00[CFG] loading secrets from ‘/etc/ipsec.secrets’
00[CFG] loaded RSA private key from ‘/etc/ipsec.d/private/myKey.der’
00[LIB] loaded plugins: charon aes des rc2 sha1 sha2 md4 md5 random nonce x509 revocation constraints pubkey pkcs1 pkcs7 pkcs8 pkcs12 pgp dnskey sshkey pem openssl fips-prf gmp xcbc cmac hmac attr kernel-netlink resolve socket-default stroke updown eap-identity eap-mschapv2 eap-peap xauth-generic
00[LIB] unable to load 3 plugin features (3 due to unmet dependencies)
00[JOB] spawning 16 worker threads
09[NET] waiting for data on sockets
charon (19643) started after 20 ms
11[CFG] received stroke: add connection ‘ikev2-Client’
11[CFG] conn ikev2-Client
11[CFG] left=%any
11[CFG] leftsourceip=%config
11[CFG] leftauth=pubkey
11[CFG] leftcert=server.pem
11[CFG] right=my.domain.com
11[CFG] rightsubnet=0.0.0.0/0
11[CFG] rightauth=pubkey
11[CFG] rightid=%my.domain.com
11[CFG] ike=aes128-sha1-modp2048,3des-sha1-modp1536
11[CFG] esp=aes128-sha1,3des-sha1
11[CFG] dpddelay=30
11[CFG] dpdtimeout=150
11[CFG] mediation=no
11[CFG] keyexchange=ikev2
11[CFG] left nor right host is our side, assuming left=local
11[CFG] loaded certificate “OU=Domain Control Validated, CN=*.domain.com” from ‘server.pem’
11[CFG] id ‘%any’ not confirmed by certificate, defaulting to ‘OU=Domain Control Validated, CN=*.domain.com
11[CFG] added configuration ‘ikev2-Client’

    20

neroanelli   2015-01-21 20:09:25 +08:00

@GPU
你不会真的就是在配置里面填写的right=my.domain.com吧。。。。。那个应该是你对应的服务器的地址。
    21

neroanelli   2015-01-21 20:10:33 +08:00

@GPU
我觉得你还是先看一下strongSwan的官方手册吧,其实基本的配置都有的。
https://wiki.strongswan.org/projects/strongswan/wiki/ConfigurationFiles
    22

GPU   2015-01-21 20:31:09 +08:00

@neroanelli right = 我是填我自己的域名 xx.xx.xx 然后 rightid= 就填 %xx.xx.xx

strongswan 我看不懂啊. .英语不好啊.看起来太吃力

    23

cs4814751   2015-03-06 17:07:49 +08:00 via iPad

@neroanelli 非常想请教下,你是如何在openwrt上配置的l2tp/ipsec的客户端,我也想弄来着。
    24

neroanelli   2015-03-07 11:29:04 +08:00 via Android

@cs4814751
怎么说呢,这个客户端是由两部分组成:一部分是ipsec,一部分是l2tp。而ipsec又有两种实现方案(其实还有openswan,不过新版openwrt内核编不过):一种是racoon,一种是strongswan,就是我上面那个配置。然后配置ipsec的时候,可能需要配置ike和esp的加密方式。如果ipsec连接成功,然后配置l2tp。
l2tp有两种实现方案,分别是xl2tp和openl2tp,推荐第一种,网上教程很多。
    25

neroanelli   2015-03-07 11:29:59 +08:00 via Android

@GPU
看了下你的日志,你没有up 连接啊。
    26

neroanelli   2015-03-07 11:35:36 +08:00 via Android

@GPU
你只是add了连接,你还需要ipsec up ikev2-Client
    27

Vicer   2015-11-03 23:10:44 +08:00

求 Strongswan 搭建 L2TP/ipsec 的配置文件 最好贴出步骤
DigitalOcean

关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   鸣谢   ·   2111 人在线   最高记录 3541   ·   

创意工作者们的社区

World is powered by solitude

VERSION: 3.9.8.0 · 50ms · UTC 13:55 · PVG 21:55 · LAX 05:55 · JFK 08:55
♥ Do have faith in what you’re doing.

最便捷的WIN10设置IKEv2方式

晚上继续折腾VPN的时候发现,其实不用那么多证书呀啥的,最简单的方法是:

1、导入CA根证书到机器的受信根证书颁发机构里

2、建立IKEv2类型的VPN

3、在网卡设置里设置VPN对应网卡,主要是下面这个:

4、检查一下VPN设置里面,服务器名称或地址里面需要和服务器证书一致,如下:

WIN10上设置IKEv2访问strongSWAN要点

  1. 如果是自签署的证书,需要导入根证书到本机的受信任的根证书下,具体操作为:运行mmc,文件-添加/删除管理单元,添加“证书”,选择“计算机账户”-本地计算机,“受信任的根证书颁发机构”上右键-所有任务-导入,导入根证书;
  2. 建立VPN连接,类型选IKEv2,登录类型根据需要选择“证书”或者“用户名和密码”;
  3. 进入“控制面板”-“网络和共享中心”-更改适配器设置,选择VPN对应的适配器,选择“属性”,网络页里双击IPv4,高级里选中“在远程网络上使用默认网关”。

更换了SSL证书

最近更新了Chrome,突然发现自己的网站无法打开,报什么cert_revoke错误,后来网上到处查了,才发现原来的WoSign证书的根已经不被Chrome信任了!原因什么的不说了,只是如果要继续使用WoSign,必须使用交付的证书才行。没办法,自己弄着玩的,没必要花这个钱。网上一搜,发现Let’s Encrypt这家,好多网络、浏览器公司支持的免费证书发放机构,虽然开放性不够,但是提供的ACME方式(使用certbotk客户端)发放证书倒是挺方便,于是更换了这家的证书。不过,它的证书只有90天有效期,需要频繁更新。

把SSL证书从StartSSL换成沃通了

刚开始建网站的时候是从StartSSL申请的SSL证书,当时主要是考虑这个地方的免费证书也非常强大。不过,不好的地方是证书有效期只有一年(无论是用户证书还是域名的证书)。如今,一年快过去了,正在考虑更新证书的时候,无意中搜索到国内还有一家可以免费发放SSL证书的地方,就是沃通,看介绍和StartSSL差不多,免费的证书可以添加5个域名,更好的是这个地方发放的域名证书是两年有效期,而且可以自动续期,还是比较方便的。于是申请了一个测试,申请过程与StartSSL类似,可以自己提交CSR,而且如果申请的域名中不包含www的域名会附送一个www开始的域名,相当于一个证书里面最多可以包含6个域名了。申请完后进行了测试,电脑上IE、Edge、Chrome,手机上Opera都兼容,以后就用这个算了。

目前感觉最科学的上网方式推荐

通过这段时间的实践,试用了PPTP、L2TP、OpenVPN、ShadowSocks,到比较新的IKEv2。从目前来看,PPTP、L2TP的优点是简单易用,不需要特别的软件,电脑和手机上都可以用,不过缺点是容易被ISP屏蔽,所以在有的地方会出现连不上的问题。其余几个都需要安装软件才能访问,其中OpenVPN已经被GFW重点照顾,很容易造成服务器被墙,IKEv2加密最强,是将来的趋势。而Shadowsocks应该是目前最适合的方式了,尤其是在手机上,连上后在手机网络和wifi切换时也不需要重新连接,还有一个非常适合天朝的贴心功能,就是能够根据IP地址判断是在墙内还是墙外而自动选择是通过服务器中转还是直接访问,这样既能保证访问被墙的资源,又能保证访问国内服务器时的速度,所以吐血推荐。要下载的点这里。设置的时候主要是服务器地址、远程端口、密码、加密方法,另外,“路由”这个地方一定要选和下图一样的: Screenshot_2015-08-22-21-42-26

StrongSwan搭建L2TP收集的参考

两篇文章:
Ubuntu、CentOS搭建IPSec/IKEv2 VPN服务器全攻略
VPS上基于Debian搭建和配置pure IPsec支持iOS/Win7/Android等多平台VPN客户端


 

加一篇:
Strongswan-IKEv2+FreeRADIUS VPN配置

前一篇文章里面提到了用Strongswan替换Openswan的最大理由就是IKEv2和对于Radius的支持,这篇文章继续介绍如何使用Strongswan和Freeradius建立IKEv2 VPN。

目前支持IKEv2的客户端貌似只有Openswan/Strongswan,Windows的话只有Windows 7和Windows Server 2008 R2完全支持(Vista只支持IKEv1),因而这篇文章主要介绍如何建立Win7客户端能够使用的IKEv2 VPN。

之所以使用IKEv2而非IKEv1是因为IKEv1目前没有开源的能与Radius连接的插件/客户端,最接近的方案应该是XAuth- PAM+pam_radius。不过pam对于DoS攻击的抵抗很弱,因而不是特别好的一个solution。加上Openswan默认编译是不包含 xauthpam的,在使用二进制包管理的服务器上布置的复杂度会更高。

IKEv2要求服务器必须以证书证明身份,即使客户端采用MSCHAPv2认证(用户名+密码)。所以第一步是产生服务器使用的证书:

以下内容来自http://wiki.strongswan.org/projects/strongswan/wiki/IOS_%28Apple%29:

1 ipsec pki –gen –outform pem > caKey.pem

2 ipsec pki –self –in caKey.pem –dn “C=CH, O=strongSwan, CN=strongSwan CA” –ca –outform pem > caCert.pem

这一步产生CA证书,也是稍后会安装到客户端里面的证书,其中CN(Common Name)的值很重要,必须是服务器的域名/IP地址并且跟给客户的值一样。比如说让客户连接1.2.3.4,那么CN=1.2.3.4。不能是一边是域名而另外一边是IP地址。

1 ipsec pki –gen –outform pem > serverKey.pem

2 ipsec pki –pub –in serverKey.pem | ipsec pki –issue –cacert caCert.pem –cakey caKey.pem \

3 –dn “C=CH, O=strongSwan, CN=vpn.strongswan.org” –flag serverAuth –outform pem > serverCert.pem

这一步里面产生的服务器证书的CN值必须和上一步里面的一样,至于–flag serverAuth是Windows客户端必需的,作用是表示出这个证书的用途(认证)。

把生成的证书拷到ipsec.d/里面:

1 cp caCert.pem /etc/ipsec.d/cacerts/

2 cp serverCert.pem /etc/ipsec.d/certs

3 cp serverKey.pem /etc/ipsec.d/private/

最后在/etc/ipsec.secrets里面添加:

1 : RSA serverKey.pem

这样服务器端的证书准备工作就完成了。

客户端需要添加这个证书,否则认证时会出现Error 13801。添加证书的方法见这里:http://wiki.strongswan.org/projects/strongswan/wiki/Win7EapCert,注意必须是Local Computer(本地计算机)而非Current User(当前用户),否则添加的证书不会起效。

然后配置/etc/strongswan.conf:

在charon段里面加上:

1 dns1 = 8.8.8.8

2 dns2 = 208.67.222.222

然后在plugin段(charon段内部)里面加上:

1 eap-radius {

2 servers {

3 vpnserver {

4 secret = yourfreeradiussecret

5 address = radius.server.address

6 }

7 }

8 }

这样让Strongswan了解Radius服务器地址和暗码。

接下来修改/etc/ipsec.conf:

1 conn IPSec-IKEv2

2 keyexchange=ikev2

3 auto=add

4 left=server.ip.address

5 leftsubnet=0.0.0.0/0

6 leftauth=pubkey

7 leftcert=serverCert.pem

8 right=%any

9 rightsourceip=vpn.ip.address.range

10 rightauth=eap-radius

11 rightsendcert=never

12 eap_identity=%any

解释下上面几项的含义:leftsubnet是决定要通过tunnel的ip的范围,0.0.0.0/0是代表所有的IP通讯都通过VPN。 rightsourceip是VPN分配的虚拟地址的范围,也就是客户端登录后得到的IP范围,例如192.168.1.0/24意味着 192.168.0.1-192.168.1.255为VPN客户端可能的地址范围。rightauth=eap-radius是把客户端的EAP认证请 求转发至radius来处理,%any意味着接受任何类型的eap请求。

配置完成了吗?这样启动后Windows的客户端会提示812错误,因为Windows默认使用的是EAP-MSCHAPv2,而 Freeradius的默认配置是EAP-md5,这可能是Windows的一个bug,目前我的解决方法是直接把Freeradius的 eap.conf里面的default_eap_type修改为mschapv2,如有更好的方法望不吝告知。

这样就建立了一个IKEv2 IPSec隧道。默认情况下加密方法使用3DES,如有需要的话可以在IPSec的配置段里面加上ike=和esp=来修改加密算法。

参考:

http://wiki.strongswan.org/projects/strongswan/wiki/Win7EapCert

http://wiki.strongswan.org/projects/strongswan/wiki/IOS_%28Apple%29

http://wiki.strongswan.org/projects/strongswan/wiki/Win7EapMultipleConfig

还有Strongswan的Mailing list。

原文:http://tomem.info/blog/2011/10/724

===========

Strongswan+L2TP配置

由于需要给VPN添加IKEv2,而OpenSwan对于IKEv2的支持只有最基本的部分,更重要的是OpenSwan没有像 Strongswan一样的EAP-RADIUS插件可以实现Stongswan和Freeradius之间的直接通信(IKEv2必须),所以将服务器 上面的OpenSwan换成了Strongswan。

平台是Debian Squeeze,Strongswan的软件包安装自Debian Squeeze Backports,其余的来自于Debian stable。Debian Backports的作用是给稳定版本的Debian提供一些只有在Tesing/sid里面才有的新版本的软件包,而这些软件又是在stable的环境 下编译的,所以不用担心包依赖方面的问题。

从Backports安装软件的方法参照这里:http://backports-master.debian.org/Instructions/

Strongswan需要使用新版本的原因是Stable(Squeeze)里面的版本编译时没有–enable-nat-transport参数,这样的话Strongswan由于默认的安全特性(http://wiki.strongswan.org/projects/strongswan/wiki/FAQ)不允许进行NAT转发,从而无公网IP的客户端是无法与服务器建立连接的。

服务器结构依然是xl2tpd+swan,只是把OpenSwan换成了Strongswan。xl2tpd的配置跟上一篇 (http://tomem.info/blog/2011/04/577)是一样的,但是Strongswan的配置稍有不同,而错误信息又不是很 informative,花了几个小时才调试成功,所以写下来为后面的作参考。

几个常见的错误:

1.

client.ip.address:4500 #8: NAT-Traversal: Transport mode disabled due to security concerns

pluto[21315]: “l2tp”[3] client.ip.address:4500 #8: sending encrypted notification BAD_PROPOSAL_SYNTAX to client.ip.address:4500

这个是由于Strongswan没有编译–enable-nat-transport,因而无法进行NAT传输。

解决方法:重新编译,加上–enable-nat-transport。

2.

pluto[30735]: packet from client.ip.address:500: initial Main Mode message received on server.ip.address:500 but no connection has been authorized with policy=PSK

这个一般来说是IPSec的secrets错误,但是我在确认Secrets无误的情况下也遇到了这个,http://b.gkp.cc/2010/06/19/setup-ipsec-l2tp-on-centos-55/评论里面的某位仁兄也遇到了这个问题。在几番折腾无果的情况下注意到log里面有这么一行:

pluto[8384]: packet from client.ip.address:500: ignoring Vendor ID payload [IKE CGA version 1]

突然意识到Windows的L2TP使用的是IKEv1,而Strongswan默认使用的是IKEv2,会不会是这个问题?试之果然。

解决:在Strongswan的L2TP的配置段里面加上keyexchange=ikev1。

3.

pluto[1243]: “L2TP-PSK-noNAT”[2] client.ip.address:4500 #1: cannot respond to IPsec SA request because no connection is known for server.ip.address:4500[server.ip.address]:17/1701…client.ip.address:4500[client.ip.nat.address]:17/%any===client.ip.nat.address/32

pluto[1243]: “L2TP-PSK-noNAT”[2] client.ip.address:4500 #1: sending encrypted notification INVALID_ID_INFORMATION to client.ip.address:4500

这个乍看之下也像是PSK的设置错误,实际上不是。问题出在virtual_network的设置上面。

解决:Strongswan的setup段里面加上virtual_private=%v4:10.0.0.0/8,%v4:192.168.0.0/16,%v4:172.16.0.0/12。

配置文件范例:

1 # ipsec.conf – strongSwan IPsec configuration file

2

3 # basic configuration

4

5 config setup

6 # plutodebug=all

7 # crlcheckinterval=600

8 # strictcrlpolicy=yes

9 # cachecrls=yes

10 nat_traversal=yes

11 charonstart=yes

12 plutostart=yes

13 virtual_private=%v4:10.0.0.0/8,%v4:192.168.0.0/16,%v4:172.16.0.0/12

14

15 # Add connections here.

16

17 conn L2TP-PSK-NAT

18 rightsubnet=vhost:%priv

19 also=L2TP-PSK-noNAT

20

21 conn L2TP-PSK-noNAT

22 keyexchange=ikev1

23 authby=secret

24 pfs=no

25 auto=add

26 rekey=no

27 type=tunnel

28 keyingtries=3

29 left=server.ip.address

30 leftnexthop=%defaultroute

31 leftprotoport=17/1701

32 right=%any

33 rightprotoport=17/%any

原文:http://tomem.info/blog/2011/10/721

为搭建邮件服务器准备的

看到很多VPS用户并不是用来搭建网站的,而是用来创建邮件服务器使用发送邮件,所以老左也来学习这类功能的应用。学习和使用搭建邮件服务器肯定需要先用到免费开源的iRedMail软件。iRedMail能够在Red Hat、CentOS、SDebian、 Ubuntu等环境系统中快速部署邮件服务器的解决方案。在这篇文章中,老左分享的是自己在Centos 6 32位系统中成功搭建的过程。

还有这个:http://www.iredmail.com/download.html

http://www.firewing1.com/howtos/servers/centos5/mail