my blog my blog

Category: 网络杂记
OpenVZ VPS的pptp服务安装注意

 

iptables -t nat -A POSTROUTING -s  172.16.36.0/24 -j SNAT –to-source vps网关这句话最好加到/etc/rc.local中,否则可能无法转发,及时iptables-rules里面有。

  1. cat /dev/ppp 
  2. cat: /dev/ppp: No such device or address 
  3. cat /dev/net/tun 
  4. cat: /dev/net/tun: File descriptor in bad state 

  是需要检查的。

网卡可能不是eth0,可能是venet0,而且还可能是venet0:0,看好,看好。

安装脚步for ubuntu pptp vpn

  1. #!/bin/bash 
  2.  
  3. if [ $(id -u) != "0" ]; then 
  4.     printf "Error: You must be root to run this tool!\n" 
  5.     exit 1 
  6. fi 
  7. clear 
  8. printf " 
  9. #################################################### 
  10. #                                                  # 
  11. # This is a Shell-Based tool of pptp installation  # 
  12. # Version: 0.1                                     # 
  13. # Author: Bruce Ku                                 # 
  14. # For Debian/Ubuntu 32bit and 64bit                # 
  15. #                                                  # 
  16. #################################################### 
  17. vpsip=`ifconfig  | grep 'inet addr:'| grep -v '127.0.0.1' | cut -d: -f2 | awk 'NR==1 { print $1}'` 
  18. apt-get update 
  19. apt-get --purge remove pptpd ppp 
  20. rm -rf /etc/pptpd.conf 
  21. rm -rf /etc/ppp 
  22. apt-get install -y ppp 
  23. apt-get install -y pptpd 
  24. apt-get install -y iptables logrotate tar cpio perl 
  25. rm -r /dev/ppp 
  26. mknod /dev/ppp c 108 0 
  27. echo 1 > /proc/sys/net/ipv4/ip_forward  
  28. echo "mknod /dev/ppp c 108 0" >> /etc/rc.local 
  29. echo "echo 1 > /proc/sys/net/ipv4/ip_forward" >> /etc/rc.local 
  30. echo "net.ipv4.ip_forward = 1>> /etc/sysctl.conf 
  31. echo "localip 172.16.36.1" >> /etc/pptpd.conf 
  32. echo "remoteip 172.16.36.2-254" >> /etc/pptpd.conf 
  33. echo "ms-dns 8.8.8.8" >> /etc/ppp/options 
  34. echo "ms-dns 8.8.4.4" >> /etc/ppp/options 
  35. echo "vpn pptpd 123456 *" >> /etc/ppp/chap-secrets 
  36. iptables -t nat -A POSTROUTING -s 172.16.36.0/24 -j SNAT --to-source `ifconfig  | grep 'inet addr:'| grep -v '127.0.0.1' | cut -d: -f2 | awk 'NR==1 { print $1}'` 
  37. iptables -A FORWARD -p tcp --syn -s 172.16.36.0/24 -j TCPMSS --set-mss 1356 
  38. iptables -t nat -A POSTROUTING -s 172.16.36.0/24 -j SNAT --to-source "$vpsip" 
  39. iptables-save > /etc/iptables-rules 
  40. printf " 
  41. #################################################### 
  42. add my Yu 
  43. #################################################### 
  44. echo "pre-up iptables-restore < /etc/iptables-rules" >> /etc/network/interfaces 
  45. printf " 
  46. #################################################### 
  47. add my Yu 
  48. #################################################### 
  49. /etc/init.d/pptpd restart 
  50. printf " 
  51. #################################################### 
  52. #                                                  # 
  53. # This is a Shell-Based tool of pptp installation  # 
  54. # Version: 0.1                                     # 
  55. # Author: Bruce Ku                                 # 
  56. # For Debian/Ubuntu 32bit and 64bit                # 
  57. #                                                  # 
  58. #################################################### 
  59. ServerIP:$vpsip 
  60. username:vpn 
  61. password:123456 
  62.  

安装完成重启

Feedly订阅导出

 

Feedly订阅导出直接访问网址:http://feedly.com/i/opml

64位版本的SocksCap64代理程序介绍与推荐

 

