centos安装socks server 5


centos安装ss5代理并iptables指定出口IP

  1. wget http://jaist.dl.sourceforge.net/sourceforge/ss5/ss5-3.6.1-1.tar.gz
  2. tar zxvf ss5-3.6.1-1.tar.gz
  3. cd ss5-3.6.1
  4. ./configure 
  5. make
  6. make install
  7. cd /etc/opt/ss5/
  8. cp ss5.conf ss5.conf.bak && cp ss5.passwd ss5.passwd.bak
  9.  
  10. 关闭匿名代理,改为需要验证
  11. auth    0.0.0.0/0               -               -
  12. 修改为
  13. auth    0.0.0.0/0               -               u
  14.  
  15. 启动ss5
  16. service ss5 start
  17.  
  18. 拿掉socks4
  19. cd /usr/lib/ss5/
  20. mv mod_socks4.so mod_socks4.so.bak
  21.  
  22. 比较土的办法,写信问作者,千篇一律的回复
  23. 官方文档上route5个选项,而配置文件里只有4
  24.  
  25. 1 ) 添加用户:
  26. useradd user -s /bin/false -p pwd
  27.  
  28. 2 ) 得到用户UID
  29. awk -F: '/^user:/{print $1,$4}'  /etc/passwd
  30.  
  31. 3 ) 定义iptables
  32. iptables -t mangle -A OUTPUT -m owner --uid-owner USER_UID -j MARK --set-mark USER_UID
  33. iptables -t nat -A POSTROUTING -m mark --mark USER_UID -j SNAT --to-source outgoing-IP
  34.  
  35. 4 ) 已用户模式启动ss5,绑定iptables出口IP
  36. ss5 -u user -b outgoing-IP:port

centos安装dante socks5代理软件


centos安装dante为socks5代理

  1. wget -c ftp://ftp.inet.no/pub/socks/dante-1.2.0.tar.gz
  2. tar zxvf dante-1.2.0.tar.gz   
  3. cd dante-1.2.0
  4. ./configure
  5. make
  6. make install
  7. useradd sockd
  8. passwd sockd #修改sockd的密码
  9. 修改 /etc/passwdsockdbash改为false
  10. mkdir /var/log/sockd
  11. touch /var/log/sockd/sockd.log
  12. sockd & #启动sockd代理

关于php的session_start的问题


Cannot send session cookie - headers already sent
网上很多文章,包括php的官方网站上写的session_start(); 之前不能有任何输出,可惜弄了半天都不行.
最后才知道跟 “session.save_path” 和 “session.auto_start” 都没有关系,把php.ini里面的”output_buffering” 改为on,重启下apache就可以了.

批量封掉危险的IP网段


根据dshield.org的黑名单,可得到一堆危险的网段,中国的IP也占了一些,我看估计都是肉鸡.
防止这些危险的机器向我们发起攻击,决定把这些危险的IP网段封掉(debian测试通过).
当然,iptables也能做,但是在大流量攻击面前,无效路由显得更轻松,不会像iptables那样占用大量资源!

  1. #!/bin/bash
  2. # filename:  block_IPs.sh
  3. # auth: baiqiuyi.com
  4. curl "http://www.spamhaus.org/drop/drop.lasso"|awk 'NR>1{print $1}' >ip
  5. if [ $? -eq 0 ];then
  6. while read ip
  7.    do
  8. /usr/bin/ipcalc $ip|sed -n '/Address/p;/Netmask/p'|sed -r 's/.*( ([0-9]{1,3}\.){3}[0-9]{1,3}).*/\1/'|sed 'N;s/\n/ netmask /g;s/^/route add -net/;s/$/ reject/'|bash
  9.    done < ip
  10.    rm -f ip
  11. exit 0
  12.  fi

附: ipcalc下载地址

linux命令行下wget下载ftp文件


wget -nH -m –ftp-user=user –ftp-password=passwd ftp://ipaddress/*
-nH不建立以IP为名的文件夹, -m是mirror镜像

52 12345»...52