显示标签为“debian”的博文。显示所有博文
显示标签为“debian”的博文。显示所有博文

2016年7月6日星期三

openvpn云免流之debian系统搭建全能云免服务器

免流所需要的设备 可以搭openvpn的vps一台 android iphone的手机
vps系统是debian vps先更改时区dpkg-reconfigure tzdata

1 安装软件 apt-get update&&apt-get dist-upgrade
&&apt-get install openvpn squid3

2 用easy-rsa生成服务端证书
cp -r /usr/share/easy-rsa/ /etc/openvpn/
cd /etc/openvpn/easy-rsa/2.0
source vars
./clean-all
./build-ca

3 生成服务器证书和密钥
./build-key-server server #server服务器名称
期间也会提示输入一些信息,直接回车默认,选择[Y/n]的都选Y。

4 生成客户端证书和密钥:(client为客户端名字可以自定义,注意这里的客户端名字不能与上步的服务端名字相同)
./build-key client
期间也会提示输入一些信息,直接回车默认,选择[Y/n]的都选Y。 若要生成多个客户端的证书和密钥,将client改成另外的名字重复操作即可。所有生成的证书和密钥存都放在/etc/openvpn/easy-rsa/2.0/keys/下面。

5 生成Diffie Hellman参数:
./build-dh

6 配置openvpn 服务器密钥
把2 3 生成的文件复制到 /etc/openvpn下
cd /etc/openvpn/easy-rsa/keys/
cp ca.crt dh2048.pem server.crt server.key /etc/openvpn/

7 配置openvpn 服务器
将/usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz文件复制到/etc/openvpn目录,并解压
# cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn
# gzip -d /etc/openvpn/server.conf.gz
修改 /etc/openvpn/server.conf 文件
local ip
dh dh2048.pem
push "dhcp-option DNS 208.67.222.222"
push "dhcp-option DNS 208.67.220.220"
client-to-client
duplicate-cn
cipher AES-128-CBC
log-append  openvpn.log
auth-nocache

8 修改 /etc/sysctl.conf内容为
 net.ipv4.ip_forward=1 运行sysctl -p 启动





8 设置IP转发
若Xen或KVM的请输入:(eth0要根据具体的网卡标示来,可以通过ifconfig查看)
iptables -t nat -A POSTROUTING -s 10.8.0.0/16 -o eth0 -j MASQUERADE
若OpenVZ的请输入:(11.22.33.44是你VPS的IP)
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j SNAT --to-source x.x.x.x # x.x.x.x为服务器IP
应对GFW封锁,我们要忽略RST包

iptables -A INPUT -p tcp --tcp-flags RST RST -j DROP
iptables -I INPUT -p tcp --tcp-flags ACK,SYN,FIN,RST,URG,PSH RST -j DROP
为防止重启后转发丢失,把代码写进 /etc/rc.local中

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j SNAT --to-source x.x.x.x
iptables -A INPUT -p tcp --tcp-flags RST RST -j DROP
iptables -t filter -A OUTPUT -p tcp --tcp-flags RST RST -j DROP
/etc/init.d/dnsmasq restart

exit 0


9 配置openvpn客户端文件
mkdir /home/openvpn-client
cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf /home/openvpn-client/client.ovpn
cd /etc/openvpn/easy-rsa/keys/
cp -r ./ca.crt client.key client.crt /home/openvpn-client/
cd /home/openvpn-client/


将密钥文件添加到client.ovpn里

echo "" >> client.ovpn
echo "" >>client.ovpn
cat ca.crt | grep -A 100 "BEGIN CERTIFICATE" | grep -B 100 "END CERTIFICATE" >> client.ovpn
echo "
" >> client.ovpnecho "" >> client.ovpn
cat client.crt | grep -A 100 "BEGIN CERTIFICATE" | grep -B 100 "END CERTIFICATE" >> client.ovpn
echo "
" >> client.ovpnecho "" >> client.ovpn
cat client.key | grep -A 100 "BEGIN PRIVATE KEY" | grep -B 100 "END PRIVATE KEY" >> client.ovpn
echo "
" >> client.ovpn


以下是cmcc 免流代码
mssfix 1400
auth-nocache
http-proxy 服务器IP 8080
http-proxy-retry
http-proxy-timeout 1
http-proxy-option EXT1 "GET http://rd.go.10086.cn"
http-proxy-option EXT1 "POST http://rd.go.10086.cn"
http-proxy-option EXT1 "X-Online-Host: rd.go.10086.cn"
http-proxy-option EXT1 "Host: rd.go.10086.cn"
http-proxy-option AGENT "Iphone 9x"

;script-security 3 system
;route-up "net stop dnscache"
;route-up "net start dnscache"
;route-up "ipconfig /flushdns"
;route-up "ipconfig /registerdns"
ns-cert-type server     # 要求客户端证书 nsCertType 为 server
remote-cert-tls server   # 检查客户端证书 key usage 和 extended key usage


您能浏览我的网站,能让我高兴一整天!

2014年6月4日星期三

linux 卸载软件包最好的方法

以前卸载软件用了统配符,然后删掉了好多软件,只有一个桌面,输入法文件的关闭按钮都没有,最后只能重装系统。
后来就在网上找软件的卸载方法,很多都复杂,后来意外找到一个我个人感觉很好的方法,在这里记录下来。
先用dpkg -l|grep apache 查一下相关软件包 然后dpkg -P 包名就卸载完成了。

apt-get autoremove 包名 等同dpkg -r 包名
然后 find / -name apache2 查看apache文件夹删除

2014年4月30日星期三

denyhosts---一个成功的研究

vps开了22端口和3389,导致auth.log文件有很多记录。
所以装了denyhosts来阻挡一些扫描器的功击。
#apt-get install denyhosts

安装后发现自己的IP在hosts.deny里时可以用下面的解决方法
修改/etc/denyhosts.conf文件
RESET_ON_SUCCESS = no 改为RESET_ON_SUCCESS = yes
上面的意思是如果一个ip登陆成功后,失败的登陆计数是否重置为0
#/etc/init.d/rsyslog stop
#/etc/init.d/denyhosts stop
#echo ''>/var/log/auth.log
#/etc/init.d/rsyslog start
#/etc/init.d/denyhosts start
删除hosts.deny 里自己的IP记录

2013年7月19日星期五

debian系统用apt-get安装lnmp,然后再安装wordpress(纯文字版)

1,首先安装所需要的包(有些系统可能会安装apache,要先把apache删除,删除教程)
apt-get install php5-fpm nginx mysql-server php5-mysql zip bsdutils
安装过程中输入mysqa密码。
2,启动nginx,找开浏览器测试是否安装成功,命令:
service nginx start
然后在浏览器中输入IP看是否出现nginx安装成功页。

11,编辑nginx文件 命令:
vi /etc/nginx/site-enabled/default
把文件里的#try-files $url/ index.html替换为try-files $url/ index.php
把#location ~\.php$ { 前面的#去掉
里面只留下开头为fastcgi-split-path-info, fastcgi-pass fastcgi-index
include fastcgi-params 的内容,并把前面#去掉,把下面的#}的#也去掉

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ \.php$ {
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
        #       # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
        #
        #       # With php5-cgi alone:
        #       fastcgi_pass 127.0.0.1:9000;
        #       # With php5-fpm:
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                include fastcgi_params;
        }

在/usr/share/nginx/www下建立index.php文件 文件内容为
phpinfo();
?>
保存,然后打开php测试页看php是否成功.
下面安装wordpress
连接数据库建立数据库,
mysql -u root -p 输入密码,
建立blog数据库
create database blog;
exit退出
cd /usr/share/nginx/www, 下载wordpress,命令 wget http://wordpress.org/latest.zip
unzip latest.zip
mv wordpress/* .
rmdir wordpress/
rm index.html

设置权限,命令:
cd ..
chown www-data.www-data -R www/


lamp的安装方法是
$sudo apt-get install apache2 mysql-server php5 php5-mysql phpmyadmin

2012年9月7日星期五

修改Linux网卡MAC地址


ifconfig eth0 down
ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE
ifconfig eht0 up

使用rcconf启用和禁用Debian / Ubuntu的服务



Debian / Ubuntu的Linux系统中的系统的安全性取决于系统服务。如果你需要一个Web服务器(Apache服务)提供网页服务,你必须安装并启用apache服务。你不需要的服务,您应该把它关闭,1)降低安全风险,2)释放系统资源。
关闭服务的方法有很多。可以安装update-rc.d和rcconf。update-rc.d,可直接使用。rcconf包需要安装后才能使用。rcconf是Debian的运行级别配置工具。配置系统服务与系统的运行级别。它的开关的开/关的服务。这是一个比update-rc.d好用的命令。
下面是update-rc命令的用法
您需要安装rcconf包。
apt-get install rcconf一旦rcconf安装包,您可以启动应用程序通过rcconf直接输入。应用程序带来了一个非常好的测试用户界面,您可以使用箭头键和空格键在键盘上切换和关闭任何服务。完成后,移动到然后按Enter键。你完成了。下一次系统重新启动后,你将有新的配置生效。
下面是update-rc命令的用法
1、删除一个服务
如果你想手动的完全禁用Apache2服务,你需要删除其中的所有在/etc/rcX.d中的单一链路。但是如果使用update-rc.d,则非常简单:
update-rc.d -f apache2 remove
参数-f是强制删除符号链接,即使/etc/init.d/apache2仍然存在。
Note:这个命令将禁止该服务,但是如果你升级该服务至最新版本,则又会自动变为启用状态。如果你想在服务升级后仍然保持被禁用。应该执行如下的命令(注意后面的“.”):
update-rc.d apache2 stop 80 0 1 2 3 4 5 6 .
     2、增加一个服务
如果你想重新添加这个服务并让它开机自动执行,你需要执行以下命令:
update-rc.d apache2 defaults
并且可以指定该服务的启动顺序:
update-rc.d apache2 defaults 90
还可以同时指定kill时的序列:
update-rc.d apache2 defaults 20 80
上句中,20为启动时的序列,80为kill时的序列。update-rc.d命令不仅适用于系统服务,还可以用于对脚本的控制:
update-rc.d scriptname defaults

可以看到用rcconf还是很方便的。

Debian中Empathy支持更多协议包括QQ

在Debian6中,empathy只支持很少的协议,Google Talk, Facebook和Jabber。
如何让Empathy支持诸如Windows Live(MSN), yahoo! Messenger, QQ之类的协议呢?其实很简单,方法如下:

sudo apt-get install telepathy-haze

但是里面的QQ版本有点老,你可以在这里下载最新qq版本
http://code.google.com/p/libqq-pidgin/downloads/list
解压
7z e ./libqq.so_0.71_i386.7z
cp ./libqq.so /usr/lib/purple-2/
后就可以使用QQ

2012年9月6日星期四

tar命令详解

tar是linux最常用的命令,网络上下载的文件大部分这种格式。下面我们来说说他最常的参数
红色标记为最常用的选项。

格式:  tar  选项  文件目录列表
功能:  对文件目录进行打包备份


选项:
-c  建立新的归档文件
-r  向归档文件末尾追加文件
-x  从归档文件中解出文件
-O  将文件解开到标准输出
-v  处理过程中输出相关信息
-f  对普通文件操作
-z  调用gzip来压缩归档文件,与-x联用时调用gzip完成解压缩
-Z  调用compress来压缩归档文件,与-x联用时调用compress完成解压缩  


例如:
1.将当前目录下所有.txt文件打包并压缩归档到文件this.tar.gz,我们可以使用
tar czvf this.tar.gz ./*.txt 
2.将当前目录下的this.tar.gz中的文件解压到当前目录我们可以使用
tar xzvf this.tar.gz ./