之前使用了好多方法配置VPN服务,先是PPTPD,后来发现十分不稳定。后来改用IPSec (& L2TP),iOS和Mac系统都可以正常使用,但是win10系统无法连接使用。今天发现一个新的解决方案,简单易用,无需配置证书,可以支持所有客户端。
下面一步一步跟我来操作:
curl -L -O https://raw.github.com/philplckthun/setup-strong-strongswan/master/setup.sh
chmod +x setup.sh
vi setup.sh

[ -z “$STRONGSWAN_VERSION” ] && STRONGSWAN_VERSION=”5.5.1″
改为
[ -z “$STRONGSWAN_VERSION” ] && STRONGSWAN_VERSION=”5.5.3″
这部分很重要,低版本的strongswan无法支持windows10.
sudo ./setup.sh
根据提示,一步一步安装即可,其中需要注意的是:
a username: 用户名
a password: 密码
a PSK (pre-shared key):公钥,这个最好设置一个自己能记住的复杂的,因为客户端链接都需要填写。

This installs the vpn-assist init.d script. Systemd is backwards compatible to these scripts and thus you can use it to start|stop|restart the VPN server, which should also start itself automatically on startup.

You can manage accounts for your VPN via /etc/ipsec.secrets and etc/ppp/chap-secrets. @zackdevine’s account managing script automates this process

Categories: 分享 Tags:

业务量太大的时候,lnmp下的php-fpm就卡死了。查了半天,发现有个pcscd.comm占用了好几千个连接数,极其壮观:
8279987326chatroom_1475651969324_62
查linux官方文档,解释这个服务:
pcscd is the daemon program for pcsc-lite and the MuscleCard framework. It is a resource manager that coordinates communications with smart card readers and smart cards and cryptographic tokens that are connected to the system.pcscd is normally started at boot time from /etc/init.d/pcscd. It allows applications to access smart cards and readers without knowing details of the card or reader.
原来是智能卡的支持服务,果断关掉:
[admin@APP5 ~]$ sudo service pcscd stop
Stopping PC/SC smart card daemon (pcscd): [ OK ]
查看连接数,瞬间降下来了。
然后chkconfig 把pcscd服务自启动给禁用掉:
chkconfig pcscd off
搞定。
至于为什么启动了这么多连接数,具体原因未明,估计是linux虚拟机系统没配置好。

Categories: 感悟 Tags: ,

把笔记本的网络通过无线方式共享给手机0+

859 views / 2016.09.04 / 8:08 下午

网络ssid:paddy
密码:duyipeng
运行下面两行命令即可:
netsh wlan set hostednetwork mode=allow ssid=paddy key=duyipeng
netsh wlan start hostednetwork

Categories: 分享 Tags:

The HTTP response body was malformed错误解决0+

1,020 views / 2016.08.01 / 3:03 下午

公司的网路环境比较负责,有个nginx服务报了个The HTTP response body was malformed错误,抓包发现返回的http信息中没有content-length信息。具体报错如下:
QQ图片20160801152319
搞来搞去,各种方法都试了不行。
最后发现是服务器硬盘满了…怪怪…
原来nginx服务无法写日志的时候,还会导致返回的http信息不完整,真是醉了。

Categories: 感悟 Tags:

验证身份证的代码0+

824 views / 2016.06.08 / 3:03 下午

身份证最后一位是根据前面十七位数字码计算出来的检验码作为尾号的校验码。

计算方法

1、将前面的身份证号码17位数分别乘以不同的系数。从第一位到第十七位的系数分别为:7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2 ;

2、将这17位数字和系数相乘的结果相加;

3、用加出来和除以11,看余数是多少;

4、余数只可能有0 1 2 3 4 5 6 7 8 9 10这11个数字。其分别对应的最后一位身份证的号码为1 0 X 9 8 7 6 5 4 3 2;

5、通过上面得知如果余数是2,就会在身份证的第18位数字上出现罗马数字的X。如果余数是10,身份证的最后一位号码就是2;

例如:某男性的身份证号码是34052419800101001X。我们要看看这个身份证是不是合法的身份证。

首先:我们计算3*7+4*9+0*10+5*5+…+1*2,前17位的乘积和是189

然后:用189除以11得出的结果是商17余2

最后:通过对应规则就可以知道余数2对应的数字是x。所以,这是一个合格的身份证号码。

附上代码:

<?php
$s="371122198601097819";
$c=explode(" ","7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2");
$v=explode(" ","1 0 X 9 8 7 6 5 4 3 2");
$sum=0;
for($i=0;$i<17;$i++){
$sum+=$s[$i]*$c[$i];
}
$right = $v[$sum%11];
if($s[17]==$right){
echo "Right ID card number\n";
}else{
echo "Incorrect ID card number, the last digit number should be ".$right."\n";
}
?>

Categories: 感悟 Tags: