利用dnsmasq防止DNS劫持

20151230223752

利用dig命令,指定查下阿里的dns 223.5.5.5 查下一个不存在的域名,竟然还有返回值,第一反应是劫持了,而且还是伪造 UDP 53端口。

其实查下返回的180.168.41.175 IP,搜索下很多人都反应有类似问题。直接打开这个IP里面的内容是114。

在/etc/dnsmasq.conf添加

bogus-nxdomain=180.168.41.175


/etc/init.d/dnsmasq restart

再次dig (指定dnsmasq 服务器)

20151230224524

搞定,编辑/etc/resolv.conf

nameserver 的ip改为127.0.0.1

再次dig

20151230224748

发现不再劫持(ps:上海电信无节操。)

最后附上:

《中华人民共和国电信条例》
第五十七条 任何组织或者个人不得有下列危害电信网络安全和信息安全的行为:

(一)对电信网的功能或者存储、处理、传输的数据和应用程序进行删除或者修改;

(二)利用电信网从事窃取或者破坏他人信息、损害他人合法权益的活动;

(三)故意制作、复制、传播计算机病毒或者以其他方式攻击他人电信网络等电信设施;

(四)危害电信网络安全和信息安全的其他行为。

http://www.miit.gov.cn/n11293472/n11294912/n11296257/16519133.html

发表在 笔记 | 留下评论

记一次海淘lumia 640(附解锁教程)

黑色星期五,那天发现微软官方商城Lumia 640打折,有锁版39美元 ,实在划算啊,而且还可以向ATT申请解锁。本来我有个Nexus5不需要购买手机的,Nexus5好是好,但是最近续航越来越差,而且我是移动的卡,用不了联通的3G,每天股市开盘的时候地铁里面都没有2G信号,真的好悲催。碰到这价格决定还是剁手了。

20151210214644

 

20151222205745

转运公司用的是四方转运,好快的清关速度,当天就清关了。点击这里注册。

到手后

IMG_20151218_162157IMG_20151218_142725 IMG_20151218_142822 IMG_20151218_142857 IMG_20151218_142904

申请ATT解锁

打开ATT官网,勾选底部的按钮,点击Continue,按钮

20151222211554

邮箱推荐使用Gmail邮箱

20151222211618

查看邮件,点击确认申请链接

 

 

20151222204112

 

20151222204216 20151222204127


经过两天的等待终于等到解锁码,圣诞节以为ATT会延迟审核的,没想到速度还是挺快的

20151227121721

20151227121701

发表在 经验分享 | 4条评论

bind9安装配置

安装

sudo apt-get install bind9#debian

生成rndc KEY


sudo rndc-confgen > /etc/rndc.conf

打开/etc/rndc.conf复制生成的KEY

key "rndc-key" {
algorithm hmac-md5;
secret "2tH5sDQg2G6DyIT1sWKOog==";
};

到/etc/bind/named.conf.options

最后在该文件下面添加如下内容

controls {
inet 127.0.0.1 port 953
allow { 127.0.0.1; } keys { "rndc-key"; };
};

创建ZONE域

vim /etc/bind/named.conf.default-zones

添加如下内容


zone "example.com" {
type master;
file "/etc/bind/db.example.com";
};

sudo vim /etc/bind/db.example.com


$TTL 600
@ IN SOA localhost. root.localhost. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
86400 ) ; Negative Cache TTL
;
@ IN NS localhost.
*.example.com. IN A 192.168.1.74

重启

sudo /etc/init.d/bind9 restart

发表在 笔记 | 标签为 , , | 留下评论

新安装laravel500错误解决办法

安装完成后,打开浏览器
20151210225710

看到页面本以为成功了,但是是提示Whoops, looks like something went wrong.

打开debug模式

config/app.php

找到

'debug' => env('APP_DEBUG', false),

改为

'debug' => env('APP_DEBUG', true),

再次刷新页面

20151210230251

No supported encrypter found. The cipher and / or key length are invalid.

在命令行下面运行

/usr/local/php5.6/bin/php artisan key:generate

20151210230431

复制生成的key

将config/app.php 中的 ‘key’ => env(‘APP_KEY’, ‘SomeRandomString’), SomeRandomString 改为刚才生成的key。

再次刷新

20151210231202

成功!!!

发表在 笔记 | 标签为 , | 留下评论

wordpress使用php7报错问题

博客刚刚升级到php7发现,博客打不开,报500错误,在php.ini打开错误报告
display_errors = On
重启webserver,发现php代码报
Parse error: syntax error, unexpected ‘new’ (T_NEW) in /home/wwwroot/xxx.com/wp-content/plugins/db-cache-reloaded-fix/db-module.php on line 214

从目录来看貌似是插件报错,猜测是 DB Cache Reloaded Fix。猜测是插件不兼容引起的,随后切换到php5.6中,进入后台关闭了插件,然后切换到php7中,刷新成功。

发表在 笔记 | 标签为 , | 2条评论

php7编译安装

wget http://cn2.php.net/distributions/php-7.0.0.tar.gz
tar xvf php-7.0.0.tar.gz
cd php-7.0.0
./configure  --prefix=/usr/local/php7 --with-config-file-path=/usr/local/php7/etc --enable-fpm --with-fpm-user=www --with-fpm-group=www  --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-iconv-dir --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath  --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-mbstring --with-mcrypt --enable-ftp --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --disable-fileinfo

若出现如下错误
ext/gd/libgd/.libs/gdkanji.o: In function `do_convert’:
/root/php-7.0.0/ext/gd/libgd/gdkanji.c:349: undefined reference to `libiconv_open’
/root/php-7.0.0/ext/gd/libgd/gdkanji.c:364: undefined reference to `libiconv’
/root/php-7.0.0/ext/gd/libgd/gdkanji.c:380: undefined reference to `libiconv_close’
ext/iconv/.libs/iconv.o: In function `php_iconv_stream_filter_dtor’:
/root/php-7.0.0/ext/iconv/iconv.c:2557: undefined reference to `libiconv_close’
ext/iconv/.libs/iconv.o: In function `_php_iconv_strlen’:
/root/php-7.0.0/ext/iconv/iconv.c:755: undefined reference to `libiconv_open’
/root/php-7.0.0/ext/iconv/iconv.c:779: undefined reference to `libiconv’
/root/php-7.0.0/ext/iconv/iconv.c:813: undefined reference to `libiconv_close’
ext/iconv/.libs/iconv.o: In function `_php_iconv_appendl’:
/root/php-7.0.0/ext/iconv/iconv.c:474: undefined reference to `libiconv’
/root/php-7.0.0/ext/iconv/iconv.c:508: undefined reference to `libiconv’
ext/iconv/.libs/iconv.o: In function `_php_iconv_mime_decode’:
/root/php-7.0.0/ext/iconv/iconv.c:1505: undefined reference to `libiconv_open’
/root/php-7.0.0/ext/iconv/iconv.c:1998: undefined reference to `libiconv_close’
/root/php-7.0.0/ext/iconv/iconv.c:2001: undefined reference to `libiconv_close’
/root/php-7.0.0/ext/iconv/iconv.c:1616: undefined reference to `libiconv_close’
/root/php-7.0.0/ext/iconv/iconv.c:1619: undefined reference to `libiconv_open’
ext/iconv/.libs/iconv.o: In function `_php_iconv_substr’:
/root/php-7.0.0/ext/iconv/iconv.c:876: undefined reference to `libiconv_open’
/root/php-7.0.0/ext/iconv/iconv.c:900: undefined reference to `libiconv’
/root/php-7.0.0/ext/iconv/iconv.c:955: undefined reference to `libiconv_close

则编辑Makefile文件
找到
EXTRA_LIBS = -lcrypt -lz -lcrypt -lrt -lmcrypt -lltdl -lpng -lz -ljpeg -lcurl -lz -lrt -lm -ldl -lnsl -lrt -lxml2 -lz -lm -lssl -lcrypto -lcurl -lxml2 -lz -lm -lssl -lcrypto -lfreetype -lxml2 -lz -lm -lxml2 -lz -lm -lcrypt -lxml2 -lz -lm -lxml2 -lz -lm -lxml2 -lz -lm -lxml2 -lz -lm -lssl -lcrypto -lcrypt
在最后添加 -liconv
然后

make && make install

发表在 笔记 | 标签为 , | 留下评论

mysql编译安装

tar xvf mysql-5.6.23.tar.gz
cd mysql-5.6.23

cmake编译

cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/data/mysql/data \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=/tmp/mysql/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci

make && make install

创建mysql组和mysql用户

groupadd mysql
useradd -g mysql mysql

修改访问权限

chown -R mysql:mysql /usr/local/mysql

初始化配置

cd /usr/local/mysql 
scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql  初始化db

启动mysql服务

cp support-files/mysql.server /etc/init.d/mysql
chkconfig mysql on
service mysql start  --启动MySQL

错误处理办法
— Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH)
CMake Error at cmake/readline.cmake:85 (MESSAGE):
Curses library not found. Please install appropriate package,

remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name is libncurses
Call Stack (most recent call first):
cmake/readline.cmake:128 (FIND_CURSES)
cmake/readline.cmake:202 (MYSQL_USE_BUNDLED_EDITLINE)
CMakeLists.txt:409 (MYSQL_CHECK_EDITLINE)

— Configuring incomplete, errors occurred!

apt-get install ncurses-dev

. * The server quit without updating PID file (/data/mysql/data/ubuntu.pid).

mkdir -p  /usr/local/mysql/data
vim my.cnf 

添加
datadir = /usr/local/mysql/data
参数

发表在 笔记 | 标签为 , | 留下评论

cc: internal compiler error: Killed解决办法

cc: internal compiler error: Killed (program cc1)
Please submit a full bug report,
with preprocessed source if appropriate.
See for instructions.
make: *** [ext/date/lib/parse_date.lo] Error 1

sudo mkdir -p /var/cache/swap/
sudo dd if=/dev/zero of=/var/cache/swap/swap0 bs=1M count=512
sudo chmod 0600 /var/cache/swap/swap0
sudo mkswap /var/cache/swap/swap0 
sudo swapon /var/cache/swap/swap0

更改前
20151127235608

更改后
20151127235633

猜测可能是由于内存太小造成的,添加swap就好

发表在 笔记 | 标签为 | 留下评论

configure: error: Cannot find OpenSSL’s libraries解决办法

apt-get install pkg-config

https://bugs.php.net/bug.php?id=69510

发表在 笔记 | 标签为 , | 留下评论

解决Apache无法解析PHP问题

编辑httpd.conf文件
添加如下代码

LoadModule php5_module  modules/libphp5.so
AddType application/x-httpd-php .php
DirectoryIndex index.php index.htm index.html

发表在 笔记 | 标签为 , | 留下评论

解决Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1 for ServerNam

vim /usr/local/apache2/conf/httpd.conf

编辑httpd.conf配置文件,找到
ServerName www.example.com:80
去掉注释,改为
ServerName 127.0.0.1:80

/usr/local/apache2/bin/apachectl restart

发表在 笔记 | 标签为 , | 留下评论

ext/iconv/.libs/iconv.o: In function `_php_iconv_appendl’:解决办法

Capture

编辑Makefile,找到如下一段

EXTRA_LIBS = -lcrypt -lz -lresolv -lcrypt -lrt -lmcrypt -lltdl -lpng -lz -ljpeg -lcurl -lz -lrt -lm -ldl -lnsl -lxml2 -lssl -lcrypto -lcurl -lxml2 -lssl -lcrypto -lfreetype -lz -lxml2 -lxml2 -lcrypt -lxml2 -lxml2 -lxml2 -lxml2 -lssl -lcrypto -lcrypt

在最后添加 -liconv参数,保存退出。

make && make install

发表在 笔记 | 标签为 , | 留下评论

启动apache报undefined symbol: php_escape_html_entities解决办法

有说版本造成的,我的版本是apache 2.2 编译的是php5.3没有理由不兼容,试试下面的编译参数吧,我测试成功。

./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc  --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd  --with-iconv-dir --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-magic-quotes --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-mbstring --with-mcrypt --enable-ftp --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --disable-fileinfo  --enable-debug --enable-mbstring --with-pear --disable-cgi

发表在 笔记 | 留下评论

Could not initialize SDL(No available video device) – exiting解决办法

qemu-system-i386  -hda winxp.img -m 512M -net nic,model=virtio -net user -redir tcp:3389::3389

qemu-system-i386 -curses -hda winxp.img -m 512M -net nic,model=virtio -net user -redir tcp:3389::3389

发表在 笔记 | 标签为 | 留下评论

php编译xdebug扩展

最近线上网站性能需要优化,需要编译xdebug来查看哪些需要优化的地方,下面记录下在linux下如何编译安装xdebug扩展

1.到http://xdebug.org/download.php下载合适的版本,我的版本是php5.2是linux 环境需要下载source code 来编译
下载地址,http://xdebug.org/files/xdebug-2.2.5.tgz

2.解压

tar xvf xdebug-2.2.5.tgz 
cd xdebug-2.2.5/

3.编译安装

./configure --with-php-config=/usr/local/php/bin/php-config
make && make install

成功如下图
xdebug

4.将so文件引入到php.ini中
Capture

5.重启webserver

6.phpinfo验证

phpinfo

发表在 笔记 | 标签为 , | 留下评论

AttributeError:’module’ object has no attribute ‘AF_INET’解决办法

import socket;
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

运行的时候发现报如下错误消息
AttributeError:’module’ object has no attribute ‘AF_INET’
python在import的时候是根据脚本名字导入的,比如上面导入import socket则会去搜索socket.py文件,而我当前的脚本名字也是socket.py所有造成这样错误,解决办法是更改文件名。

发表在 笔记 | 标签为 | 留下评论

win7升级win10代码80240020解决办法

20150801073140

 

解决办法:

1.删除C:\Windows\SoftwareDistribution\Download\里面所有文件

2.使用管理员权限运行cmd,执行wuauclt.exe /updatenow命令

20150801073326

下载更新的过程中,C盘下面有个隐藏的$Windows.~BT目录,会渐渐变大,有时候处于140M 就不动了。别担心。下载还在继续。你可以通过路由器或者网络监控软件查看下行速率,如果一直处于高峰说明还在下载。(请无视本人的宽带速率)

20150802092312

20150802092338

无标题

发表在 经验分享 | 留下评论

ubuntu使用rz/sz传输文件

apt-get install lrzsz

rz -y

不覆盖请直接使用 rz 命令

sz test.zip

发表在 笔记 | 标签为 | 留下评论

zend studio 12.5破解

  1. 安装官方原版zend studio 12.5程序
  2. 下载破解补丁,下载地址
  3. 解压后将com.zend.verifier_12.5.1.v20150514-2003.jar,复制到安装目录中的plugins目录中
  4. 启动zend studio将注册码中的一行填入,我用的第一行,亲测可用。

 

发表在 笔记 | 留下评论

搭建GIT服务器使用ssh访问

yum install git
sudo adduser git

禁止git登录

vim /etc/passwd

git:x:503:503::/home/git:/bin/bash
改为
git:x:503:503::/home/git:/usr/bin/git-shell

创建项目

cd /home/git
mkdir wx
cd wx
git init --bare wx.git

使用puttygen生成密钥
软件下载地址
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
找到pageant.exe
打开后点击 Generate

然后在窗口滑动鼠标,进度条会不停走动,直到100%的时候显示如下

key

将 key 复制到远程服务器中的

/home/git/.ssh/authorized_keys

private.ppk私钥自己妥善保管

在客户端使用如下设置

git_set

url : ssh://git@ip:port/home/git/wx/wx.git
putty密:选择刚才保存的私钥

发表在 笔记 | 标签为 | 留下评论