奶牛最近在找一个好用的代理程序,支持socks5的tcp和udp两种协议,并且支持64位win8系统,终于最后找到了这个sockscap64.

首先很难的,作者是国人,并且提倡软件免费,并打算一直免费提供sockscap64这软件。sockscap64目前支持socks代理和http代理,并且支持tcp和udp,Sockscap64是基于远程DLL注入技术, 通过修改系统Winsock的API后从而使运行于Sockscap64的网络软件通过SOCKS代理访问网络; 从而实现网络加速或突破局域网限制的功能。经过测试udp功能也比较稳定。

特此推荐,下载http://www.sockscap64.com/software/SocksCap64-setup-2.6.exe

Ubuntu下socks5代理服务器dante-server的安装与配置

 

安装

  1. apt-get install dante-server 

配置文件在/etc/danted.conf

  1. vim /etc/danted.conf 
  2. # $Id: sockd.conf,v 1.43 2005/12/26 16:35:26 michaels Exp $ 
  3. # A sample danted.conf 
  4. # The configfile is divided into three parts; 
  5. #    1) serversettings 
  6. #    2) rules 
  7. #    3) routes 
  8. # The recommended order is: 
  9. #   Serversettings: 
  10. #               logoutput 
  11. #               internal 
  12. #               external 
  13. #               method 
  14. #               clientmethod 
  15. #               users 
  16. #               compatibility 
  17. #               extension 
  18. #               connecttimeout 
  19. #               iotimeout 
  20. #               srchost 
  21. #  Rules: 
  22. #       client block/pass 
  23. #               from to 
  24. #               libwrap 
  25. #               log 
  26. #     block/pass 
  27. #               from to 
  28. #               method 
  29. #               command 
  30. #               libwrap 
  31. #               log 
  32. #               protocol 
  33. #               proxyprotocol 
  34. #  Routes: 
  35.  
  36. # the server will log both via syslog, to stdout and to /var/log/lotsoflogs 这行是日志输出,输出到syslog stdout和lotsoflogs里面
  37. logoutput: syslog stdout /var/log/lotsoflogs 
  38.  
  39. # The server will bind to the address 10.1.1.1, port 1080 and will only 
  40. # accept connections going to that address. 
  41. #internal: 10.1.1.1 port = 1080 
  42. # Alternatively, the interface name can be used instead of the address. 这里设置eth0为网卡,端口1080
  43. internal: eth0 port = 1080 
  44.  
  45. # all outgoing connections from the server will use the IP address 
  46. # 195.168.1.1 
  47. #external: 192.168.1.1,这里是设置流量出口使用的ip,也是用eth0网卡的
  48. external:eth0
  49. # list over acceptable methods, order of preference. 
  50. # A method not set here will never be selected. 
  51. # If the method field is not set in a rule, the global 
  52. # method is filled in for that rule. 
  53.  
  54. # methods for socks-rules. 设置方式为用户名模式
  55. method: username 
  56. #methods for client-rules. 
  57. clientmethod: none 
  58.  
  59. #or for PAM authentification 
  60. #method: pam 
  61.  
  62. # An important section, pay attention. 
  63.  
  64. # when doing something that can require privilege, it will use the 
  65. # userid: 
  66. user.privileged: root 
  67.  
  68. # when running as usual, it will use the unprivileged userid of: 
  69. user.notprivileged: nobody 
  70.  
  71. # If you compiled with libwrap support, what userid should it use 
  72. # when executing your libwrap commands?  "libwrap". 
  73. user.libwrap: nobody 
  74.  
  75.  
  76. # some options to help clients with compatibility: 
  77.  
  78. # when a client connection comes in the socksserver will try to use 
  79. # the same port as the client is using, when the socksserver 
  80. # goes out on the clients behalf (external: IP address). 
  81. # If this option is set, Dante will try to do it for reserved ports aswell. 
  82. # This will usually require user.privileged to be set to "root". 
  83. compatibility: sameport 
  84.  
  85. # If you are using the bind extension and have trouble running servers 
  86. # via the server, you might try setting this.  The consequences of it 
  87. # are unknown. 
  88. compatibility: reuseaddr 
  89.  
  90. # The Dante server supports some extensions to the socks protocol. 
  91. # These require that the socks client implements the same extension and 
  92. # can be enabled using the "extension" keyword. 
  93. # enable the bind extension. 
  94. extension: bind 
  95.  
  96.  
  97. # misc options. 
  98.  
  99. # how many seconds can pass from when a client connects til it has 
  100. # sent us it's request?  Adjust according to your network performance 
  101. # and methods supported. 
  102. #connecttimeout: 30   # on a lan, this should be enough if method is "none". 
  103.  
  104. # how many seconds can the client and it's peer idle without sending 
  105. # any data before we dump it?  Unless you disable tcp keep-alive for 
  106. # some reason, it's probably best to set this to 0, which is 
  107. # "forever". 
  108. #iotimeout: 0 # or perhaps 86400, for a day. 
  109.  
  110. # do you want to accept connections from addresses without 
  111. # dns info?  what about addresses having a mismatch in dnsinfo? 
  112. #srchost: nounknown nomismatch 
  113.  
  114. # The actual rules.  There are two kinds and they work at different levels. 
  115. # The rules prefixed with "client" are checked first and say who is allowed 
  116. # and who is not allowed to speak/connect to the server.  I.e the 
  117. # ip range containing possibly valid clients. 
  118. # It is especially important that these only use IP addresses, not hostnames, 
  119. # for security reasons. 
  120. # The rules that do not have a "client" prefix are checked later, when the 
  121. # client has sent its request and are used to evaluate the actual 
  122. # request. 
  123. # The "to:" in the "client" context gives the address the connection 
  124. # is accepted on, i.e the address the socksserver is listening on, or 
  125. # just "0.0.0.0/0" for any address the server is listening on. 
  126. # The "to:" in the non-"client" context gives the destination of the clients 
  127. # socksrequest. 
  128. # "from:" is the source address in both contexts. 
  129.  
  130.  
  131. # the "client" rules.  All our clients come from the net 10.0.0.0/8. 
  132.  
  133. # Allow our clients, also provides an example of the port range command. 设置客户可以通过任何ip登陆,访问任何ip
  134. client pass { 
  135.         from: 0.0.0.0/0 to: 0.0.0.0/0 
  136. #       method: rfc931 # match all idented users that also are in passwordfile 
  137.  
  138. # This is identical to above, but allows clients without a rfc931 (ident) 
  139. # too.  In practise this means the socksserver will try to get a rfc931 
  140. # reply first (the above rule), if that fails, it tries this rule. 
  141. #client pass { 
  142. #       from: 10.0.0.0/8 port 1-65535 to: 0.0.0.0/0 
  143. #} 
  144.  
  145.  
  146. # drop everyone else as soon as we can and log the connect, they are not 
  147. # on our net and have no business connecting to us.  This is the default 
  148. # but if you give the rule yourself, you can specify details. 
  149. #client block { 
  150. #       from: 0.0.0.0/0 to: 0.0.0.0/0 
  151. #       log: connect error 
  152. #} 
  153.  
  154.  
  155. # the rules controlling what clients are allowed what requests 
  156.  
  157. # you probably don't want people connecting to loopback addresses, 
  158. # who knows what could happen then. 
  159. #block { 
  160. #       from: 0.0.0.0/0 to: 127.0.0.0/8 
  161. #       log: connect error 
  162. #} 
  163.  
  164. # the people at the 172.16.0.0/12 are bad, no one should talk to them. 
  165. # log the connect request and also provide an example on how to 
  166. # interact with libwrap. 
  167. #block { 
  168. #       from: 0.0.0.0/0 to: 172.16.0.0/12 
  169. #       libwrap: spawn finger @%a 
  170. #       log: connect error 
  171. #} 
  172.  
  173. # unless you need it, you could block any bind requests. 
  174. #block { 
  175. #       from: 0.0.0.0/0 to: 0.0.0.0/0 
  176. #       command: bind 
  177. #       log: connect error 
  178. #} 
  179.  
  180. # or you might want to allow it, for instance "active" ftp uses it. 
  181. # Note that a "bindreply" command must also be allowed, it 
  182. # should usually by from "0.0.0.0/0", i.e if a client of yours 
  183. # has permission to bind, it will also have permission to accept 
  184. # the reply from anywhere. 
  185. #pass { 
  186. #       from: 10.0.0.0/8 to: 0.0.0.0/0 
  187. #       command: bind 
  188. #       log: connect error 
  189. #} 
  190.  
  191. # some connections expect some sort of "reply", this might be 
  192. # the reply to a bind request or it may be the reply to a 
  193. # udppacket, since udp is packetbased. 
  194. # Note that nothing is done to verify that it's a "genuine" reply, 
  195. # that is in general not possible anyway.  The below will allow 
  196. # all "replies" in to your clients at the 10.0.0.0/8 net. 
  197. #pass { 
  198. #       from: 0.0.0.0/0 to: 10.0.0.0/8 
  199. #       command: bindreply udpreply 
  200. #       log: connect error 
  201. #} 
  202.  
  203.  
  204. # pass any http connects to the example.com domain if they 
  205. # authenticate with username. 
  206. # This matches "example.com" itself and everything ending in ".example.com". 
  207. #pass { 
  208. #       from: 10.0.0.0/8 to: .example.com port = http 
  209. #       log: connect error 
  210. #       method: username 
  211. #} 
  212.  
  213.  
  214.  
  215.  
  216. # block any other http connects to the example.com domain. 
  217. #block { 
  218. #       from: 0.0.0.0/0 to: .example.com port = http 
  219. #       log: connect error 
  220. #} 
  221.  
  222. # everyone from our internal network, 10.0.0.0/8 is allowed to use 
  223. # tcp and udp for everything else. 设置协议支持tcp和udp
  224. pass { 
  225.         from: 0.0.0.0/0 to: 0.0.0.0/0 
  226.         protocol: tcp udp 
  227.  
  228. # last line, block everyone else.  This is the default but if you provide 
  229. # one  yourself you can specify your own logging/actions 
  230. #block { 
  231. #       from: 0.0.0.0/0 to: 0.0.0.0/0 
  232. #       log: connect error 
  233. #} 
  234.  
  235. # route all http connects via an upstream socks server, aka "server-chaining". 
  236. #route { 
  237. # from: 10.0.0.0/8 to: 0.0.0.0/0 port = http via: socks.example.net port = socks 
  238. #} 

配置完成,

  1. /etc/init.d/danted start 

进行启动。登陆是用本机用户名和密码即可。建议将用户的shell设置为nologin

Goagent部署失败账号安全问题解决方案

 

你会收到如是的邮件提醒,如果是设置了转发可能收不到,有可能进入垃圾邮件箱。

 

  1. 尊敬的奶牛,您好! 
  2.  
  3. 您最近更改了安全设置,因此您的Google帐户不再受最新安全标准的保护。 
  4.  
  5. 如果此项更改不是您本人所为 
  6. 请通过https://security.google.com/settings/security/activity查看“帐户活动”页面,以确定是否存在任何可疑活动。做出此项更改的人员知道您的密码,我们建议您立即更改密码。 
  7.  
  8. 如果此项更改是您本人所为 
  9. 请注意:攻击者现在可以更轻松地侵入您的帐户。您可以重新提高帐户的安全性,具体方法是:通过https://www.google.com/settings/security/lesssecureapps撤消此项更改,然后改用Google开发的应用(如Gmail)访问您的帐户。 
  10.  
  11. 此致 
  12. Google 帐户小组敬上    

所以呢,直接进入https://www.google.com/settings/security/lesssecureapps 来进行处理就可以了。

人生若只如初见

 

人生若只如初见,
何事秋风悲画扇。
等闲变却故人心,
却道故人心易变。
骊山语罢清宵半,
泪雨零铃终不怨。
何如薄幸锦衣郎,
比翼连枝当日愿。

 

从去年到现在一直在忙,只是忙,也不知道自己在忙什么,生活很乱,没有条理没有休息没有娱乐,终于半月前算是解放了,可现在似乎所有都将成空。

恋爱,对我而言向来都是一个美好的开端加一个不了了之的结局,没圆满过。

用初恋说的一句话,我太自负。以为自己的事儿都该自己去做,再难也自己做,可以有人依靠也不愿去依靠。很多事总固执的按自己的想法去做,以为别人也都可以接受,却忽略了不是每个身边的人都愿意按照自己的标准去做,太多时候事与愿违。

大学时候的恋情,让我刻骨,以为两个人会至始至终,理想终究不同,虽也不愿平庸,但也终是选择了平庸,过安稳的日子。毕业时候的恋情,就像一匹野马,疯狂的以为自己会脱离平庸,却未在相隔千里选择等待去追梦去过自己向往的生活,做自己喜欢的工作。直到工作后新的恋情开始,我决定安稳下来,就这样安安静静的跟心爱的人一起共度余生,可恋爱是两个人的事,婚姻确实两个家庭的事。我不够宽容,不够包容,当然,可能是自己认为婚姻应该是两个人共同努力共同去维系,可却都变成我一个人的事了。妻子没有做好两个家庭的纽带,而两个家庭的风格完全相反,也没能让彼此满意,各家有各家的抱怨。

我不明白,为什么自己肯为了这个家付出这么多,妻子却不能,两家的事儿不就应该儿女去沟通麽?为什么你单单除了只有向家庭抱怨对我的不满,却不肯做些什么呢?什么都是管不了,不管不做。从订婚到领证到结婚,有多少不顺只有自己知道。自由恋爱的两个人却被俗套地套上需要媒妁之言,把一个简简单单两家坐下来吃顿饭就可以解决的问题套上一个复杂的过场,领证本该定完亲之后两个人选个日子自己领了成了,可却偏偏非要扣上个男方不跟女方母亲打招呼的帽子,我跟女方父亲打招呼不管用,女方跟父母打招呼不管用,余下的就是女方各种不满。结婚的复杂就更别说了,请媒人请双方的好友去送这送那,本来说婚礼各家办各家的,却偏偏要两家一起办,那费用也各付各的啊,却成了一笔没头没尾的帐,我算好了让妻子去跟家里说,得到的却是妻子不管不问,倒是陪送的嫁妆却一丁点儿也没见到。领了证到结婚前,也有几个月吧,两个人却都没有住在一起,我不明白结婚证的法律效力在哪儿?简直就像笑话一样。婚后都是琐碎的事儿,可是真心觉得没有一起共同生活过真的不知道生活中的对方是什么样,恋爱时候她是那么大方得体懂事勤快,可是结婚后呢?一点儿鸡毛蒜皮的小事儿都处理成这样,丈母娘就更过了,上我家大闹一场,而后,妻子带走了所有衣物,就剩下我自己在一个空空的家。

人生若只如初见,便不会有世事纠缠。

推荐一个VPN服务商Bstrill

 

最近奶牛入了GTA5,玩儿得比较high,但是国内的网络实在是太烂了,很多时候联机不上,用了Bstrill的全球服版本,效果很好,推荐给大家。进入Bstrill网址

Linux下挂载samba网络共享硬盘

 

首先确认安装了cifs-utils,例如ubuntu下执行

  1. apt-get install cifs-utils

执行完成后即可进行挂载了

  1. mount -t cifs -o username="guest",password="guest" //192.168.11.1/download /root/download/  

其中-t cifs指定类型 -o设置选项,然后username和password在为空的时候用guest来完成,之后就是samba服务器和本地目录了,对于Netgear R7500可以在linux下直接通过如下挂载来完成共享文件。

Emmet For Notepad++的安装方法教程

按照官方的方法教程,安装方法有两种。

第一种:用插件管理器安装,打开插件—插件管理器—显示插件下找到emmet插件安装

第二种:手动方法。

先安装Python Script插件,官方教程上说可以在插件管理器里面安装。下载EmmetNPP 插件,解压缩到 C:\Program Files\Notepad++\plugins 安装目录,启动notepad++就可以看到Emmet插件了。

官方建议是将快捷键Abbreviation设置为tab

但是,奶牛在安装的过程中发现上面的方法不可行,因为插件根本不工作。有Unknown exception和python script plugin did not accept the script错误提示,环境是win8.1 x64位系统,找到解决方法是Python Script插件问题,下载Python Script插件重新安装解决了此问题。

Enyo入门教程Enyo Up and Running 【OReilly】

一本OReilly出的Enyo教程,比官方的介绍要想尽并且容易理解,还是比较有OReilly的风格的一本书,推荐给大家,可以在线阅读Enyo入门教程Enyo Up and Running