openvpn代理 您所在的位置:网站首页 centos代理上网ntp openvpn代理

openvpn代理

2023-03-13 21:39| 来源: 网络整理| 查看: 265

openvpn代理

今天给各位分享openvpn代理的知识,其中也会对openvpn代理进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文导读目录:

1、(Automatically setting proxy and default printer upon OpenVPN connect)

2、centos8安装配置openvpn实现服务器代理上网

3、openshift-openvpn - OpenShift 3的OpenVPN本地开发代理

4、openvpn+gost实现http/https透明代理

5、openvpn+squid实现http代理

6、OpenVPN%2f%2f讓我們突破代理封鎖 – 羽毛の家

7、OpenVPN下载、安装、配置及使用详解

8、openvpn如何配置HTTP代理、断线重连和自动运行

9、OpenVPN服务端

10、openvpn部署

11、pfSense book之OpenVPN(一)

12、VPS大师服务器IPHONE及安卓设置OPENVPN手机2G3G4G免流教程

13、一文读懂PPTP、L2TP、IPSec、OpenVPN和SSTP代理协议

14、不改路由表实现智能选择线路,提升访问国内外网站速度

15、什么是VPN?看运维专家聊聊VPN的那些事儿

16、使用 HAProxy 代理 OpenVPN

17、使用eclipse等其他自带java编译器的软件,换回sun的编译器方法

18、使用http代理转接OpenVPN

19、原创OpenVPN使用HTTP代理连接服务器

20、如何在SSH通道中隐藏OpenVPN流量?

21、如何在Windows 10上安装和配置OpenVPN

22、如何搭建VPN服务器用来翻墙国外网站的方法

23、安卓Vpn开发思路

24、牛榜:2019年最值得推荐的23款免费安全工具

25、用openvpn快速建立linux下的加密代理

26、网络安全工具集

27、老男孩顶级架构师培训视频教程,架构师全套教程下载

28、通过 OpenVPN 的 Nginx / Apache2 代理

29、通过HTTP代理在Windows上进行VPN /隧道(SSH或其他)

30、防追踪溯源识别联网工控设备的方法

(Automatically setting proxy and default printer upon OpenVPN connect)

1.(Automatically setting proxy and default printer openvpn代理 upon OpenVPN connect)

2.是的,你可以在Windows或任何其他OS上的OpenVPN连接的客户端或服务器端的连接上的各个位置执行任意命令。有多个选项(可在命令行或配置文件中使用),这些选项定义了在连接过程的各个阶段要执行的脚本以及具有哪些参数。

3.例如,如果你在OpenVPN客户端配置文件中包括“ vpn浏览器电脑版 国内节点vpn up“ C: my-up-script.bat”行,则你的客户端将执行位于“ C: my-up-script”的任何批处理脚本。 bat”成功打开与服务器的VPN连接后ios vpn中国。'down“ C: my-down-script.bat”行的意思是终止连接后执行脚本“ C: my-down-script.bat”。

4.OpenVPN手册(可在http://openvpn.net/index.php/open-source/documentation/manuals/69-openvpn-21.html上获得完整信息)列出了所有各种脚本以及执行每个脚本的时间:

5.vpn代理商如果你使用Windows的OpenVPNnordvpn知乎 GUI,则可能还需要阅读该程序的安装指南(http://openvpn.se/install.txt),特别是标题为“运行连接/断开连接/预连接脚本”的部分。OpenVPN GUI将WinVPN守护程序作为带有动态定义的命令行选项的Win32服务运行,因此你只需要编写自己的脚本并将其保存在服务包装程序将在其中寻找它们的位置即可。

6.如果你使用NullSoft NSIS安装程序构建说明(http://openvpn.se/files/howto/openvpn-howto_roll_your_own_installation_package.html)“自己动手” ,则可以在创建脚本时将其放入程序包中。(我不想在这个主题上做更多的详细介绍,因为它涉及的非常多,而官方文档对此的解释比我在这里要好得多。)

7.如果你不熟悉添加打印机和设置代理配置所需的Windows脚本命令,建议你编写一些简短的Visual Basic脚本。你可以在Google上找到更多示例,但这是一个入门指南,受到我在Petri论坛(http://www.petri.co.il/forums/showthread.php%2ft=6486)上发现的启发设置新打印机并将其设置为默认打印机:

8.将其另存为.vbs文件,你应该能够执行该文件,并在可以看到打印机的任何计算机上查看更改。同样,显然,你必须在最后三行中的每行中用你自己的名称替换工作组和打印机名称。

9.如果你使用OpenVPN GUI的预定义批处理脚本路径,则可以通过创建一个具有正确名称的批处理文件来运行.vbs脚本(如我在上面链接的文档中所述),仅包含以下行:

10.你还可以通过添加以下行直接从OpenVPN配置文件中直接调用.vbs脚本:

11.(无论哪种方式,你都需要用实际的.vbs脚本的位置替换该路径。)1.centos8安装配置openvpn实现服务器代理上网

2.Centos8安装配置openvpn实现服务器代理上网

3.yum -y install openvpn easy-rsa iptables-service

4.第一步:生成服务器端证书

5.查看已安装的easy-rsa目录

6.rpm ubuntu vpn软件 -ql easy-rsa

7.复制一份easy-rsa到/etc/openvpn目录下,也可以直接在原目录修改生成证书

8.cp 电脑上如何翻墙 -r /usr/share/easy-rsa/ /etc/openvpn/easy-rsa

9.复制easy-rsa配置文件到/etc/openvpn/easy-rsa/3.0.8目录下,并重命名为vars

10.cp panda vpn账号 -r /usr/share/doc/easy-rsa/vars.example /etc/openvpniphone vpn软件/easy-rsa/3.0.8/vars

11.查看/etc/openvpn目录结构

12.tree /etc/openvpn

13.修改证书配置文件vars,其他的默认就好,主要是修改个人信息,也可以不改

14.vim /etc/openvpn/easy-rsa/3.0.8/vars

15.set_var EASYRSA_REQ_COUNTRY "CN"

16.set_var EASYRSA_REQ_PROVINCE "SICHUAN"

17.set_var EASYRSA_REQ_CITY "CHENGDU"

18.set_var EASYRSA_REQ_ORG "geren"

19.set_var EASYRSA_REQ_EMAIL "[email protected]"

20.set_var EASYRSA_REQ_OU "tpc"

21.初始化,如果以前的证书不要了,要从头开始创建证书就要从这一步开始

22.cd /etc/openvpn/easy-rsa/3.0.8

23../easyrsa init-pki

24.创建根证书,会提示设置密码,此处我用nopass参数选择不要密码,如果有密码服务器每次启动都要求输入密码,还需要自己写脚本启动(ps:脚本我不会写)

25../easyrsa build-ca nopass

26.创建server端证书和私钥文件

27../easyrsa gen-req server nopass

28.给server端证书签名,提示confirm request details:时,输入yes

29../easyrsa sign server server

30.创建dh文件,秘钥交换算法

31../easyrsa gen-dh

32.创建tls认证秘钥

33.openvpn --genkey --secret ta.key

34.查看当前生成的文件目录结构

35.tree pki

36.拷贝证书文件到openvpn目录下

37.mkdir /etc/openvpn/certs

38.cp ./pki/ca.crt /etc/openvpn/certs/

39.cp ./pki/dh.pem /etc/openvpn/certs/

40.cp ./pki/issued/server.crt /etc/openvpn/certs

41.cp ./pki/private/server.key /etc/openvpn/certs

42.cp ta.key /etc/openvpn/certs

43.第二步:创建server配置文件

44.拷贝配置文件模板

45.cp /usr/share/doc/openvpn/sample/sample-config-files/server.conf /etc/openvpn/

46.修改配置文件

47.cd /etc/openvpn

48.vim server.conf

49.#监听本机ip地址

50.local 0.0.0.0(这里填本机地址)

51.#监控本机端口号

52.port 1194

53.#指定采用的传输协议,可以选择tcp或udp

54.proto tcp

55.#指定创建的通信隧道类型,可选tun或tap,window服务器必须是tap

56.dev tun

57.#指定CA证书的文件路径

58.ca /etc/openvpn/certs/ca.crt

59.#指定服务器端的证书文件路径

60.cert /etc/openvpn/certs/server.crt

61.#指定服务器端的私钥文件路径

62.key /etc/openvpn/certs/server.key

63.#指定迪菲赫尔曼参数的文件路径

64.dh /etc/openvpn/certs/dh.pem

65.#指定虚拟局域网占用的IP地址段和子网掩码,不能和服务器eth0同网段

66.server 10.8.0.0 255.255.255.0

67.#服务器自动给客户端分配IP后,客户端下次连接时,仍然采用上次的IP地址(第一次 分配的IP保存在ipp.txt中,下一次分配其中保存的IP)。

68.ifconfig-pool-persist ipp.txt

69.#自动推送客户端上的网关及DHCP,此项开启了流量转发,有这项才能使用服务器代理上 网

70.push "redirect-gateway def1 bypass-dhcp"

71.#OpenVPN的DHCP功能为客户端提供指定的 DNS、WINS 等

72.push "dhcp-option DNS 114.114.114.114"

73.#允许客户端与客户端相连接,默认情况下客户端只能与服务器相连接

74.client-to-client

75.允许同一个客户端证书多次登录,看需配置

76.#duplicate-cn

77.#每10秒ping一次,连接超时时间设为120秒

78.keepalive 10 120

79.#开启TLS-auth,使用ta.key防御攻击。服务器端的第二个参数值为0,客户端的为1。

80.tls-auth /etc/openvpn/certs/ta.key 0

81.#加密认证算法,2.4之前是AES-256-CBC

82.cipher AES-256-GCM

83.#使用lzo压缩的通讯,服务端和客户端都必须配置

84.comp-lzo

85.#最大连接用户

86.max-clients 100

87.#定义运行的用户和组,openvpn用户是安装的时候系统自动创建的

88.user openvpn

89.group openvpn

90.#重启时仍保留一些状态

91.persist-key

92.persist-tun

93.#输出短日志,每分钟刷新一次,以显示当前的客户端

94.status /var/log/openvpn-status.log

95.#日志保存路径

96.log /etc/openvpn/log/openvpn.log

97.log-append /etc/openvpn/log/openvpn.log

98.#指定日志文件的记录详细级别,可选0-9,等级越高日志内容越详细

99.verb 3

100.#相同信息的数量,如果连续出现 20 条相同的信息,将不记录到日志中

101.mute 20

102.下面这项只能udp连接开启

103.#explicit-exit-notify 1

104.设置tls最低版本为1.3,连接的客户端如果是2.4以下则配置为1.0

105.tls-version-min 1.3

106.第三步:配置系统转发,需要代理上网的必须配置

107.允许转发

108.echo net.ipv4.ip_forward=1 >> /etc/sysctl.conf

109.配置立即生效

110.sysctl -p

111.关闭firewall

112.systemctl stop firewalld

113.systemctl disable firewalld

114.启动iptables

115.systemctl enable iptables

116.systemctl start iptables

117.配置iptables转发流量,代理主要以iptables转发实现

118.iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE

119.允许tcp/udp 1194通过防火墙

120.iptables -I INPUT -p tcp --dport 1194 -j ACCEPT

121.iptables -I INPUT -p udp --dport 1194 -j ACCEPT

122.#保存规则并重启

123.service iptables save

124.systemctl restart iptables

125.第五步:创建启动的服务脚本文件

126.因centos8没有unit文件还需要自己新建一个,写入以下内容

127.vim /lib/systemd/system/[email protected]

128.[Unit]

129.Description=OpenVPN Robust And Highly Flexible Tunneling Application On %I

130.After=network.target

131.[Service]

132.Type=notify

133.PrivateTmp=true

134.ExecStart=/usr/sbin/openvpn --cd /etc/openvpn/ --config %i.conf

135.[Install]

136.WantedBy=multi-user.target

137.END

138.设置openvpn开机启动

139.systemctl enable [email protected]

140.启动openvpn

141.systemctl start [email protected]

142.查看端口和进程是否启动成功,

143.netstat -lntp|grep openvpn

144.ps -aux|grep openvpn

145.如果启动失败:

146.首先查看服务状态

147.systemctl status [email protected]

148.然后进入日志目录查看日志,将error项到网上搜索解决办法

149.cat /etc/openvpn/log/openvpn.log

150.客户端下载地址分享:https://www.aliyundrive.com/s/qpBM79CJNKC

151.如果这个客户端过期了可以去github上下载源码重新编译一个

152.https://github.com/OpenVPN/openvpn-gui

153.服务器侧配置

154.进入证书管理目录

155.cd /etc/openvpn/easy-rsa/3.0.8

156.生成客户端1的证书,客户端2依次类推

157../easyrsa gen-req client1 nopass

158.注册客户端1的证书,要输入yes

159../easyrsa sign client client1

160.将证书拷贝到一个目录存着

161.cp ./pki/issued/client1.crt /etc/openvpn/client

162.cp ./pki/private/client1.key /etc/openvpn/client

163.本地电脑侧配置

164.将client1.crt client1.key ta.key ca.crt四个文件下载到本地客户端目录的config目录下

165.配置客户端配置文件,拷贝客户端sample-config目录下的client.ovpn文件到config目录下

166.修改内容如下:

167.#客户端

168.client

169.#隧道类型,与服务器一致

170.dev tun

171.#tcp还是udp,与服务器一致

172.proto tcp

173.#服务器ip和端口

174.remote http://xxx.xxx.xxx.xxx 1194

175.#自动重连

176.resolv-retry infinite

177.#不绑定本地特定的端口

178.nobind

179.#服务器重启后保持一些状态

180.persist-key

181.persist-tun

182.#客户端证书目录

183.ca ca.crt

184.cert client.crt

185.key client.key

186.不明,推测是远程证书验证之类的

187.remote-cert-tls server

188.tls握手秘钥,与服务器保持一致,服务器0,客户端1

189.tls-auth ta.key 1

190.加密方式

191.cipher AES-256-GCM

192.开启数据压缩

193.comp-lzo

194.日志级别

195.verb 3

196.#相同信息的数量,如果连续出现 20 条相同的信息,将不记录到日志中

197.mute 20

198.#tls最低版本,与服务器保持一致

199.tls-version-min 1.3

200.#不保存密码

201.auth-nocache

202.#使客户端中所有流量经过VPN,所有网络连接都使用vpn

203.redirect-gateway def1

204.如果是云服务器,记得打开云服务器安全组里面的1194端口

205.至此配置完成,打开客户端,右键选项修改配置文件目录,双击连接服务器,如果连接失败则查看日志文件网上搜索解决办法.

206.本文参考链接:

207.OpenVPN openvpn代理 搭建部署--实现外网访问内网

208.CentOS搭建OpenVPN

209.openVPN服务搭建(环境:CentOS8)1.openshift-openvpn - OpenShift 3的OpenVPN本地开发代理

2.该项目是专为OpenShift 3设计的OpenVPN服务器,用于在本地开发一个微服务和/或应用程序,vpn中国free同时仍然能够访问OpenShift 3内部运行的其他服务和/或应用程序。

3.这要求你在OpenShift 3实例上具有管理员特权(或至少具有足够的特权来运行特权Docker容器)。目标受众是在电脑vpn中国本地或某些共享开发环境中运行OpenShift的开发人员。

4.什么有效

5.DNS服务发现,假设你的OpenVPN客户端与你的操作系统集成在一起以更新名称服务器设置(Fedora中的NetworkManager可以)

6.在本地计算机和OpenShift中运行的服务之间进行路由。这意味着基于Kubernetes vpn夏时国际 API的服务发现也可以使用。Kubernetes API服务器默认pptp vpn账号购买为https://172.30.0.1,但安装方式可能不同。

7.假设你已采取本示例末尾附近的步骤来本地重定向该服务的流量,则在OpenShift中运行的服务可以发现并与在本地计算机上运行的服务windows 10 vpn软件进行通信。

8.什么样的作品

9.通过环境变量发现服务。为此,你需要从openvpn服务器复制/粘贴环境变量,然后在本地环境(shell或IDEopenvpn代理)中进行设置。你可以通过类似的命令获取它们oc exec openvpn-server-2-0b90a env | grep -E '_PORT|_HOST'尚未测试的内容

10.Windows和Mac OpenVPN客户端-请测试并报告!什么不起作用

11.从本地计算机对OpenShift内部的主机执行ping操作-坚持使用curl或类似方法来验证与其他服务的通信

12.OpenVPN证书管理-现在,我们在构建Docker映像时会生成新的CA和服务器证书。这就是为什么说明要求你在OpenShift中构建图像而不是拉出已发布图像的原因。可以通过Secrets或其他机制来提供证书,但这是一种开发工具,因此首先选择了易用性。

13.本示例假定你使用的是Red Hat Developers Helloworld-MSA应用程序,但可以适应其他项目和环境。

14.以管理员身份登录以授予我们的用户和服务帐户运行特权容器的权限:

15.oc login 10.1.2.2:8443 -u admin -p adminoc project helloworld-msaoc adm policy add-scc-to-user privileged openshift-devoc adm policy add-scc-to-user privileged -z default然后重新登录到你的常规开发者帐户:

16.oc login 10.1.2.2:8443 -u openshift-dev -p devel现在创建我们的OpenVPN服务器:

17.git clone https://github.com/bbrowning/openshift-openvpn.gitcd openshift-openvpnoc new-build --binary --name=openvpn-serveroc start-build openvpn-server --from-dir=. --followoc new-app openvpn-server -e OPENVPN_USER=foo,OPENVPN_PASS=baroc patch dc openvpn-server -p '{"spec":{"template":{"spec":{"containers":[{"name":"openvpn-server","securityContext":{"privileged": true}}]}}}}'等待openvpn-server pod完成部署

18.oc get pods -l app=openvpn-server等待直到只有一个状态为的条目返回,Running然后继续。

19.将CA证书复制到本地某处

20.oc logs openvpn-server-YOUR-PODS-NAME将文本从-----BEGIN CERTIFICATE-----一行开始一直复制到该行(包括该-----END CERTIFICATE-----行)到本地称为的文件中openvpn-ca.crt。如果你正在运行启用了SELinux的最新Fedora,并且想将NetworkManager用作你的OpenVPN客户端,那么你还需要将文件另存为~/.cert/openvpn-ca.crt,然后运行:

21.restorecon -R -v ~/.cert使用端口转发访问OpenVPN服务器:

22.oc port-forward openvpn-server-YOUR-PODS-NAME 1194将你的OpenVPN客户端连接到OpenVPN服务器:

23.在现代Linux发行版上,你应该能够使用NetworkManager进行连接。你可能NetworkManager-openvpn-gnome首先需要包装。

24.创建一个新的OpenVPN连接,localhost用作网关,TCP而不是UDP(在Fedora的NetworkManager中的“高级”设置下),密码作为auth类型和foo/bar作为用户名和密码组合(除非在部署VPN服务器时更改了它),然后选择你的openvpn-ca.crt作为CA证书。在IPv4设置下,请确保选中Use this connection only for resources on its network。

25.你也可以手动连接OpenVPN客户端,但是此方法不会自动更新/etc/resolv.conf,因此DNS服务解析无法立即使用。该OpenVPN的更新,RESOLV-conf的项目可能是有用的在这里。

26.sudo openvpn --client --remote localhost --dev tun --ca easy-rsa/keys/ca.crt --verb 3 --proto tcp-client --auth-user-passMac和Windows客户端也应该可以正常工作,但是你需要为客户端翻译以上说明。

27.测试你的连接

28.假设你的Kubernetes API服务器在默认主机上运行,%2f%2f请确保你可以通过VPN与之通信:

29.curl -k https://172.30.0.1要测试DNS解析度,请同时卷曲helloworld-msa应用程序之一:

30.curl http://aloha:8080将服务的流量重定向到我们的本地代理

31.继续我们的HelloWorld-MSA示例,让我们假设我们要在本地开发Olá服务。首先,运行要在本地开发的服务,在与OpenShift应用程序相同的端口上侦听(可能是8080),并使用0.0.0.0或OpenVPN客户端的IP作为侦听接口。

32.java -jar ola/target/ola.jar确保你仍连接到OpenShift OpenVPN,然后使用以下命令通过OpenVPN服务器将该服务的所有流量重定向到本地计算机,并确保将服务名称(ola在此示例中)替换为名称你的实际服务:

33.oc export svc/ola -o json > service_backup.jsonoc patch svc/ola -p '{"spec": {"selector": {"$patch": "replace", "app": "openvpn-server"}}}'现在,如果刷新HelloWorld-MSA前端,你将看到Olá现在在其输出中列出了本地计算机的主机名。浏览器以及其他服务将透明地重定向到直接在笔记本电脑上运行的服务,而不是直接在OpenShift内部运行的服务。

34.从代理切换回真实服务

35.当你完成本地开发并希望该服务再次在OpenShift上运行时,只需将其定义替换为我们先前创建的备份即可。

36.oc replace --force -f service_backup.json刷新HelloWorld-MSA前端,你将看到再次使用OpenShift中的Olá实例。1.openvpn+gost实现http/https透明代理

2.

公司在武汉与北京分别有两个源站,但只有openvpn,没法用l2tp组网,怎么办?

~这篇文章几乎白写了,原来在Windows上用openvpn创建连接后,VMware的虚拟机走nat模式可以直接通过openvpn访问后面的服务器~。公司最后用上了,开心。

虽然公司正在逐步从北京搬到武汉,但公司的内部资源站仍然在北京 神灯vpn下载,并且只提供openvpn。但研发的同学要编译必须要用centos+docker从公司服务器拉取最新资源才能编译。在武汉本地建一个镜像站虽然可行,但太浪费硬盘资源(况且压根还缺。) vpn软件ios因此可以在武汉本地搭一个透明代理。来将北京资源站“搬到”武汉。

透明代理分为TCP与HTTP透明代理,由于tcp透明代理只能代理单个服务器,因此quickq vpn怎么样我在这里使用的是http透明代理,配合北京公司内部的dns,就可以解决武汉研发同学的docker不方便通过openvpn访问北京服务器的问题了。(为什么不用iptables,因为我不会啊。)

openvpn

准备ubuntu手机vpn排行vpn是什么软件 20.04 desktop版,这个版本连接openvpn简单点。导入配置文件先准备好openvpn的配置文件,然后从如图所示的方式导入配置文件,点击连接后输入密码就可以用了。

gost

使用之前编译好的gost文件,这个自己编译的gost文件才支持http+https透明代理

3.

4.

5.

6.

7.

github等开源网站加速脚本及搭建方法-v2.0

8.

9.随着学习的深入,我不再满足仅仅加速github了,我还要加速nodejs、pip、docker等源站。如果是游戏要...

10.

11.

12.

13.

14.

15.

16.给了777权限后,放入/usr/bin/目录内:

cp gost /usr/bin/gost

17.

创建启动配置文件:

nano /etc/systemd/system/gost.service

18.[Unit]

19.Description=gost

20.After=network.target

21.[Service]

22.Type=simple

23.User=root

24.ExecStart=/usr/bin/gost -L http://:80 -L sni://:443

25.Restart=on-failure

26.[Install]

27.WantedBy=multi-user.target

28.

配置开机启动,然后启动,完事。

systemctl start gost

29.systemctl enable gost

30.路由配置

这个坑了我快一天时间,在最开始我原计划用瘦终端内装Ubuntu+vnc来进行访问。我首先使用ubuntu20.04+gnome+tigervnc+systemctl,想实现半自动(除了输入密码)系统,但折腾了半天,最终确认了tigervnc+gnome不能使用systemctl自动启动,而手动启动没事。这个是gnome桌面的一个bug。于是我准备用手动启动tigervnc,但当我连接了openvpn后,vnc瞬间断开。我彻底失去了与瘦终端的联系。因此我最后还是弄了个垃圾服务器装VMware,然后VMware装了个桌面版的Ubuntu虚拟机,这样操作都在Ubuntu里进行。并且准备了一个USB有线网卡挂载在虚拟机内。(因为我用的是ipmi的交换机,单口dhcp分配一个IP)。然后依然在openvpn连接后,ssh与gost断连。通过搜索与排查,最后定位到openvpn的路由机制。当openvpn连接后,会往系统内写服务器推送过来的路由,并替换了网关。当gost/ssh接收到请求后,返回的数据包都经由openvpn的路由与网关而丢失,则表现为gost的日志是单向连接。Tkna.png最好的办法就是手动绑定路由。gost的dns解析机制是:当系统内有多个dns服务器时,会指定使用某个的dns服务,因此还要锁定使用dns服务器。

gost配置

修改后的gost配置如下所示:gost有以下关键点:1.针对http网站使用http代理。2.当网站为ip时,给它一个域名,然后使用hosts文件解析3.确认好各个网站与之对应的端口号。

openvpn配置

openvpn配置有以下关键点:openvpn配置1.手动指定dns为远程服务器的dns。2.关闭自动路由,手动设定路由。并且勾选仅对该网络上的资源使openvpn代理用此连接。

使用

你可以直接在hosts文件内将北京区的公司域名指向这个ip

172.20.10.35 release.dev.zettakit.com

31.workflow.dev.zettakit.com

32.wiki.dev.zettakit.com

33.gerrit.dev.zettakit.com

34.repo.dev.zettakit.com

35.

也可以在dnsmasq内指向这个ip,然后在武汉的公司使用这个dnsmasq的ip,实现无感访问北京资源站。(当然也仅限http/https)

参考:Prevent SSH connection lost after logging into VPN on server machineHow can I prevent OpenVPN from clobbering local route%2fgost

版权属于:寒夜方舟

本文链接:https://www.wnark.com/archives/170.html

本站所有原创文章采用署名-非商业性使用 4.0 国际 (CC BY-NC 4.0)。 您可以自由地转载和修改,但请注明引用文章来源和不可用于商业目的。声明:本博客完全禁止任何商业类网站转载,包括但不限于CSDN,51CTO,百度文库,360DOC,AcFun,哔哩哔哩等网站。

1.openvpn+squid实现http代理

2.单纯的使用openvpn代理,本机的所有流量将会全部走远端VPN服务器。而我们翻墙一般也就是流量网页,也就是只要http的流量走VPN就可以了。通过openvpn结合squid的http正向代理,免备案空间,可以实现为浏览网页提供翻墙的功能,而其它如QQ,迅雷等流量还是走正常的路线

3.正好手上有个无限流量的VPS,单纯放站点太可惜了,拿过来 香港免费vpn偶偶去外面的世界逛游下也算是最大化利用了。

4.准备2个包

5.openvpn-2.0.9.tar.gz

6.lzo-2.06.tar.gz

7.我的系统环境

8.解压编mac终端vpn译安装

9.tar沐云vpn xf lzo-2.06.tar.gz

10.cd lzo-2.06

11../configure

12.make &&make install

13.回国代理vpn

14.cd ..

15.tar xf openvpn-2.0.9.tar.gz

16.cd openvpn-2.0.9

17../configure --with-lzo-headers电脑版免费vpn=/usr/local/include/ --with-lzo-lib=/usr/local/lib

18.make &&make install

19.配置OPENVPN服务端

20.cd easy-rsa/2.0/

21.打开vars文件,修改最下面的几行为自己的信息

22.export KEY_COUNTRY="CN"

23.export KEY_PROVINCE="CA"

24.export KEY_CITY="ZheJiang"

25.export KEY_ORG="NingBo"

26.export KEY_EMAIL="[email protected]"

27.读取vars中的变量

28.. vars

29.重新初始化keys文件夹

30../clean-all

31.生成CA根证书

32../build-ca  一路回车就可以

wps_clip_image-25738

33.生成服务器证书

34../build-key-server server 在最后输入一个密码,美国空间,然后按照提示输入y就OK了

35.生成DH文件

36../build-dh

wps_clip_image-12116

37.生成客户端证书文件

38../build-key-pass lustlost

wps_clip_image-29059

39.mkdir -p /etc/openvpn

40.将配置文件和keys文件夹全部复制到openvpn的配置目录下

41.cp keys /etc/openvpn/ -a

42.cp /root/tools/openvpn-2.0.9/sample-scripts/openvpn.init /etc/init.d/openvpn

43.cp /root/tools/openvpn-2.0.9/sample-config-files/server.conf /etc/openvpn/

44.cd /etc/openvpn/

45.编辑server.conf配置文件

46.local 184.105.156.88

47.port 7890

48.proto tcp

49.dev tun

50.ca keys/ca.crt

51.cert keys/server.crt

52.key keys/server.key 

53.dh keys/dh1024.pem

54.server 10.8.0.0 255.255.255.0

55.ifconfig-pool-persist ipp.txt

56.keepalive 10 120

57.comp-lzo

58.persist-key

59.persist-tun

60.status openvpn-status.log

61.verb 3

62.然后安装squid,这里只要用到squid的简单正向代理功能即可,所以就yum安装了

63.yum install squid -y

64.编辑squid的配置文件,编辑以下2行

65.http_port 10.8.0.1:8080  #这里绑定地址只要openvpn的tun接口的地址就行,绑定全部地址的话你的服务器就变成公共代理服务器了。。。

66.http_access allow all

67.开启openvpn和squid服务

68.service squid satrt

69.service openvpn satrt

70.查看下端口

71.Ifconfig查看服务端接口情况

wps_clip_image-24704

72.发现多了一个tun0口。

73.安装配置客户端

74.OK服务端配置完成,然后下载客户端的openvpn,我是win7的系统,这里最好下载openvpn-2.2.2版本

75.将服务器上之前生成的CA根证书和用户名开头的文件下载下来,然后安装openvpn客户端,打开客户端安装路径,有一个config文件夹,在此文件夹下建立用户文件夹

wps_clip_image-7053

76.这里要加上一个用户配置文件lustlost.ovpn,配置如下,remote填写openvpn的服务器地址和端口,ca cert和key是当前文件夹下的文件

wps_clip_image-4952

77.打开openvpn-gui,右击任务栏右下角的openvpn图标,点击connect

wps_clip_image-8915

78.输入密码,OK以后显示链接成功,分配到的地址是10.8.0.6

79.在本机ping一下服务端的tun0口

wps_clip_image-24373

80.OK,设置下IE的代理服务器设置,香港服务器租用,chrome也是用的IE的设置,所以chrome用户也按照这个方式

openvpn代理wps_clip_image-12200

81.OK,打开youtube测试

wps_clip_image-156901.OpenVPN%2f%2f讓我們突破代理封鎖 – 羽毛の家

2.以前  在學校用代理  那叫一下一個爽

3.PPTP協議正常的時候真太平

4.电脑版的vpn現在  不僅PPTP連不上  連L2TP都經常閃斷

5.怎麽辦呢  有了  OpenVPN

6.OpenVPN可以自定義代理端口

7.所以 vpn免费账号 一般的代理端口封鎖就不起作用啦~

8.首先我們先獲得 OpenVPN的服務器IP  用戶名和密碼

9.然後我們再下載VPN提供商提好用的vpn知乎供的 OpenVPN設置文件openvpn代理

10.接著下載 OpenVPN  進行安裝

11.OpenVPN官方下載地址

12.http://openvpn.net/release/openvpn-2.1.3-install.exe

13.安裝   安裝過程就省略了  一般只用同伊協議之後下一步到底就可以了

14.當中會提示安裝虛擬網卡驅動

15.選擇繼續安裝就好

16.然後我們將代理商提供的配置文件和證書文件放入根目錄的config文件夾下

1.OpenVPN下载、安装、配置及使用详解

2.OpenVPN是一个用于创建虚拟专用网络(Virtual Private Network)加密通道的免费开源软件。使用OpenVPN可以方便地在家庭、办神灯vpn apk公场所、住宿酒店等不同网络访问场所之间搭建类似于局域网的专用网络通道。OpenVPN使用方便,运行性能优秀,支持Solaris、Linux 2.2+(Linux 2.2+表示Linux 2.2及以上版适用于中国的vpn本,下同)、OpenBSD 3.0+、FreeBSD、NetBSD、Mac OS X、Android和Windows 2000+的操作系统,并且采用了高强度的数据加密,再加上其开源免费的特性,使得OpenVPN成为中小型企业及个人的VPN首选产品。

3.使用OpenVPN配合特定的代理服务器,可用于访问Youtube、FaceBook、Twitter等受限网站,也可用于突破公司的网络限制。由于OpenVPN支持UDP协议,还可以配合HTTP代理(HTTP 电脑版vpn免费 Proxy)使用,使得只要是能够打开网站或上QQ的地方,就可以访问外部的任何网站或其他网络资源。

4.OpenVPN的官方最新版本是OpenVPN 2.3.0(发布于2013年01月08日),你可以点击此处查看OpenVPN 2.3.0的更新日志内容。

5.你可以点击下列链接直接从360云盘下载OpenVPN 2.3.0的官方正式版Windows安装文件(特别值得注意的是:由于Windows自身的限制,Windows版本的OpenVPN只有具备管理员权限的用户才能成功安装。当前最新版本的OpenVPN 2.3.0 只能在Windows XP及以上版本的操作系统上安装)。

6.OpenVPN 2.3.0 Windows 32位 安装文件(1.6 MB)

7.OpenVPN 2.3.0 Windows 64位 安装文件(1.6 MB)

8.在这里笔者以同一个局域网内的两台电脑A(IP:192.168.0.2,操作系统:Windows 7 SP1 64位旗舰版)和B(IP:192.168.0.3,操作系统:Windows XP SP3 32位 专业版)为例,将电脑A作为VPN服务器、电脑B作为VPN客户端,进行安装、配置、连通测试。在这里,笔者将统一安装OpenVPN 2.3.0 Windows 32位版本的安装文件。

9.在安装之前,先给读者们介绍一下OpenVPN的大致工作原理,以便于更好地理解后面的安装和使用操作。

10.在OpenVPN中,服务器端和客户端使用的是同一个安装文件,安装方法也是一样的,只是配置方法不一样。其主要区别是,在安装目录的config文件夹下,服务器端配置的文件叫做server.ovpn,客户端配置的文件叫做client.ovpn,当然,配置文件中的内容也不相同。OpenVPN通过不同的设置来决定该程序是充当服务器端还是客户端。

11.OpenVPN的大致工作原理就是在服务器端和客户端之间搭建一个独立于当前网络环境的加密通道,将服务器端和多个客户端组建成一个独立的虚拟局域网,从而实现服务器端和客户端、客户端和客户端之间的相互通信。

12.例如,我们的电脑A和电脑B的局域网网段是192.168.0.*,OpenVPN可以在它们之间搭建一个独立的虚拟局域网,并且网段配置为10.0.0.*(网段可以由用户随意配置,只要不和它们自身的网段192.168.0.*冲突即可)。此时:

13.电脑B可以通过IP地址192.168.0.1访问电脑A,也可以通过IP地址10.0.0.1访问电脑A。虚拟局域网是独立存在的,不会和本地其他网络之间形成干扰,不过虚拟局域网之间的相互访问和操作方式与本地局域网的几乎完全相同。

14.当然,笔者这里由于条件限制,电脑A和电脑B本身就在同一个局域网中,并且可以互相访问。可是在一些情况下,多台计算机不在同一个局域网内,并且它们之间无法直接互相访问,或者它们直接互相访问没有进行数据加密——不够安全,这个时候就轮到OpenVPN出马了。

15.OpenVPN在安装的时候会在电脑上安装一个虚拟网卡驱动,并在网络连接里创建一个本地连接的图标(下图的【本地连接2】)。OpenVPN就是靠它来搭建虚拟局域网的。

16.接下来,我们正式开始安装OpenVPN,在电脑A和电脑B上分别双击安装程序进行安装(安装方式完全一致)。在安装的时候,必须注意的是:在OpenVPN 2.3.0中,默认是不安装easy-rsa(一个加密证书生成程序)的,因此,我们必须手动勾选如下图所示的两个选项(在OpenVPN 2.2中是默认选中的)。

openvpn代理

17.然后一路Next(如果询问是否安装TAP-Win32驱动程序时,请选择「仍然继续」),就安装成功了。

18.OpenVPN的配置工作主要分为如下两步:

19.第一步,创建加密证书和私钥,其中包括服务器端和客户端都要用到的核心CA证书和私钥,服务器端自身的加密证书(即公钥)和私钥,以及每个客户端对应的加密证书和私钥。第二步,为服务器和客户端编写对应的配置文件,然后将其与第一步中生成的相应证书、私钥放在OpenVPN安装目录的config文件夹下。OpenVPN支持基于加密证书的双向认证。在OpenVPN中,不管是服务器还是客户端,所有的证书和私钥都需要由服务器端生成,客户端要先获得服务器端分配给它的加密证书和密钥才能成功连接。这与使用网上银行有些类似,大多数银行网站都会要求你先下载并安装一个数字证书,才允许你进行网上付款或其他操作。

20.下面我们开始具体配置:

第一步:创建加密证书和私钥21.修改OpenVPN服务器端的vars.bat.sample文件(客户端的无需做任何修改)。

22.使用记事本或其他文本编辑工具打开文件,如下图所示:

23.由于稍后给客户端生成对应加密证书和私钥时,程序会要求我们输入一些注册信息。如果你需要配置多个客户端,并且许多信息都相同(比如国家、省市、地址、公司名称等)你还可以修改vars.bat.sample文件后面的一些相关变量的默认值,这样在稍后生成客户端证书的时候,如果该信息项不输入就会采用默认值。

24.运行DOS命令,初始化执行环境。

25.在作为服务器端的电脑A上打开DOS命令窗口,并进入到目录。笔者的服务器端安装目录是,因此这里进入。

26.然后依次输入并执行以下命令(括号内的是笔者附加的注释):

27.init-config(初始化配置,将vars.bat.sample文件的内容复制到vars.bat。实际上,你也可以直接双击执行easy-rsa目录下的init-config.bat文件来代替这一步。)

28.vars(设置相应的局部环境变量,就是我们在vars.bat.sample文件中设置的内容)

29.clean-all(相关设置和清理工作)

30.创建CA根证书:build-ca

31.如上图所示,在build-ca的时候需要输入一些注册信息。在输入信息的时候,如果你不输入任何信息,就表示采用默认值(前面[]中的内容就是默认值);如果你输入,则表示当前信息项留空白。值得注意的是,上图中红色矩形框中的OpenVPN_CA是证书的通用名称(Common Name),相当于我们常说的账号,你也可以自行输入其他名称。

32.创建服务器端证书:build-key-server server

33.如上图所示,命令中的参数server指的是生成的证书文件名称,你可以按照自己的需要进行修改,不过后面的Common Name也应保持一致。第二个红色矩形框中是输入的密码,你也可以根据意愿自行输入。最后程序会询问你是否注册并提交证书,两次均输入y即可。

34.创建迪菲·赫尔曼密钥:build-dh

35.迪菲·赫尔曼密钥交换(Diffie–Hellman key exchange,简称「D–H」) 是一种安全协议。它可以让双方在完全没有对方任何预先信息的条件下通过不安全信道创建起一个密钥。这个密钥可以在后续的通讯中作为对称密钥来加密通讯内容。

36.创建客户端证书:build-key client

37.如上图所示,命令中的参数client表示生成的证书文件名称,你可以按照自己的需要进行修改,不过后面的Common Name也应保持一致。第二个红色矩形框中是输入的密码,你也可以根据意愿自行输入。最后程序会询问你是否注册并提交证书,两次均输入y即可。

38.如果你想创建多个不同的客户端证书,只需要重复此步骤即可。切记,Common Name不要重复,这是OpenVPN用来区分不同客户端的关键所在。

39.生成ta.key:openvpn --genkey --secret keys/ta.key (可选操作)

40.这一步其实是可选操作,生成的ta.key主要用于防御DoS、UDP淹没等恶意攻击。命令中的第3个参数keys/ta.key表示生成的文件路径(含文件名)。

41.创建完证书后,我们会发现easy-rsa目录下多了一个keys文件夹。现在我们将keys文件夹中对应的文件复制到OpenVPN服务器或客户端的安装目录的config文件夹下。

42.服务器端config目录需要的文件包括:

43.客户端config目录需要的文件包括:

44.非常重要的提醒:以上命令都是在同一个DOS窗口中执行的,如果你以后需要打开新窗口来执行命令(比如创建新的客户端证书):你不需要再执行init-config命令,除非你再次改动了vars.bat.sample文件;每一次打开新窗口时都需要先执行vars命令,后面才能执行其他命令。

45.第二步:编写对应的配置文件上面我们已经创建了OpenVPN配置所需要的各种证书和私钥,现在我们开始为服务器和客户端编写对应的配置文件。

46.对于一个刚刚接触OpenVPN的人来说,我们应该配置些什么呢,又该从哪里入手呢?别着急,OpenVPN已经考虑到了这一点。在OpenVPN的安装目录的sample-config文件夹中存放有3个示例模板文件:server.ovpn、client.ovpn、sample.ovpn。其中,server.ovpn是服务器的配置模板,client.ovpn是客户端的配置模板(sample.ovpn也可用作客户端配置模板,不过配置比较简单,不够全面。按照官方的说法,client.ovpn可用于连接具有多个客户端的服务器端配置文件)。

47.现在,我们就复制server.ovpn到服务器的config目录,client.ovpn到客户端的config目录,并在此基础上进行修改。在OpenVPN的配置文件中,前面带「#」或「;」的表示注释内容。

48.编辑服务器端配置文件。

49.server.ovpn的英文注释中已经比较清楚地解释了每一个设置的作用,笔者对配置文件的英文注释作了全文翻译,你可以点击查看server.ovpn的配置内容详解,在此不再赘述,下面只提取所有用到的命令。

50.实际修改内容参见下面的截图。

51.编辑客户端配置文件。

52.client.ovpn中所有用到的命令如下:

53.修改完毕并保存之后,我们就可以看到在电脑A(服务器端)的OpenVPN安装目录的config文件夹下包含如下文件:

54.在电脑B(客户端)的OpenVPN安装目录的config文件夹下包含如下文件:

55.最后,我们在电脑A(服务器端)的Windows运行框中输入「services.msc」,进入windows服务界面,启动服务「OpenVPN Service」:

56.然后,我们进入电脑B,双击OpenVPN安装时在桌面上生成的图标,此时在任务栏的右下角将会出现如下图所示的红色小图标,右键该图标,点击connect:

57.紧接着,就会自动弹出如下窗口,右下角图标变为黄色。

58.连接成功后,窗口自动关闭,右下角的图标变为绿色。

59.至此,OpenVPN就已经安装成功了,你可以像局域网一样地使用OpenVPN客户端访问服务器或其他客户端了。1.openvpn如何配置HTTP代理、断线重连和自动运行

2.在配置文件里面添加

3.http-proxy-retry # retry on connection failures

4.http-proxy 中国节点vpn [proxy server] [proxy port #]

5.自动运行则需要在注册表的启动项里面添加启动命令:d:oolsopenvpnbinopenvpn.bat

6.好用的vpn软件其中openvpn.bat中

7.openvpn-gui-1.0.3 –connect openvpn代理 client.ovpn1.OpenVPN服务端

2.名词解释

3.OpenVPN 是一个基于 OpenSSL 库的应用层 VPN 实现,和传统 VPN 相比,它的优点是简单易用。

4.OpenVPN%2f介绍:苹果手机怎么安装vpn

5.OpenVPN 是一个基于 OpenSSL库的应用层 VPN 实现。和传统 VPN 相比,它的优点是简单易用。vpn直译就是虚拟专用通道,是提供企业之间或者公司之间安全数据传输的隧道。OpenVPN是一个全特性的SSL cyberghost中国 VPN,它使用2层或3层的安全网络技术,使用的是工业标准的SSL/TLS协议。SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(TransportLayer pc端好用的vpn Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。OpenVPN支持灵活的客户端授权方式,支持证书、智能卡、用户名和密码,允许用户可以通过防火墙连接到VPN的虚拟接口,OpenVPN不是一个基于web代理的应用,也不是基于浏览器访问。

6.OpenVPN允许参与建立VPN的单点使用共享金钥,电子证书,或者用户名/密码来进行身份验证。它大量使用了OpenSSL加密库中的SSLv3/TLSv1 协议函式库。OpenVPN能在Solaris、Linux、OpenBSD、FreeBSD、NetBSD、Mac OS X与Windows 2000/XP/Vista上运行,并包含了许多安全性的功能。它并不是一个基于Web的VPN软件,也不与IPsec及其他VPN软件包兼容。

7.OpenVPN2.0后引入了用户名/口令组合的身份验证方式,它可以省略客户端证书,但是仍有一份服务器证书需要被用作加密。 OpenVPN所有的通信都基于一个单一的IP端口, 默认且推荐使用UDP协议通讯,同时TCP也被支持。OpenVPN连接能通过大多数的代理服务器,并且能够在NAT的环境中很好地工作。服务端具有向客 户端“推送”某些网络配置信息的功能,这些信息包括:IP地址、路由设置等。

8.OpenVPN提供了两种虚拟网络接口:通用Tun/Tap驱动,通过它们,可以建立三层IP隧道,或者虚拟二层以太网,后者可以传送任何类型的二层以太网络数据。传送的数据可通过LZO算法压缩。在选择协议时候,需要注意2个加密隧道之间的网络状况,如有高延迟或者丢包较多的情况下,请选择TCP协议作为底层协议,UDP协议由于存在无连接和重传机制,导致要隧道上层的协议进行重传,效率非常低下。

9.OpenVpn客户端配置链接:https://www.ikuai8.com/index.php%2foption=com_content&view=article&id=138:openvpn&catid=39&Itemid=241

10.如何使用

11.字段说明

12.【生成客户端配置】:

13.导出服务端的参数配置,包括CA证书等。

14.【显示日志】:

15.显示服务端日志信息,包括服务端启动时间,客户端拨号日志等。

16.【服务端口】:

17.openvpn服务进程使用的端口。IANA(Internet Assigned Numbers Authority)指定给OpenVPN的官方端口为1194。

18.【VPN网段】/【网段掩码】:

19.vpn所用地址池网段及所用IP地址范围

20.【认证方式】:分为账号认证和静态秘钥(tls-auth)、静态秘钥(tls-crypt)。静态秘钥认证方式在路由版本为3.5.3版本及以上支持使用。

21.静态秘钥使用教程:

22.静态秘钥(tls-auth):http://ikuai9.com:555/s/a5dw3t

23.静态秘钥(tls-crypt):http://ikuai9.com:555/s/o5rh21

24.静态秘钥视频教程:https://v.ikuai8.com/%2fid=88

25.【隧道协议】:

26.OpenVPN所有的通信都基于一个单一的IP端口,默认且推荐使用UDP协议通讯,同时TCP也被支持;

27.在选择协议时候,需要注意2个加密隧道之间的网络状况,如有高延迟或者丢包较多的情况下,请选择TCP协议作为底层协议

28.【隧道类型】:

29.OpenVPN提供了两种虚拟网络接口:通用Tun/Tap驱动,通过它们,可以建立三层IP隧道,或者虚拟二层以太网,后者可以传送任何类型的二层以太网络数据。

30.【加密算法】:

31.在传输前,对数据进行加密,可以保证在传输过程中,即使数据包遭截取,信息也无法被读。该特性在IPSec中为可选项,与IPSec策略的具体设置相关

32.【LZO压缩】:

33.传送的数据可通过LZO算法压缩;压缩节省带宽,但是会占用一定的CPU资源

34.【MTU】:

35.最大传输单元;建议填写大小为:链路MTU-100;默认1400。

36.【CA证书】:

37.用于签发服务器和客户端证书的证书;

38.【服务器证书】/【服务器私钥】:

39.本地证书的两部分,成对出现;

40.注意事项:

41.如果有想更改对应证书和密钥的,可以通过OPENVPNSSL生成;如果没有或不懂怎么生成的,使用默认的证书和密钥即可!

42.【推送路由】:

43.服务端告知客户端,访问哪些网段是需要走VPN拨号的线路;

44.【附加配置】:

45.专业用户,如爱快的openvpn缺少部分配置,可由用户自主填写。

46.参考openvpn软件帮助,自定义原始OpenVPN配置项。

47.举例说明

48.网络结构如下:

拓扑图.png

49.需要实现客户端网络通过OPENVPN的方式拨号到服务端

50.同时实现客户端和服务端内网互访

51.相关步骤必须严格按照下面的步骤进行。

52.服务端配置:

53.服务端需设置推送路由将本段的内网网段推送给客户端,客户端也需要接受推送路由即可实现客户端访问服务端内网

54.创建VPN账号

55.在认证计费--认证账号管理--账号管理,里面添加VPN账号密码

56.添加账号时,设置固定IP为10.7.6.2

57.注意事项:

58.当爱快与爱快之间创建open vpn服务时,VPN的账号设置一定要是固定IP地址,并且设置的IP地址必须是默认IP地址池范围之内的IP,如果填写IP地址池范围之外的IP,会导致拨不上去号。

59.静态路由设置

60.仅在服务端配置静态路由即可,实现服务端可通过VPN线路访问客户端内网

61.客户端配置

kehdua.png

图片.png

62.设置完成,客户端和服务端内网可以实现正常互访。

63.注意事项:

64.客户端一定要开启服务器路由推送才可访问服务端推送的内网网段

65.【添加路由】:

66.告知客户端,哪些网段的地址需要走VPN线路。

67.注意事项:

68.客户端必须勾选允许服务端推送路由客户端才可以访问服务端的网段。

69.服务端拓扑类型选择NET30时,服务端无法访问客户端内网。

70.open VPN如何使用视频教程:https://v.ikuai8.com/%2fid=44

71.知识扩展

72.原理

73.OpenVpn的技术核心是虚拟网卡,其次是SSL协议实现,由于SSL协议在其它的词条中介绍的比较清楚了,这里重点对虚拟网卡及其在OpenVpn的中的工作机理进行介绍:

74.虚拟网卡是使用网络底层编程技术实现的一个驱动软件,安装后在主机上多出现一个网卡,可以像其它网卡一样进行配置。服务程序可以在应用层打开虚拟网卡,如果应用软件(如IE)向虚拟网卡发送数据,则服务程序可以读取到该数据,如果服务程序写合适的数据到虚拟网卡,应用软件也可以接收得到。虚拟网卡在很多的操作系统下都有相应的实现,这也是OpenVpn能够跨平台一个很重要的理由。

75.在OpenVpn中,如果用户访问一个远程的虚拟地址(属于虚拟网卡配用的地址系列,区别于真实地址),则操作系统会通过路由机制将数据包(TUN模式)或数据帧(TAP模式)发送到虚拟网卡上,服务程序接收该数据并进行相应的处理后,通过SOCKET从外网上发送出去,远程服务程序通过SOCKET从外网上接收数据,并进行相应的处理后,发送给虚拟网卡,则应用软件可以接收到,完成了一个单向传输的过程,反之亦然。

76.加密

77.OpenVPN使用OpenSSL库加密数据与控制信息:它使用了OpenSSL的加密以及验证功能,意味着,它能够使用任何OpenSSL支持的算法。它提供了可选的数据包HMAC功能以提高连接的安全性。此外,OpenSSL的硬件加速也能提高它的性能。

78.验证

79.OpenVPN提供了多种身份验证方式,

80.用以确认参与连接双方的身份,包括:预享私钥,第三方证书以及用户名/密码组合。预享密钥最为简单,但同时它只能用于建立点对点的VPN;基于PKI的第三方证书提供了最完善的功能,但是需要额外的精力去维护一个PKI证书体系。[1]%2f%2fOpenVPN2.0后引入了用户名/口令组合的身份验证方式,它可以省略客户端证书,但是仍有一份服务器证书需要被用作加密。

81.网络

82.OpenVPN所有的通信都基于一个单一的IP端口,默认且推荐使用UDP协议通讯,同时TCP也被支持。OpenVPN连接能通过大多数的代理服务器,并且能够在NAT的环境中很好地工作。服务端具有向客户端“推送”某些网络配置信息的功能,这些信息包括:IP地址、路由设置等。OpenVPN提供了两种虚拟网络接口:通用Tun/Tap驱动,通过它们,可以建立三层IP隧道,或者虚拟二层以太网,后者可以传送任何类型的二层以太网络数据。传送的数据可通过LZO算法压缩。IANA(Internet Assigned Numbers Authority)指定给OpenVPN的官方端口为1194。OpenVPN 2.0以后版本每个进程可以同时管理数个并发的隧道。

83.OpenVPN使用通用网络协议(TCP与UDP)的特点使它成为IPsec等协议的理想替代,尤其是在ISP(Internet service provider)过滤某些特定VPN协议的情况下。

84.在选择协议时候,需要注意2个加密隧道之间的网络状况,如有高延迟或者丢包较多的情况下,请选择TCP协议作为底层协议,UDP协议由于存在无连接和重传机制,导致要隧道上层的协议进行重传,效率非常低下。

85.安全

86.OpenVPN与生俱来便具备了许多安全特性:它在用户空间运行,无须对内核及网络协议栈作修改;初始完毕后以chroot方式运行,放弃root权限;使用mlockall以防止敏感数据交换到磁盘。OpenVPN通过PKCS#11支持硬件加密标识,如智能卡。

87.对比

88.OpenSSH,能实现二/三层的基于隧道的VPN。stunnel,使用SSL向任何单一端口的TCP服务提供安全保护。

89.openvpn的这个拓扑类型选项,subnet和net30有什么区别呀?

90.解释:这个255.255.255.252子网掩码模式(叫做net30模式)就是为了使TUN模式兼容iOS、Windows等设备而使用的,我们在OpenVPN支持的所有模式中做了取舍 -- net30是兼容性最好的。

91.下面列一下各种模式的兼容情况:

92.net30 -- 即255.255.255.252子网掩码,兼容Linux(及爱快)、Windows、iOS、Android,缺点是无法以tun模式支持非Linux的固定IP;

93.p2p -- p2p接口类型,子网掩码是255.255.255.255,对固定IP的支持不限网段,但只兼容Linux;

94.subnet -- 直接使用用户配置的子网掩码,也就是楼主配置的255.255.255.0,兼容Linux、Windows、支持固定IP,其他系统均不兼容。

95.总结来说,由于OpenVPN是个非标准的VPN协议,在各种系统上的实现方法也不尽相同,导致无法以同一个服务器配置来支持所有的系统+所有的场景。我们能做到默认同一个服务器支持所有系统,但不保证所有的系统都能使用固定IP。

96.注意事项:

97.为了保证VPN的稳定,在3.5.5版本及以上建议带300个以内的VPN客户端,3.5.5版本以下建议带200个以内的VPN客户端。

98.常见问题

99.爱快OPENVPN不支持TLS验证,如对端有此验证,请取消。

100.VPN客户端和服务端内网无法互访排查方法

101.当前路由表里面是否已经有打到对方网段的路由表,路由表内的网段是否有冲突

102.使用ping测试,ping对端lan口网关是否可以通,如果可以,但是ping不通下面的设备,检查这个设备是否开启了防火墙、是否有设置了网关并可正常上网

103.使用tracert功能看路径是否正确,在达到哪个网关的时候无法找寻到下一跳

104.如上述排查都无法解决,请联系4008773227企业QQ处理

105.OPENVPN连接后如服务端无法访问客户端需要严格按照一下顺序设置:

106.先在账号里面固定IP

107.在服务端设置静态路由

108.最后进行拨号

109.客户端数量超过官方推荐值如何设置:

110.可以在 OpenVPN服务端-附加配置选项填写自定义参数如:max-clients 100 (数字100为客户端的最大上限值)

111.注意:修改此参数后代表放弃对此功能的技术支持服务。

openvpn代理1.openvpn部署

2.  

3.PPTP ×××:小区宽带,家庭路由器会有连接不上的情况。

4.IPsec ×××:主要开源软件有openswan,适用于点对点网络好用的苹果vpn,比如公司总部和分部。

5.open ×××:主要适用出差办公连接公司内部网络,以及跨机房连接,远程维护。

6. --------------------------------电脑vpn软件----------------------------------------------------------------------------------------------------中国能用的手机vpn---

7. 

8.安装openvpn所需要的插件:

9.服务端和客户端共用一个CA证书,客户端有自己的秘钥,服务端也有自己的秘钥。后面会生成服务端和客户端的秘钥。此处是生成公共的CA证书。

10.----------------------- 

11.source vars   #使上面的配置文件生效

12.重新建立证书:

13.在openvpn中,每一个登录open×××的客户端都要生成一个client证书和key文件,每个证书在同一时刻只允许一个客户端连接,若建立多个客户端证书,则重复执行如下步骤即可。

14.生成一个带密码的客户端:

15.生成一个防火墙的文件(为防止恶意攻击,如DOS、UDP)

16.服务端××× server.conf重要参数:

17.拷贝keys及配置文件:

18.编辑配置文件:

19.vi  /etc/openvpn/server.conf

20.错误:启动时总是自动退出:然后在相对路径下去没有问题。

21.我第一怀疑的是 配置文件证书和秘钥的路径问题,果然改成全局路径就好了。

22.或者

23. 

24.下载windows客户端软件然后安装:

25.https://openvpn.net/index.php/open-source/downloads.html

26.下载server端证书和秘钥:

27.ca.crt   test.key  test.crt

28. 

29.拷贝下载的秘钥文件到安装open×××的config目录下:

30.C:ProgramFilesOpen×××config

31. 

32.在config新建一个文件,命令为test.ovpn(注意文件的扩展名不能有其他的)

33.window右下角点击connect,成功!

34.注意:一不小心碰到许多大坑,一定要细心耐心排查。安装open×××时,要选择对应的版本下载,windows打开软件时要右键以管理员身份运行,不然后报错。push路由的时候,一定要检查是否为×××server内网的网段。再就是网关不能有多个,可以添加默认路由,但一般不要这么做。遇到问题时,一定要思路清晰,冷静下来看日志,日志中出错的部分可以google大部分问题自己都能解决,不要问别人,靠别人永远不如靠自己来的可靠。

35. 

36.为每一个client增加证书:

37.吊销单个证书:

38.吊销多个证书:

39. 

40.和服务端安装步骤一样,配置如下:

41.拷贝证书:

42.启动client:

43.或者:

44.########################################################################

45.#############################open vpn 结束###############################

46.########################################################################

47. 

48. openvpn跨机房连接:

49.要求两端所在的内网相互之间ping通。  

50.       A--------------->client   .............................server >/etc/openvpn/server.conf

54.找到open×××客户端的key名字,test.key 把客户端内网的网段加入到test中:

55.echo 'iroute 172.16.10.0 255.255.255.0 ' >/etc/openvpn/test

56.在openvpn server.conf中添加一条路由:

57.echo 'route 172.16.10.0 255.255.255.0' >>/etc/openvpn/server.conf

58.确保openvpn server.conf中打开以下两项:

59.client-to-client

60.push "route 172.16.10.0 255.255.255.0"   #此处有疑问,感觉应该是服务端所在内网的路由。

61.在openvpn server.conf中需要注释一行:

62.#duplicate-cn 

63.这样就实现了客户端内网和服务端内网相互之间可以访问。

64.----------------------------------------------------------------------------------

65. openvpn代理访问:

66.配置vpn通过服务器代理出网实践:

67.和之前的server.conf配置相比,需要增加的内容:

68.添加一条nat映射:

69.这样访问网站走的就是vpn线路。

70. ----------------------------------------------------------------------------------------------------------------------------

71. 

72. openvpn负载均衡和高可用:

73. 

74. 首先需要把服务器端keys拷贝到另一台机器上,然后再将客户端本地的xxx.ovpn复制一份,可以命令为xxx-1.ovpn、xxx-2.ovpn,这两个配置文件需要指定不同的server ip地址。(服务端server.conf中也需要修改ip地址)

75.注意:如果服务起不来可以尝试用全局路径: /usr/local/sbin/openvpn --config /etc/openvpn/server.conf & 如果还不行,把所有openvpn的服务kill。

76.首先拷贝服务端keys到另一台机器上,然后修改客户端的配置文件:

77.编辑tracy.ovpn,添加如下内容:

78. 

79. 

80. openvpn通过用户名和密码登陆:

81.编辑配置文件server.conf添加如下3行:

82.auth-user-pass-verify  /etc/openvpn/checkpsw.sh via-env          #认证用户通过脚本

83.client-cert-not-required                      #不使用客户端证书,用户名和密码验证

84.username-as-common-name           #使用客户端的name做为common name

85.获取checkpsw.sh脚本:

86.---------------------------------------------------------------- 

87. 

88.创建密码文件:

89. 

90.在客户端注释证书相关的配置,添加如下:

91.完整版客户端配置:

92.open××× 2.2.2故障:客户端总是弹出用户名和密码。

93.解决:在服务端配置文件中添加:--script-security 3

94.--------------------------------------------------------------------------------

95.记录一次排错思路:电脑连接vpn以后,能访问vpn serveropenvpn代理的内网段,但不能访问外网段。

96.解决:首先想到的是push 路由的问题,验证发现已经push了内网段的路由,外网段不push,client就无法访问外网段。如果push的路由不正确也会出现无法访问外网段的问题。比如外网段是10.86.10.0/23,而push的却是10.86.10./24. 1.pfSense book之OpenVPN(一)

2.Open×××Open×××是一种开源的SSL ×××解决方案,可用于远程访问客户端和站点到站点的连接。 Open×××的客户端支持众多操作系统,苹果手机怎么翻墙包括所有的BSD,Linux,Android,Mac OS X,iOS,Solaris,Windows 2000及更新版本,甚至一些VoIP手机。

3.每个Open×××连接,无论是远程访问还是优云vpn站点到站点,都由服务器和客户端组成。在站点到站点×××中,一个防火墙充当服务器,另一个充当客户端。哪个防火墙拥有这些角色并不重要。通常,主防火墙的位置将为其防火墙配置为客户端的所有远程位置提供服务器连接。这在功能上等同于配置为连接到远程位置防火墙上运行的服务器的客户端的主要位置的相反配置。实际上,服务器几乎总是在中央位置运行。

4.有几种可与Open×××一起使用的身份验证方法:共享密钥,X.509(也称为SSL / TLS或PKI),通过本地,LDAP和RADIUS的用户身份验证,或者X.509与用户的组合认证。对于共享密钥,将生成将在双方都使用的单个密钥。 SSL / TLS涉及使用一组可信的证书和密钥。用户认证可以使用或不使用SSL / TLS进行配置,但由于提供的安全性提高,因此在可能的情况下请优先使用它。

5.本章将介绍Open×××实例的设置,以及Open×××远程访问服务器向导的运行过程,客户端配置以及多个站点到站点连接方案的示例。

6.注意

7.尽管Open×××是SSL ×××,但商用防火墙厂商普遍认为它不是“无客户端”的SSL ×××。 Open×××客户端必须安装在所有客户端设备上。 事实上,没有×××解决方案是真正的“无客户端”,这个术语只不过是一个营销策略。 

8.有关pfSense中可用的各种类型×××的一般性讨论及其优缺点,请参阅虚拟专用网络。

9.使用证书是运行远程访问×××的首选方式,因为它允许为单个机器撤销访问权限。 使用共享密钥,必须为每个客户端创建唯一的服务器和端口,或者必须将相同的密钥分发给所有客户端。 前者成为管理的噩梦,而后者在妥协的关键时刻会产生问题。 如果客户机被盗用,被盗或丢失,或者需要吊销,共享密钥必须重新发放给所有客户。 使用PKI部署时,如果客户端遭到入侵,或因任何其他原因需要撤销访问权限,只需撤销该客户端的证书即可。 其他客户不受影响。

10.pfSense GUI包含一个与Open×××完全集成的证书管理界面。 证书颁发机构(CA)和服务器证书在系统> 证书管理、证书管理器中进行管理。 用户证书也在Web界面中进行管理,作为系统>用户管理的内置用户管理器的一部分。 除默认管理员帐户以外,可以为防火墙本地创建的任何用户帐户生成证书。 有关创建证书颁发机构,证书和证书撤销列表的更多信息,请参阅证书管理。

11.Open×××和IPv6Open×××可以将站点到站点的隧道连接到IPv4地址或IPv6地址,并且IPv4和IPv6流量可以同时在Open×××隧道内传递。 IPv6在站点到站点和移动客户端均受支持,并且可用于将IPv6发送到仅具有IPv4连接的站点。 为了确保移动客户端支持IPv6,请从Open×××客户端导出插件中获取客户端软件,或者下载基于Open××× 2.3或更高版本的客户端。

12.Open××× 配置选项本节介绍Open×××的所有可用选项以及典型使用方式。 后续部分介绍了使用Open×××配置站点到站点和远程访问×××的示例,使用最常见的选项和最少的配置。

13.这些选项可用于Open×××服务器实例的一种或多种模式,可通过×××> Open×××,服务器选项卡进行管理。

14.选中此框并单击保存以保留配置,但不启用服务器。此实例的进程将被停止,并且所有对等端/客户端都将与此服务器断开连接。任何其他活动服务器都不受影响。

15.这是服务器的角色,它指定路由器或用户如何连接到此服务器。 更改此选项还会影响页面其余部分显示的选项,因此只显示相关选项。

16.可以选择TCP或UDP或其IPv6启用对应项TCP6或UDP6。 Open×××服务器实例当前只能绑定到IPv4或IPv6,但不能同时绑定。 UDP是运行Open×××的最可靠和最快的选择,并且应尽可能使用它。 在极少数情况下,可以使用TCP来解决限制问题,例如通过在TCP端口443上运行Open×××服务器来绕过某些防火墙。

17.隧道传输时,无连接协议(如UDP)始终可取。 TCP是面向连接的,保证传输,因此丢失的数据包将被重新传输。 这听起来似乎是一个好主意,但TCP重传会导致在重负载的Internet连接或具有一致的数据包丢失的情况下性能明显降低。

18.TCP流量频繁地存在于隧道内,并且不希望重新传输封装的×××流量的丢失分组。 在TCP环绕TCP的情况下,例如使用TCP作为传输协议的×××隧道,当数据包丢失时,外部和内部丢失的TCP数据包都将被重新传输。 偶尔发生这种情况将不明显,但经常性丢失将导致性能明显低于UDP。 如果隧道内的流量需要可靠的传输,它将使用TCP等协议来确保并处理其自身的重传。

19.Open×××可以以两种设备模式之一运行:tun或tap:

20.注意

21.并非所有的客户端都支持tap模式,使用tun更稳定,支持更广泛。 具体而言,Android和iOS上的客户端应用程序大多支持tun模式。 一些Android和iOS版本的Open×××应用需要root设备或越狱才能支持Tap,但对于大多数用户而言,这样做的后果可能有点过高。

22.选择Open×××服务器实例将监听传入连接的接口,VIP或故障转移组。这也控制来自服务器的流量将从哪个接口退出。

23.接口的下拉列表中列出了几种类型的选项,其中一些具有特殊行为或用例:

24.本地端口是Open×××将用来侦听的端口号。防火墙规则需要允许通信到此端口,并且它必须在客户端配置中指定。每个服务器的端口对于每个接口都必须是唯一的。

25.输入此服务器配置的说明,以供参考。

26.本部分控制×××流量如何加密和验证

27.共享密钥使用共享密钥时,请选中自动生成共享密钥框来创建新密钥,或者取消选中该复选框,粘贴来自现有Open×××隧道的共享密钥。 当自动生成密钥时,稍后返回到此通道的编辑页面,来获取可以复制到远程路由器的密钥。

28.TLS认证TLS或传输层安全性提供会话身份验证以确保客户端和服务器的有效性。 如果需要,请勾选此框以启用TLS数据包的验证。 如果没有现有的TLS密钥,则保留自动生成共享TLS身份验证密钥。 如果密钥已存在,请取消选中该选项,然后将其粘贴到提供的输入框中。 当自动生成密钥时,稍后返回到此通道的编辑屏幕来获取可以被复制到远程路由器或客户端的密钥。

29.注意

30.在使用SSL / TLS模式时,我们强烈建议您也使用TLS身份验证。除了带来的额外安全优势外,TLS密钥还有助于防止某些基于SSL的攻击,如Heartbleed。

31.对等证书颁发机构选择此处用于为此Open×××服务器实例签署服务器证书的证书颁发机构。 如果没有出现在此列表中,请首先在系统>证书管理,CAs选项卡上导入或生成证书颁发机构。

32.对等证书吊销列表此可选字段用于此隧道使用的证书吊销列表(CRL)。 CRL是从给定CA制作的证书列表,这些证书不再被视为有效。 这可能是由于证书被盗用或丢失造成的。可以从系统>证书管理,证书吊销选项卡创建或管理CRL。

33.服务器证书必须为每个Open×××服务器实例选择服务器证书。如果没有出现在此列表中,请先在系统>证书管理,证书选项卡上导入或生成证书颁发机构。

34.DH参数长度Diffie-Hellman(DH)密钥交换参数用于建立安全通信信道。 它们可以随时被重新生成,而不是特定于Open×××实例。 也就是说,当导入现有的Open×××配置时,这些参数不需要从以前的服务器复制。 所需DH参数的长度可以从下拉框中选择,1024,2048或4096。

35.注意

36.由于生成DH密钥涉及大量计算,因此使用每个密钥类型的预先生成的集合。可以使用以下shell命令手动生成新的DH参数:

37.# /usr/bin/openssl dhparam 1024 > /etc/dh-parameters.1024# /usr/bin/openssl dhparam 2048 > /etc/dh-parameters.2048# /usr/bin/openssl dhparam 4096 > /etc/dh-parameters.4096

38.加密算法用于此连接的加密算法。默认值是AES-128-CBC,这对于大多数情况来说都是很好的选择。

39.认证摘要算法选择信息摘要算法,用于入站数据包的HMAC验证。

40.注意

41.未指定此选项时Open×××默认为SHA1,因此除非双方都设置为已知值,否则请在此处使用SHA1。

42.硬件加密如果可用,该选项控制Open×××将使用哪个硬件加密加速器。如果未指定,Open×××将根据操作系统中的可用内容自动选择。

43.如果此防火墙设备具有硬件加密加速器,请选择BSD Cryptodev Engine,或者如果它显示在列表中,请选择特定设备。 大多数加速板使用BSD cryptodev引擎,所以如有疑问,请选择该引擎。 该设置将允许Open×××利用硬件加速。 还必须选择加速器支持的加密算法。

44.证书深度此选项在验证失败之前限制证书链的长度。 这默认为One(客户端+服务器),因此如果以某种方式生成了未经授权的中间CA,由流氓中间件签名的证书将无法验证。 如果需要链接中间体,则可以提高此限制。

45.严格匹配User-CN对于SSL / TLS +User认证服务器,启用时,此选项强制用户提供的用户名和其用户证书的通用名称之间匹配。 如果两者不匹配,则连接被拒绝。 这可以防止用户将他们自己的凭证用于其他人的证书,反之亦然。

46.隧道设置部分管理服务器和客户端之间的通信流量,包括路由和压缩。

47.IPv4/IPv6 隧道网络这些是连接时分配给客户端的地址池。 服务器的Open×××配置结束时将使用该池中的第一个地址作为连接的结尾,并根据需要为连接的客户端分配额外的地址。 即使连接两个现有的远程网络,这些地址也可用于隧道端点之间的直接通信。 可以选择任何子网,只要它不在本地或任何远程站点使用。 可以输入IPv4隧道网络和IPv6隧道网络中的一个或两个。

48.注意

49.目前,Open×××因为自身的限制会阻止只配置IPv6隧道网络的运行。定义IPv6隧道网络时,即使未使用,也必须指定IPv4隧道网络。

50.对于使用IPv4的点到点SSL / TLS服务器,IPv4隧道网络大小可以改变服务器的行为方式。 如果为IPv4隧道网络输入xxxx / 30,则服务器将使用对等模式,就像共享密钥一样:它只能有一个客户端,不需要特定于客户端的覆盖或iroutes.,但也不能推送路由或设置给客户。 如果使用大于该值的IPv4隧道网络(例如x.x.x.x / 24),服务器将接受多个客户端并可以推送设置,但确实需要iroutes。

51.桥接选项在使用分流模式时,会显示其他选项,用于控制Open×××中的桥接行为和客户端地址分配。这些都在桥接Open×××连接中介绍。

52.重定向网关当选择重定向网关选项时,服务器会向客户端推送消息,指示他们通过×××隧道转发包括互联网流量在内的所有流量。 这只适用于隧道网络大于/ 30子网的SSL / TLS模式。

53.IPv4/IPv6本地网络这些字段指定×××客户端可以访问哪些本地网络(如果有)。 这些网络的路由被推送到连接到该服务器的客户端。 如果需要多个特定系列子网的路由,请输入以逗号分隔的子网,例如, 192.168.2.0/24,192.168.56.0/24。

54.此功能依赖于将路由推送到客户端的能力,因此对于IPv4,只有在大于/ 30的隧道网络正在使用时才在SSL / TLS中有效。 如果未设置类似的太小掩码,它将始终适用于IPv6。

55.IPv4/IPv6远程网络此选项仅在使用点对点类型连接时出现,并且不适用于移动客户端。 路由表条目被添加到指定子网的防火墙中,这些子网将流量转交给这个Open×××实例进行处理。 如果需要多个远程网络子网,请输入用逗号分隔的子网,例如, 192.168.2.0/24,192.168.56.0/24。

56.并发连接指定在任何给定时间可能同时连接到此Open×××服务器的客户端数量。这是所有连接客户端的总量限制,而不是每个用户的设置。

57.压缩启用压缩时,通过Open×××连接的流量将在加密前被压缩。 这可以节省带宽使用,但会增加服务器和客户端的CPU利用率。 通常这种影响是较小,在Internet上,压缩功能几乎可以用在任何Open×××上。

58.对于高速连接,例如在LAN上使用Open×××,高速低延迟WAN或本地无线网络,这可能是不需要,因为压缩所增加的延迟可能比传输流量所节省的延迟更多。 如果几乎所有通过Open×××连接的流量都已被加密(例如SSH,SCP,HTTPS等许多其他协议),则不要启用LZO压缩,因为加密数据不可压缩,相比不压缩,LZO压缩会导致稍微更多的数据转移。 如果×××流量几乎完全是已压缩的数据,情况也是如此。

59.这个选择器控制这个Open×××实例的LZO压缩处理。 有四种不同的设置。

60.服务类型启用此选项时,Open×××将设置隧道数据包的服务类型(TOS)IP标头值以匹配封装的数据包值。 这可能会导致一些重要的流量通过中间跳跃在隧道上得到更快的处理,这是以一些小的信息披露为代价的。

61.最常见的例子是VoIP或视频流量。 如果TOS bit设置为反映流量的优先级,它可以帮助沿路径的QoS,但是有人拦截流量可以看到TOS位,并获得有关隧道内流量内容的一些知识。 对于那些依赖TOS bits进行QoS的人来说,其好处可能会超过信息泄漏。

62.客户端间通信该选项控制连接的客户端是否能够相互通信。 要允许这种行为,请设置选项。 未选中时,客户端只能将流量发送到服务器或服务器以外的目标,例如路由网络或Internet。

63.通常在远程访问的部署中,客户端不需要互相访问,但有些情况下可以提供帮助。 一个例子是远程Web开发人员在他们的本地系统上一起工作并运行测试服务器。 激活此选项后,他们可以到达另一个测试服务器进行协作开发。

64.重复连接默认情况下,Open×××会将来自其隧道网络的IP地址与给定会话的特定证书或用户名相关联。 如果再次连接相同的证书,则会为其分配相同的IP地址,并断开第一个客户端的连接,或者导致两个客户端都不会收到正确数据的IP冲突。 这主要是出于安全原因,所以同一证书不能被多人同时使用。 我们建议为每个连接用户使用一个唯一的证书。 否则,如果客户受到威胁,无法单独撤销该客户端,需要重新向所有共享相同证书的客户端颁发证书。

65.如果在多个位置使用相同证书的设置是绝对要求且无法避免,请选中“重复连接”以允许使用相同证书或用户名的多个客户端的非标准行为。

66.禁用 IPv6勾选后,Open×××服务器将禁用IPv6流量转发。

67.这些设置与连接到此服务器的客户端行为方式有关。

68.动态 IP选中此框会将浮动配置选项添加到Open×××配置中。 这允许客户端在他们的IP地址改变时保留他们的连接。 类似于IPsec中IKEv2的MOBIKE。 对于经常更改IP的Internet连接的客户端或通常在不同Internet连接之间移动的移动用户,请选中此选项以实现稳定的连接。 如果客户端IP是静态的或很少发生更改,则不使用此选项以提高安全性。

69.地址池当启用此选项时,服务器将为隧道网络选项指定的子网中的客户端分配虚拟适配器IP地址。 未经检查的IP地址不会自动分配,客户端必须在其客户端配置文件中手动设置自己的静态IP地址。 除少数情况外,这个选项一般都会启用。

70.拓扑默认情况下,pfSense 2.3和更高版本的Open×××在使用tun模式时优先考虑子网的拓扑风格。 此样式仅为每个客户端分配一个IP地址,而不是每个客户端的隔离子网。 这是使用tap设备模式时唯一可用的样式。

71.当选择较旧的net30拓扑时,Open×××会为每个连接的客户端分配一个/ 30 CIDR网络(四个IP地址,两个可用)。 这种风格有更长的历史,但可能会让管理员和用户感到困惑。

72.“拓扑”选项仅仅在向IPv4上使用tun模式的客户端提供虚拟适配器IP地址时相关。 一些客户甚至可能需要IPv6,例如Open××× Connect,但实际上IPv6始终以子网拓扑运行,即使IPv4使用net30也是如此。 Open×××版本2.1.3或更新版本需要使用子网拓扑,并且Open××× 2.3也对其进行了重大修复,因此使用当前的Open×××客户端版本非常重要。

73.注意

74.由于Open×××项目已宣布net30风格已过时,pfSense中的默认设置已更改为子网,表明它将在未来版本中删除。

75.但是,请注意,如果使用此选项,某些非常老的客户端可能会中断,例如较早版本的Open×××(在10年前发布2.0.9之前),带有较旧tun / tap驱动程序的Windows版本或客户端,如 Yealink电话。 使用子网拓扑时,务必确保客户端和关联的驱动程序是最新的。

76.DNS 默认域选中后,会出现一个字段,指定要分配给客户端的DNS域名。 要确保名称解析适用于使用DNS名称解析的本地网络上的主机,请在此处指定内部DNS域名。 对于Microsoft Active Directory环境,这通常是Active Directory域名。

77.DNS 服务器选中后,最多可以输入四个DNS服务器供客户端连接到×××时使用。 对于Microsoft Active Directory环境,这通常是Active Directory域控制器或DNS服务器,用于通过Open×××连接时进行正确的名称解析和身份验证。

78.强制DNS缓存更新选中时,此选项将向Windows客户端推送一组命令,以便刷新其DNS并重新启动缓存,以改进客户端从×××处理更新后的DNS服务器。

79.NTP服务器选中时,可以设置一个或两个NTP服务器来同步客户端上的时钟。它可以是IP地址或FQDN。

80.NetBIOS 选项当选中“启用TCP / IP上的NetBIOS”时,将出现其他几个NetBIOS和WINS相关选项。如果该框未选中,这些设置将被禁用。

81.节点类型NetBIOS节点类型控制Windows系统在解析NetBIOS名称时的功能。通常没有办法接受Windows的默认设置。

82.可用的选项包括:

83.范围IDNetBIOS范围ID为TCP / IP上的NetBIOS提供扩展的命名服务。 NetBIOS作用域ID将单个网络上的NetBIOS通信隔离为仅具有相同NetBIOS作用域ID的节点。

84.WINS服务器选中此框可以定义两台WINS服务器,为访问和浏览×××上的NetBIOS资源的客户端提供名称解析。 WINS在很大程度上已被弃用并且不再使用,所以在大多数现代环境中已经不太可能需要。

85.启用自定义端口 勾选后,可以指定一个非默认管理端口用于Open×××客户端导出插件的Open×××Manage功能。 如果在使用该接口的单个客户端上使用多个连接配置文件,则每个配置文件必须使用唯一的管理端口

86.虽然pfSense网页界面支持最常用的选项,但Open×××功能非常强大且灵活,偶尔可能需要Web界面中不可用的选项。 这样的自定义选项可以在该输入框中添加。 这些选项在自定义配置选项中进一步描述。

87.配置此实例的Open×××日志中显示的详细信息量,这对解决问题很有用。数字越大,日志中的细节数据越大。如果没有特别要求,默认选择是最佳的。

88.注意

89.当设置为更高级别时,Open×××状态页面和仪表板小部件将在与管理进程交互时引发额外的日志记录,以轮询来自Open×××守护进程的信息。

90.这些选项可用于Open×××客户端实例的一种或多种模式,通过×××> Open×××,客户端选项卡进行管理。

91.其中许多选项与上述服务器选项相同,因此只会注意到不同之处。

92.对于客户端实例,服务器模式选项仅限点对点(SSL/TLS) 和点对点(共享密钥),与具有相同名称和类型的服务器选项配对。

93.该选项选择Open×××客户端实例将用于传出连接的接口,VIP或故障转移组。

94.当在Open×××客户端实例上为接口选择CARP类型的VIP时,当CARP VIP处于备份状态时,Open×××实例将停止。 这样做是为了防止辅助HA节点维护无效路由或尝试进行可能干扰主HA节点上活动连接的出站连接。

95.对于客户来说,本地端口在几乎所有情况下都是空白的,以便使用随机的本地端口。 这更安全,但有些要求可能需要特定的源端口。 如果需要特定的源端口,根据需要填写。

96.服务器的IP地址或完全限定的域名。

97.服务器正在侦听的端口,通常为 1194

98.当选中无限解析服务器时,服务器主机名将在每次连接尝试时解析。 如果未选中,Open×××只会尝试解决一次。 当使用主机名作为远程服务器地址时,应该选中该选项。

99.在使用点对点SSL / TLS模式时,根据服务器上配置的要求,可以指定用户名和密码作为用户证书的补充或替代,而不是用户证书。

100.除了新客户端证书选项外,本节中的设置与服务器端的相应选项相同,其中证书被选择供此客户端使用。 此证书(以及相关的密钥和CA证书)必须先导入到此防火墙,然后才能选择。

101.这些选项的作用与服务器端相似,但请注意,服务器的密钥必须在此复制,而不是在客户端上生成新的密钥。

102.此框中的值(以每秒字节数指定)用于限制传出×××通信的带宽。留空时,没有限制。该值必须介于100和100000000之间。

103.选中时,客户端将忽略从服务器推送的路由。当服务器在客户端不需要时推送默认网关重定向的情况下非常有用。

104.选中后,Open×××将不管理该×××的路由表条目。在这种情况下,他们必须手动管理。通常添加的路由将使用环境变量传递给 --route-up脚本。

105.使用Open×××服务器向导设置远程访问Open×××向导是为移动客户端设置远程访问×××的一种便捷方式。以下是Open×××远程访问服务器配置所有必需的先决条件:

106.在该向导的最后,一个功能完备的服务器将被配置并准备好供用户使用。下面的示例设置将用于帮助解释向导中可用的选项。

107.在启动向导来配置远程访问服务器之前,有一些细节必须首先考虑。

108.必须选择一个IP子网供Open×××客户端使用。 这是在服务器配置中填入“隧道网络”下的子网。 连接的客户端将在该子网内接收到一个IP地址,并且连接的服务器端还会接收到客户端用作服务器端网络网关的IP地址。

109.和往常一样,当为单个位置选择内部子网时,理想情况下,选定的子网将被设计为可以与其他内部子网一起进行CIDR汇总。 下面描述的示例网络对于LAN使用10.3.0.0/24,对于Open×××使用10.3.201.0/24。 这两个网络可以用10.3.0.0/16进行汇总,使路由更容易管理。 

110.下图显示本例中配置的网络。

pfSense book之OpenVPN(一)_pfsense book

111.在Open×××远程访问服务器向导的第一个页面上,选择用于用户认证的方法。身份验证后端类型可用的选项是本地用户访问,LDAP和RADIUS。

112.如果现有的身份验证系统已经就位,例如Active Directory,请根据系统的配置方式选择LDAP或RADIUS。 可以选择本地用户访问来管理pfSense防火墙上的用户、密码和证书。 使用本地用户访问时,可以轻松使用每个用户的证书,并在pfSense GUI中进行管理。 这更安全,但取决于将访问服务的用户数量,可能不如使用中央认证系统方便。

113.注意

114.对于LDAP或RADIUS,无需手动生成每个用户的证书即可使用。

115.本地用户访问选项等同于选择本章前面提到的远程访问(SSL / TLS +用户认证)。 LDAP和RADIUS相当于远程访问(用户身份验证)。

116.选择认证服务器类型后,单击下一步。 如果选择LDAP或RADIUS,那么这些选择的服务器配置将是下一步。 如果选择本地用户访问,则会跳过LDAP和RADIUS向导步骤。 在本例中,将选择本地用户访问权限,但为了完整性讨论其他选项。

117.如果已经在pfSense防火墙上定义了LDAP服务器,则可以从列表中选择它。要使用不同的LDAP服务器,请选择添加新的LDAP服务器。如果没有定义LDAP服务器,则跳过此步骤。

118.如果不存在LDAP服务器或选择添加新的LDAP服务器,则会显示一个页面,其中包含添加新服务器所需的选项。 其中许多选项将取决于特定的LDAP目录配置和结构。 如果对设置有任何不确定性,请咨询LDAP服务器管理员、软件供应商或文档。

119.如果在pfSense防火墙上定义了现有的RADIUS服务器,请从列表中选择它。要使用不同的RADIUS服务器,请选择添加新的RADIUS服务器。如果在pfSense上没有定义RADIUS服务器,则跳过此步骤。

120.如果不存在RADIUS服务器或选择添加新的RADIUS服务器,则会显示一个屏幕,其中包含添加新服务器所需的选项。 如果对设置有任何不确定性,请咨询RADIUS服务器管理员,软件供应商或文档。

121.如果在pfSense防火墙上定义了现有的认证中心,则可以从列表中选择它。要创建新的证书颁发机构,请选择添加新的CA。如果没有定义证书颁发机构,则跳过此步骤。

122.此步骤提供了创建新证书颁发机构(CA)的所有必要字段。 此页面上的每个选项都是必需的,并且必须正确填写所有字段才能继续。 CA用于建立一个信任基础,从中可以生成服务器证书,并被客户视为“值得信赖”。 由于此CA是自行生成的,因此只能由也提供此CA证书副本的客户端信任。

123.点击添加新的CA完成CA创建过程

124.如果在pfSense防火墙上定义了现有的证书,可以从列表中选择。要创建新证书,请选择添加新证书。如果没有定义证书,则跳过此步骤。

125.该页面将创建一个新的服务器证书,用于验证服务器到客户端的身份。 服务器证书将由以前在向导中选择或创建的证书颁发机构进行签名。 在大多数情况下,与本示例一样,使用上一步中的相同信息,并自动在表单上预先填写。

126.单击创建新证书存储设置并继续向导的下一步。

127.向导的这一步的选项配置Open×××服务器本身的行为方式以及传递给客户端选项的各个方面。 这里介绍的选项与之前在Open×××配置选项中讨论的选项相同。 

128.这些选项控制着Open×××实例的运行方式。

129.这些选项控制隧道中的流量如何加密和验证。

130.这些选项控制来自远程客户端的流量将如何进行路由。

131.这些选项控制连接建立时给予客户端的特定设置。

132.与防火墙的其他部分一样,默认情况下,所有通信都被阻止连接到×××或通过×××隧道传递。 向导的这一步自动添加防火墙规则以允许流量连接到×××,并且客户端也可以通过×××传递流量。

133.选中此框可在所选接口上为允许客户端连接的隧道(例如WAN)添加防火墙规则。 它允许来自任何源地址的所有客户端默认连接。 要允许来自一组有限的IP地址或子网的连接,请创建自定义规则或选中此框并更改其创建的规则。 在这个例子中,客户端来自全国各地,所以由这个复选框创建的规则是理想的,因此选中这个设置。

134.这个设置允许所有流量通过Open×××隧道,对于本示例是必须的,所以选中。

135.单击完成,向导现在完成全部设置;该隧道已完全配置并准备好进行客户端连接。 从这里开始,下一步就是添加用户并配置客户端设备。 如果需要调整自动生成的防火墙规则,你可以在防火墙>规则策略处进行调整。

136.用户配置此时×××服务器已配置,但可能没有任何可连接的客户端。将用户添加到×××的方法取决于创建Open×××服务器时选择的身份验证方法。

137.要添加可以连接到Open×××的用户,必须按照以下步骤将其添加到用户管理器:

138.查看或更改用户:

139.导出用户证书和密钥:

140.注意

141.如果使用Open×××客户端导出插件,则可以跳过此部分。客户端导出插件是下载客户端配置和安装文件的更简单的方法。

142.在大多数情况下,CA证书还应该与用户证书一起下载。这可以从系统>证书管理,CA选项卡上的条目或使用前面提到的下载PKCS#12文件来完成。

143.添加LDAP和RADIUS用户将完全取决于服务器实施和管理工具,这超出了本书的范围, 请联系服务器管理员或软件供应商以寻求帮助。 无法从防火墙的Web界面内以反映用户与证书关系的方式创建LDAP或RADIUS用户的证书。 但是,可以使用证书管理器自行创建证书,如用户证书中所述

144.Open××× 客户端安装由于大多数操作系统尚未构建客户端功能,因此需要在最终用户设备上安装Open×××客户端。本节只介绍Windows和IOS操作系统的安装。要在安卓、Mac OS  X、Linux、 FreeBSD上安装,请参考pfsense book英文原版。

145.Open××× 客户端导出插件在大多数平台上配置Open×××客户端的最简单方法是在pfSense防火墙上使用Open×××客户端导出插件。

146.按如下方式安装Open×××客户端导出插件:

147.安装后,可以在×××> Open×××的“Client Export”选项卡上找到它。

148.插件选项包括:

149.注意

150.目前没有保存这些设置的机制,因此每次访问页面时都必须对其进行检查和设置。

151.在“客户端安装插件”下是要导出的潜在客户端列表。列表的内容取决于服务器的配置方式以及防火墙上的用户和证书。

152.以下列表描述了服务器配置样式如何影响软件包中的列表:

153.本章先前在向导中所做的示例设置是针对SSL / TLS +Local Users的用户身份验证,因此每个用户在系统上显示一个条目,该条目具有与Open×××服务器相同的CA创建的证书。

154.注意

155.如果未显示用户,或者列表中缺少特定用户,则用户不存在或用户没有适当的证书。请参阅本地用户以了解正确创建用户和证书的过程。

156.以不同方式导出配置和相关文件的客户端列出了许多选项。每个都适应不同的潜在客户类型。

157.该选择下载带有内联证书和密钥的单个配置文件。 这种格式适用于所有平台,尤其是Android和iOS客户端,或手动将配置复制到已安装客户端的系统。 此选项适用于基于Open××× 2.1或更高版本的任何客户端类型。

158.注意

159.确保手机有正确的时钟设置和/或NTP服务器,否则证书将无法验证,并且×××不会连接。

160.警告

161.通常这些手机只支持使用SHA1作为证书散列。 确保CA、服务器证书和客户端证书都是使用SHA1生成的,否则可能会失败。 它们也可能只支持AES-128-CBC这类有限的加密算法。 

162.Windows安装程序选项创建一个简单易用的可执行安装程序文件,其中包含嵌入了配置数据的Open×××客户端。 安装程序像普通的Windows Open×××客户端安装程序一样运行,但它也会复制所有需要的设置和证书。 

163.目前有四种可用选项:

164.注意

165.一定要单击下一步/完成整个安装过程。请不要在任何步骤中单击取消安装,否则客户端系统可能已安装客户端,但没有导入配置。

166.警告

167.在启用了UAC(用户帐户控制)的Windows Vista 7,8,10和更高版本中,客户端必须以管理员身份运行。 右键单击Open××× GUI图标,然后单击以管理员身份运行以使其工作。 它可以在没有管理权限的情况下连接,但无法添加通过Open×××连接引导流量所需的路由,导致它不可用。 快捷方式的属性可以设置为始终以管理员身份启动程序。 该选项位于快捷方式属性的兼容性选项卡上。 围绕这个要求的一个方法是在导出前检查Open×××Manager以在Windows上使用备用Open×××管理GUI。

168.Viscosity客户端也可用于Windows,并且不需要管理权限即可正常运行。

169.这与上面的配置存档一样,但适用于OS X和Windows中使用的Viscosity Open×××客户端。如果已经安装了Viscosity客户端,请下载该软件包并单击它将其导入客户端。

170.Windows 安装Open×××,可从Open×××社区下载页面下载。 在撰写本文时,大多数Windows用户的最佳版本是2.4.x-I60x安装程序。 2.4系列是最新的稳定版本

171.安装很简单,接受所有的默认设置。 安装将为tun接口在客户端系统上创建一个新的本地连接。 当×××建立时,该接口将显示连接,否则将显示为断开连接。 不需要配置此接口,因为它的配置将从Open×××服务器或客户端配置中提取。

172.iOSiOS也可以使用App Store中提供的iOS Open××× Connect客户端本地运行Open×××。 这个应用程序不需要越狱iOS设备。 该应用程序必须在iOS设备之外配置配置文件和证书,然后将其导入到该设备。 pfSense上的Open×××客户端导出插件可用于导出Open××× Connect类型的内联配置。 将生成的.ovpn文件传输到目标设备,然后使用iTunes将文件传输到应用程序或通过电子邮件发送到设备。

173.使用其他方法远程获取文件到设备上,例如Dropbox、Google Drive或Box,其工作方式与电子邮件方法类似,通常更安全,因为内容将保持专用并可以根据需要进行进行存储加密。

174.如果使用电子邮件方式,请使用以下步骤:

175.使用iTunes将配置传输到iOS设备比电子邮件简单且更安全。

176.如果配置文件配置为用户身份验证,它将提示输入凭据,可以选择保存该凭据。在凭据提示下方是连接状态,该状态将在断开和已连接之间改变,并且还指示何时尝试连接。点击这个将会打开Open×××客户端日志,这在连接遇到问题时非常有用。

177.要连接×××,请将配置文件底部的滑块从关闭移动到开启,应用程序将尝试连接。要手动断开连接,请将滑块移回关闭。

178.为此客户端手动构建配置文件时,它需要内联配置样式或单独的CA、客户端证书、客户端证书密钥和TLS密钥文件(如果使用)。它似乎并不接受包含CA和客户端证书/密钥的.p12文件,因此默认的“配置存档”样式将不起作用,尽管有些用户报告成功地导入了从Viscosity软件包中提取的配置文件。

179.手动配置客户端客户端手动安装需要更多的步骤来将软件和设置安装到客户端PC上。 

180.安装Open×××之后,将证书复制到客户端并创建客户端配置文件。

181.每个客户端需要防火墙提供三个文件:CA证书、客户端证书和客户端密钥。如果服务器配置了TLS身份验证,则只需要第四个文件TLS密钥。

182.将证书复制到客户端后,必须创建Open×××客户端配置文件。这可以使用任何纯文本文件编辑器(例如Windows上的记事本)来完成。以下显示了最常用的选项:

183.client

184.dev tun

185.proto udp

186.remote vpn.example.com 1194

187.ping 10

188.resolv-retry infinite

189.nobind

190.persist-key

191.persist-tun

192.ca ca.crt

193.cert username.crt

194.key username.key

195.verb 3

196.comp-lzo

197.tls-auth tls.key 1

198.auth-user-pass

199.将密钥和Open×××配置分发给客户端的最简单方法是通过Open×××客户端导出插件。 如果用插件不是一个可行的选择,将所需的文件放入ZIP压缩文件或自解压压缩文件中,自动解压到C: Program Files Open××× config。 这必须安全地传输给最终用户,并且决不能通过未加密的不可信网络进行传递。

200.站点到站点连接示例(SSL/TLS)参见pfSense book之 Open×××站点到站点连接示例(SSL/TLS)

201.站点到站点连接示例(共享密钥)参见pfSense openvpn代理 book之 Open×××站点到站点连接示例(共享密钥)

202.pfSense book之Open×××(二)1.VPS大师服务器IPHONE及安卓设置OPENVPN手机2G3G4G免流教程

2.推荐环境:全新VPS CentOS6.4 64位

3.建议宽带:10M以上

4.教程环境:VPS大师香港vpn账号购买限量高端 CentOS 6.4 64位

5.操作工具:Xshell5、FlashFXP、Notepad++

6.《准备工作》

7.添加EPEL源:

8.更新yum软高速vpn推荐件:

9.《网络配置》

10.清空当前防火墙规则/保存/重启规则:

11.关闭SELINUX:

12.开启路由转发:

13.温馨提示:输入命令后会进入文件编辑状purevpn中国态,输入“I”即可对内容进行编辑

14.修改完成后按Esc退出编辑状态,然后输入:

15.重启sysctl生效路由转发:

16.重新配置防火墙规则:

17.《程序安装》

18.安装依赖:

19.安装OpenVPN:

20.《VPN服务配置》

21.配置VPN服务端参数:

22.《制作证书》

23.下载证书生成工具:

24.制作证书:

25.使用FlashFXP 登陆服务器,进入 /home 目录,把 ca.crt、user01.crt、user01.key 三个文件下载到电脑,证书制作完毕!

26.《端口转发》

27.配置/启用端口转发:

28.《启动OpenVPN》

29.《客户端配置文件》

30.下载 test.ovpn 配置文件模板

31.点击下载:test.ovpn

32.配置ovpn文件

33.使用 Notepad++ 打开test.ovpn文件把“填写服务器IP” 写上你自己服务器的IP

34.打开在服务器下载回来的 ca.crt 文件

35.复制里面全部内容粘贴到 test.ovpn 文件的CA证书处

36.效果如下图

37.打开在服务器下载回来的 user01.crt 文件

38.复制证书部分的代码—–BEGIN CERTIFICATE—–

39.此处是证书内容,很长MIIFFzCCA/+gAwIBAgIBBDANB

40.EjAQBgNVBAgTCUd1YW5nRG9uZzERMA8GA1UEB…

41.—–END CERTIFICATE—–

42.粘贴到 test.ovpn 文件的 客户端证 书证书处

43.效果如下图

44.打开在服务器下载回来的 user01.key 文件

45.复制里面全部内容

46.粘贴到 test.ovpn 文件的 客户证书密钥 证书处

47.保存test.ovpn文件,制作完成

48.《一切准备就绪,开始测试》

49.在你的iPhone安装 OpenVPN 软件:

50.通过你知道的方法把 test.ovpn 文件发送到手机:

51.手机接收到文件后,打开方式选择 OpenVPN程序:

52.链接VPN:

53.百度搜索:IP

54.如果显示的IP 是服务器IP的话,说明代理成功

55.================================================

56.test.ovpn模板内资移动4G 免流模式,能不能免流自行测试吧。

57.如果你有免流模式,也可以编辑 .ovpn 文件,把模式粘贴到免流代理区域中

58.================================================

59.创建多用户:

60../build-key user… 证书名字随意,你也可以按照user03、04、05…,这样就比较直观

61.然后把user02.crt、user02.key文件下载下来,粘贴到ovpn文件内,一个证书只能同时登陆一个用户,要多个用户同时登陆,就必须创建多个客户端证书,CA证书是一样的。

62.当然,你也可以使用pam密码验证登陆/文本密码验证登陆,这个方法就不详细介绍了,自行百度

63.OpenVPN安卓客户端:

64.点击下载:

65.OpenVPN-安卓客openvpn代理户端

66.OpenVPN-苹果客户端1.一文读懂PPTP、L2TP、IPSec、OpenVPN和SSTP代理协议

2.主流的VPN协议有PPTP、L2TP、IPSec、OpenVPN和SSTP,具体区别如下: 

3.PPTP 中国还能用的vpn 点对点隧道协议 (PPTP) 是由包括微软和3Com等公司组成的PPTP论坛开发的%2f种点对点隧道协,基于拨号使%2f的PPP 协议使%2fPAP或CHAP之类的加密算法,或者使%2f Microsoft的苹果手机vpn下载点对点加密算法MPPE。其通过跨越基于 TCP/IP 的数据 %2f络创建 VPN 实现了从远程客户端到专%2f企业服务器之间数据的安全传输。PPTP %2f持通过公共%2f络(例如 Internet) 建%2f按需的、苹果手机免费的vpn多协议的、虚拟专%2f%2f络。PPTP 允许加密 IP 通讯,然后在要跨越公司 IP %2f络或公共 IP %2f络(如 Internet)发送的 IP 头中对其进%2f封装。 

4.L2TP 第 ipad vpn软件2 层隧道协议 (L2TP) 是IETF基于L2F (Cisco的第%2f层转发协议)开发的PPTP的后续版本。是%2f种%2f业标准 Internet 隧道协议,其可以为跨越%2f向数据包的媒体发送点到点协议 (PPP) 框架提供封装。PPTP和L2TP都使%2fPPP协 议对数据进%2f封装,然后添加附加包头%2f于数据在互联%2f络上的传输。PPTP只能在两端点间建%2f单%2f隧道。 L2TP%2f 持在两端点间使%2f多隧道,%2f户可以针对不同的服务质量创建不同的隧道。L2TP可以提供隧道验证,%2fPPTP则不%2f持 隧道验证。但是当L2TP 或PPTP与IPSEC共同使%2f时,可以由IPSEC提供隧道验证,不需要在第2层协议上验证隧道使 %2fL2TP。 PPTP要求互联%2f络为IP%2f络。L2TP只要求隧道媒介提供%2f向数据包的点对点的连接,L2TP可以在IP(使%2f UDP),桢中继永久虚拟电路(PVCs),X.25虚拟电路(VCs)或ATM VCs%2f络上使%2f。 

5.IPSec IPSec 隧道模式隧道是封装、路由与解封装的整个过程。隧道将原始数据包隐藏(或封装)在新的数据包内部。该新的 数据包可能会有新的寻址与路由信息,从%2f使其能够通 过%2f络传输。隧道与数据保密性结合使%2f时,在%2f络上窃听通讯 的%2f将%2f法获取原始数据包数据(以及原始的源和%2f标)。封装的数据包到达%2f的地后,会删除封装,原始数据包头%2f 于将数据包路由到最终%2f的地。 隧道本%2f是封装数据经过的逻辑数据路径,对原始的源和%2f的端,隧道是不可见的,%2f只能看到%2f络路径中的点对点连 接。连接双%2f并不关%2f隧道起点和终点之间的任何路由器、交换机、代理服务器或其他安全%2f关。将隧道和数据保密性 结合使%2f时,可%2f于提供VPN。 封装的数据包在%2f络中的隧道内部传输。在此%2f例中,该%2f络是 Internet。%2f关可以是外部 Internet 与专%2f%2f络间的周 界%2f关。周界%2f关可以是路由器、防%2f墙、代理服务器或其他安全%2f关。另外,在专%2f%2f络内部可使%2f两个%2f关来保护 %2f络中不信任的通讯。 当以隧道模式使%2f IPSec 时,其只为 IP 通讯提供封装。使%2f IPSec 隧道模式主要是为了与其他不%2f持 IPSec 上的 L2TP 或 PPTP VPN 隧道技术的路由器、%2f关或终端系统之间的相互操作。 

6.OpenVPN SSL/TLS协议提供了数据私密性、端点验证、信息完整性等特性。SSL/TLS协议由许多%2f协议组成,其中两个主要的%2f 协议是握%2f协议和记录协议。握%2f协议允许服务器和客户端在应%2f协议传输第%2f个数据字节以前,彼此确认,协商%2f种 加密算法和密码钥匙。在数据传输期间,记录协议利%2f握%2f协议%2f成的密钥加密和解密后来交换的数据。 SSL/TLS独%2f于应%2f,因此任何%2f个应%2f程序都可以享受它的安全性%2f不必理会执%2f细节。SSL/TLS置%2f于%2f络结构体 系的 传输层和应%2f层之间。此外,SSL/TLS本%2f就被%2f乎所有的Web浏览器%2f持。这意味着客户端不需要为了%2f持 SSL/TLS连接安装额外的软件。这两个特征就是SSL/TLS能应%2f于VPN的关键点。

7.典型的SSL VPN应%2f如OpenVPN,是%2f个%2f较好的开源软件。PPTP主要为那些经常外出移动或家庭办公的%2f户考虑; %2fOpenVPN主要是针对企业异地两地总分公司之间的VPN不间断按需连接,例如ERP在企业中的应%2f。 OpenVPN 允许参与建%2fVPN的单点使%2f预设的私钥,第三%2f证书,或者%2f户名/密码来进%2f%2f份验证。它%2f量使%2f了 OpenSSL加密库,以及SSLv3/TLSv1 协议。OpenVPN能在Linux、xBSD、Mac OS X与Windows 2000/XP上运%2f。它 并不是%2f个基于Web的VPN软件,也不与IPsec及其他VPN软件包兼容。 隧道加密 OpenVPN使%2fOpenSSL库加密数据与控制信息:它使%2f了OpesSSL的加密以及验证功能,意味着,它能够使%2f任何 OpenSSL%2f持的算法。它提供了可选的数据包HMAC功能以提%2f连接的安全性。此外,OpenSSL的硬件加速也能提%2f 它的性能。 验证OpenVPN提供了多种%2f份验证%2f式,%2f以确认参与连接双%2f的%2f份,包括:预享私钥,第三%2f证书以及%2f户名/密码组 合。预享密钥最为简单,但同时它只能%2f于建%2f点对点的VPN;基于PKI的第三%2f证书提供了最完善的功能,但是需要 额外的精%2f去维护%2f个PKI证书体系。OpenVPN2.0后引%2f了%2f户名/%2f令组合的%2f份验证%2f式,它可以省略客户端证 书,但是仍有%2f份服务器证书需要被%2f作加密。 %2f络OpenVPN所有的通信都基于%2f个单%2f的IP端%2f,默认且推荐使%2fUDP协议通讯,同时TCP也被%2f持。OpenVPN连接 能通过%2f多数的代理服务器,并且能够在NAT的环境中很好地%2f作。服务端具有向客户端“推送”某些%2f络配置信息的功 能,这些信息包括:IP地址、路由设置等。OpenVPN提供了两种虚拟%2f络接%2f:通%2fTun/Tap驱动,通过它们,可以建 %2f三层IP隧道,或者虚拟%2f层以太%2f,后者可以传送任何类型的%2f层以太%2f络数据。传送的数据可通过LZO算法压缩。 IANA(Internet Assigned Numbers Authority)指定给OpenVPN的官%2f端%2f为1194。OpenVPN 2.0以后版本每个进程 可以同时管理数个并发的隧道。 OpenVPN使%2f通%2f%2f络协议(TCP与UDP)的特点使它成为IPsec等协议的理想替代,尤其是在ISP(Internet service provider)过滤某些特定VPN协议的情况下。在选择协议时候,需要注意2个加密隧道之间的%2f络状况,如有%2f延迟或 者丢包较多的情况下,请选择 TCP协议作为底层协议,UDP协议由于存在%2f连接和重传机制,导致要隧道上层的协议 进%2f重传,效率%2f常低下。 安全OpenVPN与%2f俱来便具备了许多安全特性:它在%2f户空间运%2f,%2f须对内核及%2f络协议栈作修改;初始完毕后以 chroot%2f式运%2f,放弃root权限;使%2fmlockall以防%2f敏感数据交换到磁盘。 OpenVPN通过PKCS#11openvpn代理%2f持硬件加密标识,如智能卡。 1.不改路由表实现智能选择线路,提升访问国内外网站速度

2.我最近用VPN的时候觉得有些地方不太好用,比如说用HTTP代理的时候可以用Chrome的proxy-switchysharp插件做自动切换,这哪个翻墙软件好用样访问国内资源时和访问国外资源时都很快。因此我用goproxy写了几行代码做了个可以指定本地出口IP的http proxy,连VPN时去掉“Send all traffic over VPN 快狸猫vpn 苹果怎么下载vpn connection“选项,然后用proxy-switchysharp自动切换出口。

3.不过现在程序还有一些问题,我尝试去访问facebook和twitter都失败了,不知道为什么,同样是https,google和stackoverflow都是正常的,求高手指点。

4.#########

5.好了,我知道为什么脸书和推推不能访问了,因为DNS墙了。。。解析出来的地址就不对。

6.中国vpn app不知道有没有办法在go里面指定ResolveTCPAddr的dns服务器,我现在只能在hosts里面加上正确的IP地址来访问。

7.#########

8.代码如下:

9.使用方法

10.启动代理之后就可以像普通http代理一样在浏览器中使用他咯,非常方便。

11. 

12.另外看到一个也是基于goproxy的项目功能也挺有意思,主要是为开发者解决切换开发、生产环境麻烦的问题。有时间的话想整合一下这些功能,但是好像作者已经不更新了,而且是发布在bitbucketopenvpn代理的。。。1.什么是VPN?看运维专家聊聊VPN的那些事儿

2.VPN对各位来说肯定是非常熟悉的,比如在家里加密访问公司后台,或者在特殊场景做权限控制,还有就是可以让移动设备拨vpn之后利用tc做弱网模拟,或者是香港vpn服务器地址在国内访问google服务等,不过听说google学术已经开始重返中国,以后可以在国内直接访问到了。

3.VPN技术可以做的远不止如此,今天我们来随便聊聊VPN身边的那些事情。

4.我们这飞鱼vpn chrome里说的VPN主要是关于企业应用常见相关,不涉及到非法跨网。

5.VPN有很多种,比如Linux上最常用的pptp类型的vpn,稍微复杂点的openvpn,还有学cisco时候实验用的EASY VPN,还有些看起来高大上的Juniper 苹果手机如何使用vpn VPN。

6.其实远远不止这些,在实际环境下如果要兼容各个网络运营商和终端设备的话,就非常推荐SoftEtherVPN这个vpn盒子了。

7.香港vpn服务器VPN网络

8.下面来挑点东西和大家分享下。

9.GRE隧道

10.这个gre隧道是Linux上一个最简单的”vpn”,远远比pptp简单,但是并不那么出名,因为他不直接和用户接触,一般是属于服务器或者网络设备之间的”vpn网络”。

11.在A、B两个异地机房,有两个内网需要连接起来,我们不需要用vpn,直接用Linux自带属性即可完成。

12.首先在A、B服务器上互加IP白名单,然后在A服务器上操作:

13.#加载ip_gre模块

14.modprobe ip_gre

15.ip tunnel add gre1 mode gre remote B_IP local A_IP ttl 255

16.ip link set gre1 up

17.ip addr add 192.10.10.2 peer 192.10.10.1 dev gre1

18.在B服务器上操作:

19.#加载ip_gre模块

20.modprobe ip_gre

21.ip tunnel add gre1 mode gre remote A_IP local B_IP ttl 255

22.ip link set gre1 up

23.ip addr add 192.10.10.1 peer 192.10.10.2 dev gre1

24.两边都敲完的话就有个隧道网段生成了,红色地方是本段和对端的公网IP,下面两个就是生成的隧道网段的IP了:

VPN网络

25.然后在这两个服务器互相用route命令加上对方内网的路由表走这个对端IP就可以了。

26.要断掉这个隧道网络的话直接删掉这个隧道网卡即可:

27.ip tunnel del gre1

28.在服务器之间用这个的话,比pptp搭建个vpn方便点点。 -_-

29.Socket代理

30.简单介绍下web的代理,如果无法访问vpn的时候,这个可能有用武之地,比如某后台只允许了某台服务器的IP,我们可以在这个服务器上临时搭建个代理服务,然后终端用户可以通过这个跳板来访问后台了。

31.这个代理我们一般是用于访问web流量,比如用squid或者ssh新建一条隧道,这里普及下,原先可能大家都认为squid做代理的时候因为没有目的站点的证书,是无法代理https流量,但其实不是这样,可以利用stunnel结合来做https流量的代理,或者sniproxy也行。

32.不过squid搭建起来也比较麻烦,这里简单介绍下ssh一条命令来创建代理:

33.ssh -p 22 -qTfnN -D 0.0.0.0:7070 [email protected]

34.在目的服务器上运行之后会监听7070端口,在浏览器设置这个代理之后,web流量的出口就可以是这个服务器了。

35.这个可以快速在多台服务器上创建多个用于频繁改变用户出口IP的代理,在某些场合下可能用得到,比如“帮朋友投下票”。

36.PPP协议

37.PPP协议的vpn有几种实现方式,勉强归类一下,包括pptp、sstp、l2tp。

38.大家接触linux时候一般都是用这个pptp类型的vpn,也很简便,但我们在某些特殊场合下面把这个vpn的功能给升级了。

什么是VPN?看运维专家聊聊VPN的那些事儿插图2

39.这个vpn有别的打开方式能让我们点赞。

40.首先是认证控制,原先认证只可以用帐号和密码认证,但是其实还可以加上源IP校验。

41.再有的是权限的自动化控制,强调自动化是因为我们的场景是在后台管理帐号、用户源IP和拨vpn之后对应的权限甚至是进行抓包备案。

42.实现这两个功能利用的是/etc/ppp/ip-up这个文件,这个是在校验帐号密码之后调用的一个脚本文件,我们在这里可以自定义一些逻辑来实现我们需要的功能。

43.通过加入sh -x来调试这个脚本,可以发现会传入6个参数,其中就有我们需要的变量信息:

44.第一个参数是网卡名称第五个参数是vpn获取的ip第六个参数是用户的来源IPPEERNAME变量代表用户的帐号有了这些我们就可以另外写一个提供复杂逻辑的脚本来给ip-up调用。

openvpn代理VPN网络

45.比如先在ip-up里面加入日志,然后调用add_iptables.sh来做复杂的认证和权限控制,到最后放入一个tcpdump来在后台抓包做备用审计。

46.add_iptables.sh逻辑也比较简单,利用传入的参数来跟我们后台提供的数据进行对比然后调用IPTABLES处理相关的复杂权限控制即可。

47.同理,还有另外一个/etc/ppp/ip-down的脚本是在用户断开vpn的时候自动调用的一个脚本,在这里可以删除掉之前IPTABLES做的控制,然后还可以自动分析之前的tcpdump数据包然后写入mysql。

48.上面说的是pptp类型的vpn,但是自从IOS设备已经弃用了pptp,在这个场景下我们可以再加入l2tp的vpn。同样是在/etc/ppp目录,我们只需要再安装配置ipsec(libreswan)和xl2tpd即可。

49.注意l2tp对外开放端口时候需要加多个,有udp的500、4500、1701这3个端口和esp协议,而且l2tp和pptp的逻辑和帐号文件是同一套,所以非常顺利就兼容了之前的那些方案,具体搭建方案就不再多阐述了。

50.OpenVPN

OpenVPN

51.曾经这个vpn类型在某些场合很流行,因为看起来比pptp那些高大上些,甚至是可以让每个用户必须有专有的证书才可以拨上这个openvpn,需要各种私钥、公钥、客户端,给人一种靠谱的感觉。

52.有很多经过二次开发的商业化的VPN客户端也是采用了类似的三层tun虚拟隧道或者tap的虚拟网卡原理来实现内部逻辑。

53.openvpn也比较灵活,比如可以用auth-user-pass-verify来调用权限控制脚本等,很长一段时间我们也在一些场合下用这个openvpn方案。

54.不过不打算深入讲下去,因为我们之后有更加实用的选择。

55.SoftEtherVPN盒子

56.这个vpn (地址:https://github.com/SoftEtherVPN/) 是集中了多个vpn协议的软件,兼容性非常强,有多强呢?看图:

SoftEtherVPN

57.几乎是所有类型的终端都可以找到合适的vpn协议来连接这个server。

58.同时支持用vpncmd命令行管理和客户端管理:

VPN

59.虽然他提供了很多功能,相当于傻瓜式地自动安装了,不过有几点建议:

60.不要用他自带的nat功能,自己用IPTABLES做nat好些自带有dhcp功能,如果是要做复杂的网段控制,特别是vlan功能,建议另行搭建dhcpd服务并在/etc/sysconfig/dhcpd加入多个监听的网卡。如果可行的话,建议导入正规的证书,因为如果是做sstp的话会在用户端校验证书,否则用户体验非常不好甚至是直接失败。帐号认证可以使用radius服务器,方便和别的帐号系统联动,我们用的是CISCO的ISE设备。

61.由于各类网络运营商的限制,可以同时开启多个类型vpn给用户备用。下面简单介绍下命令行的使用,因为想要自动化还得靠这个。

62.#进入命令行管理界面

63../vpncmd server:port /SERVER /HUB:hub_name /PASSWORD:password

64.#在命令行管理界面的子命令:

65.#查看帮助,每个命令都可以用help查看详细参数

66.help

67.#查看当前用户和流量

68.SessionList

69.#用户的增删查改

70.UserCreate UserDelete UserList UserSet

71.上面几个常用的命令基本可以满足我们的需求了,通过管道传入即可实现命令行自动化管理。

72.不过这个软件有个遗憾,多个vpn协议中不支持pptp类型。

73.应用场景比较多,这里小列举下。

74.加密跨网访问

75.国际网络不好时候,用来翻墙访问github之类的地址,这个是最常见的用法。

76.还有个是被媒体揭秘过的借VPN方案利用运营商的定向免费流量来谋取暴利的跨网访问等,不过这个定向的免费流量利用方式不一定靠谱,不推荐。

77.网游加速器

78.基于国内的各种网络环境,特别是小运营商的网络质量很让人伤心,一些游戏运营商会开发些经过封装的“VPN软件”,取名XX加速器,比如可以通过本地路由把游戏服务器的网段通过vpn技术导向服务端,服务端那里再经过一些逻辑处理取就近资源或者直接使用高质量的BGP网络进行转发以提高用户访问质量。

79.特殊网络审计

80.这个也就是上面ppp协议那里的实现方法,用于一些特殊场合的精细化访问控制和审计。

81.随机出口IP方案

82.之前又说个改变用户出口IP的事情,这里顺带一个解决方案,比如可以在服务器上既做提供vpn给用户的服务端,同时也可以做全球不同地方的客户端,然后通过控制IPTABLES的nat来切换vpn用户的出口。

83.如果不方便在全球部署服务器的话可以在机房拉一条ADSL到服务器的另外一个网卡,然后通过pppoe-start来拨号,通过自动重拨来更改出口IP。大致框架如下:

VPN

84.注意这里设置默认网关往ADSL出口的时候需要针对原本机IP做策略路由才可以保证网络是通的。

85.在/etc/iproute2/rt_tables里面加入101 benji

86.然后本机策略路由:

87./sbin/ip route add default via 原网关 dev em1 table benji

88./sbin/ip rule add from 原IP table benji

89.这样才可以保证ADSL出口不影响原IP的访问。

90.弱网模拟

91.手游在弱网环境下的测试也可以用vpn加上tc来模拟,这个在游戏精细化运维时候有用得上。命令参考如下:

92.#添加root根

93.tc qdisc add dev eth0 root handle 1: prio

94.#配置这个id是丢包30%,上下浮动2%

95.tc qdisc add dev eth0 parent 1:1 handle 2: netem loss 30% 2%

96.#或者是延迟500ms,上下浮动20ms

97.tc qdisc add dev eth0 parent 1:1 handle 2: netem delay 500ms 20ms

98.#然后设置

99.tc filter add dev eth0 parent 1:0 protocol ip pref 55 handle ::55 u32 match ip dst 目的IP flowid 2:1

100.#测试完之后,删除命令

101.tc qdisc del dev eth0 root

102.经过tc的控制,手机网络会控制地非常精准,用来做弱网模拟很不错。

103.总的来说,经历过多个vpn之后发现juniper的防火墙提供的vpn是最繁琐和死板的,还有license限制,pptp/l2tp的最灵活,最后最实用的是同时可以提供多个vpn协议的softethervpn。

104.VPN给人的印象也不应停留在非法的领域,具体用处还是挺多的,不过尽量不要使用网络上公开的那种vpn,在vpn服务端那里可能存在各种中间人劫持甚至包括针对https的攻击。

105.原文来自微信公众号:运维军团

106.')}1.使用 HAProxy 代理 OpenVPN

2.最近换公司遇到一个很操蛋的问题,只有我的小区宽带无法连接公司的 vpn 网关.

3.使用自己阿里云或者腾讯云的主机却可以 ping 通,也就是说wireguard中国,公司的网关只跟我家宽带过不去.

4.咨询了运维大哥, 运维大哥的解释是:公司idc上网出口问题,等几天就换.

5.然而这都快一个月了,依然连不上......

6.求人不如求己, openvpn vpn购买推荐 是基于 tcp 的, 那咱们就上代理吧。

7.用什么呢,首选 nginx, 可是他对 tcp 的支持貌似不怎么好, 毕竟人家是专门搞 http 应用协议的。

8.说到对 tcp express vpn国内 支持比较好的想起了 HAProxy, 就它吧。

9.使用了一台没什么用的腾讯云主机, ubuntu 16 系统

10.修改openvpn代理为以下内容

11.默认配置不动,追加下面的部分,把 vpn.xxx.com 苹果手机的vpn 替换成自己想要代理的 vpn 地址至此,服务端就算完成了,接下来就要修改客户端配置文件了pc端vpn1.使用eclipse等其他自带java编译器的软件,换回sun的编译器方法

2.下面的命令大都需要在 控制台 / 终端 / shell 下输入。

3.控制台, 终端, 和 shell 意味着同样vpn节点购买一件事 - 一个命令行界面, 他可以用来控制系统。

4.打开一个控制台:

5.应用程序 --> 附件 --> 终端

6.任何一个使用 'sudo' 作为前缀的命令都需要拥有管理员 ikuuu vpn怎么样(或 root) 访问权限。 所以你会被提示输入你自己的密码。

7.dpkg -L xxx

8.apt-cache search 正则表达式

9.或

10.aptitude search mac中国vpn 软件包

11.apt-cache stats

12.apt-cache pkgnames

13.apt-cache show k3b

14.apt-file search filename

15.dpkg -l

16.apt-cache depends xxx

17.apt-cache rdepends xxx

18.sudo apt-cdrom add

19.sudo apt-get update (这一步更新包列表)

20.sudo apt-get dist-upgrade (这一步安装所有可用更新)

21.或者

22.sudo apt-get upgrade (这一步安装应用程序更新,不安装新内核等)

23.dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P

24.如果报如下错误,证明你的系统中没有残留配置文件了,无须担心。

25.dpkg: --purge needs at least one package name argument

26.Type dpkg --help for help about installing and deinstalling packages [*];

27.Use `dselect' or `aptitude' for user-friendly package management;

28.Type dpkg -Dhelp for a list of dpkg debug flag values;

29.Type dpkg --force-help for a list of forcing options;

30.Type dpkg-deb --help for help about manipulating *.deb files;

31.Type dpkg --license for copyright license and lack of warranty (GNU GPL) [*].

32.Options marked [*] produce a lot of output - pipe it through `less' or `more' !

33.sudo auto-apt run ./configure

34.ls /var/cache/apt/archives

35.dpkg --get-selections | grep -v deinstall > ~/somefile

36.dpkg --set-selections 10.04。

37.使用该升级方式通常需要使能 backports 源。

38.sudo apt-get update

39.sudo apt-get install update-manager-core

40.sudo do-release-upgrade

41.uname -a

42.#查看long的位数,返回32或64

43.getconf LONG_BIT

44.#查看文件信息,包含32-bit就是32位,包含64-bit就是64位

45.file /sbin/init

46.cat /etc/issue

47.或 cat /etc/lsb-release

48.或 lsb_release -dsc

49.lsmod

50.lspci

51.lsusb

52.#加参数 -v 可以显示USB设备的描述表(descriptors)

53.lsusb -v

54.sudo apt-get install ethtool

55.sudo ethtool eth0

56.sudo apt-get install wakeonlan

57.或 sudo ethtool -s eth0 wol g

58.cat /proc/cpuinfo

59.sudo lshw

60.#CPU ID

61.sudo dmidecode -t 4 | grep ID

62.#Serial Number

63.sudo dmidecode | grep Serial

64.#CPU

65.sudo dmidecode -t 4

66.#BIOS

67.sudo dmidecode -t 0

68.#主板:

69.sudo dmidecode -t 2

70.#OEM:

71.sudo dmidecode -t 11

72.free -m |grep "Mem" | awk '{print $2}'

73.sudo apt-get install hddtemp

74.sudo hddtemp /dev/sda

75.uptime

76.ulimit -a

77.ipcs -l

78.xrandr

79.sudo fdisk -l

80.#危险!小心操作。

81.sudo fdisk /dev/sda

82.#危险!将第一个分区格式化为 ext3 分区, mkfs.reiserfs mkfs.xfs mkfs.vfat

83.sudo mkfs.ext3 /dev/sda1

84.#危险!检查第一个分区,请不要检查已经挂载的分区,否则容易丢失和损坏数据

85.sudo fsck /dev/sda1

86.sudo mount -t 文件系统类型 设备路经 访问路经

87.#常用文件类型如下: iso9660 光驱文件系统, vfat fat/fat32分区, ntfs ntfs分区, smbfs windows网络共享目录, reiserfs、ext3、xfs Linux分区

88.#如果中文名无法显示尝试在最後增加 -o nls=utf8 或 -o iocharset=utf8

89.#如果需要挂载後,普通用户也可以使用,在 -o 的参数後面增加 ,umask=022 如:-o nls=utf8,umask=022

90.sudo umount 目录名或设备名

91.sudo mount -t ntfs -o nls=utf8,umask=0 /dev/sdb1 /mnt/c

92.sudo mount -t ntfs-3g -o locale=zh_CN.utf8,umask=0 /dev/sdb1 /mnt/c

93.sudo mount -t vfat -o iocharset=utf8,umask=0 /dev/sda1 /mnt/c

94.sudo mount -t smbfs -o username=xxx,password=xxx,iocharset=utf8 //192.168.1.1/share /mnt/share

95.sudo mount -t iso9660 -o loop,utf8 xxx.iso /mnt/iso

96.sudo hdparm -i /dev/sda

97.cat /proc/mdstat

98.dmesg |grep -i raid

99.cat /proc/scsi/scsi

100.sudo hdparm -I /dev/sda

101.或

102.sudo apt-get install blktool

103.sudo blktool /dev/sda id

104.df

105.用法:df [选项]... [文件]...显示每个所在的文件系统的信息,默认是显示所有文件系统。

106.长选项必须用的参数在使用短选项时也是必需的。

107.-a, --all 包括大小为 0 个块的文件系统

108.-B, --block-size=大小 块以指定的字节为单位

109.-h, --human-readable 以容易理解的格式印出文件系统大小 (例如 1K 234M 2G)

110.-H, --si 类似 -h,但取 1000 的次方而不是 1024

111.-i, --inodes 显示 inode 信息而非块使用量

112.-k 即 --block-size=1K

113.-l, --local 只显示本机的文件系统

114.--no-sync 取得使用量数据前不进行同步动作 (默认)

115.-P, --portability 使用 POSIX 兼容的输出格式

116.--sync 取得使用量数据前先进行同步动作

117.-t, --type=类型 只印出指定文件系统为指定的信息

118.-T, --print-type 印出文件系统类型

119.-x, --exclude-type=类型 只印出文件系统不是指定信息

120.-v (忽略)

121.--help 显示此帮助信息并离开

122.--version 显示版本信息并离开

123.du -hs 目录名

124.sync

125.fuser -km /media/usbdisk

126.#创建一个512M的交换文件 /swapfile

127.sudo dd if=/dev/zero of=/swapfile bs=1M count=512

128.sudo mkswap /swapfile

129.sudo swapon /swapfile

130.#sudo vim /etc/fstab #加到fstab文件中让系统引导时自动启动

131./swapfile swap swap defaults 0 0

132.# 首先安装 sysstat 包

133.sudo apt-get install sysstat

134.#每2秒刷新一次

135.sudo iostat -x 2

136.free

137.usage: free [-b|-k|-m|-g] [-l] [-o] [-t] [-s delay] [-c count] [-V]

138.-b,-k,-m,-g show output in bytes, KB, MB, or GB

139.-l show detailed low and high memory statistics

140.-o use old format (no -/+buffers/cache line)

141.-t display total for RAM + swap

142.-s update every [delay] seconds

143.-c update [count] times

144.-V display version information and exit

145.watch -d free

146.# 使用 Ctrl + c 退出

147.top

148.top指令运行时输入H或?打开帮助窗口,输入Q退出指令。

149.ps -AFL

150.ps -A -opid,stime,etime,args

151.w

152.ps -u $USER -o pid,rss,cmd --sort -rss

153.ps -eo fname,rss|awk '{arr[$1]+=$2} END {for (i in arr) {print i,arr[i]}}'|sort -k2 -nr

154.ps -eo "%C  : %p : %z : %a"|sort -k5 -nr

155.ps -eo "%C  : %p : %z : %a"|sort -nr

156.pstree

157.kill 进程号(就是ps -A中的第一列的数字)

158.或者 killall 进程名

159.kill -9 进程号

160.或者 killall -9 进程名

161.xkill 出现骷髅标志的鼠标,点击需要中止的程序即可

162.lsof -p 进程的pid

163.lsof abc.txt

164.lsof -i :22

165.lsof -c nsd

166.nohup 程序 &

167.#查看中间运行情况tail nohup

168.sudo apt-get install screen

169.screen vim a.txt

170.#直接退出后使用

171.screen -ls # 1656.pts-0.ubuntu (Detached)

172.screen -r 1656 #恢复

173.#热键,同时按下Ctrl和a键结束后,再按下功能键

174.C-a %2f#显示所有键绑定信息

175.C-a w#显示所有窗口列表

176.C-a C-a#切换到之前显示的窗口

177.C-a c#创建一个新的运行shell的窗口并切换到该窗口

178.C-a n#切换到下一个窗口

179.C-a p#切换到前一个窗口(与C-a n相对)

180.C-a 0..9#切换到窗口0..9

181.C-a a#发送 C-a到当前窗口

182.C-a d#暂时断开screen会话

183.C-a k#杀掉当前窗口

184.strace -f -F -o outfile

185.echo 4096 > /proc/sys/fs/file-max

186.#或者

187.ulimit -n 4096

188.ps -eal | awk '{ if ($2 == "Z") {print $4}}' | xargs sudo kill -9

189.ps -eo pid,fname,rss|grep php-cgi|grep -v grep|awk '{if($3>=120000) print $1}' | xargs sudo kill -9

renice +10 `ps aux | awk '{ if ($3 >190.&& id -u $1 > 500) print $2}'`

191.#或直接编辑/etc/security/limits.conf文件。

192.sudo pppoeconf

193.sudo pon dsl-provider

194.sudo /etc/ppp/pppoe_on_boot

195.sudo poff

196.sudo plog

197.#首先去 申请一个动态域名

198.#然後修改 /etc/ppp/ip-up 增加拨号时更新域名指令

199.sudo vim /etc/ppp/ip-up

200.#在最後增加如下行

201.w3m -no-cookie -dump '

202.arping IP地址

203.nmblookup -A IP地址

204.ifconfig eth0 |awk '/inet/ {split($2,x,":");print x[2]}'

205.w3m -no-cookie -dump |grep -o '[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}'

206.w3m -no-cookie -dump ip.loveroot.com|grep -o '[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}'

207.curl ifconfig.me

208.lsof -i :80

209.ifconfig eth0 | head -1 | awk '{print $5}'

210.#在网卡eth0上增加一个1.2.3.4的IP:

211.sudo ifconfig eth0:0 1.2.3.4 netmask 255.255.255.0

212.#删除增加的IP:

213.sudo ifconfig eth0:0 down

214.echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward

215.sudo iptables -t nat -I POSTROUTING -j MASQUERADE

216.netstat -rn

217.sudo route -n

218.sudo route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1

219.sudo route del -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1

220.sudo ifconfig eth0 down #关闭网卡

221.sudo ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE #然后改地址

222.sudo ifconfig eth0 up #然后启动网卡

223.永久改地址方法

224.sudo gedit /etc/network/interfaces

225.在 iface eth0 inet static 后面添加一行:

226.pre-up ifconfig eth0 hw ether 01:01:01:01:01:01

227.配置文件应该像如下

228.iface eth0 inet static

229.pre-up ifconfig eth0 hw ether 01:01:01:01:01:01

230.address 192.168.1.10

231.netmask 255.255.255.0

232.gateway 192.168.1.1

233.最后是 logout 或者reboot

234.netstat -na|grep ESTABLISHED|awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -r -n

235.netstat -na|grep SYN|awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -r -n

236.netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

237.netstat -nat|awk '{print awk $NF}'|sort|uniq -c|sort -n

238.tcpdump -tnn -c 20000 -i eth0 | awk -F "." '{print $1"."$2"."$3"."$4}' | sort | uniq -c | sort -nr | awk ' $1 > 100 '

239.echo "blacklist ipv6" | sudo tee /etc/modprobe.d/blacklist-ipv6

240.sudo netstat -atnp

241.netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

242.nc -zv localhost 1-65535

243.#安装 ethstatus 软件

244.sudo apt-get install ethstatus

245.#查看 ADSL 的速度

246.sudo ethstatus -i ppp0

247.#查看 网卡 的速度

248.sudo ethstatus -i eth0

249.#或安装 bwm-ng

250.sudo apt-get install bwm-ng

251.#查看当前网络流量

252.bwm-ng

253.whois baidu.cn

254.tracepath baidu.cn

255.sudo dhclient

256.wget -r -p -np -k

257.· -r:在本机建立服务器端目录结构;

258.· -p: 下载显示HTML文件的所有图片;

259.· -np:只下载目标站点指定目录及其子目录的内容;

260.· -k: 转换非相对链接为相对链接。

261.sudo apt-get install axel

262.axel -n 5

263.或者

264.lftp -c "pget -n 5

265.w3m -dump_head

266.或 curl --head

267.#进入需要共享的目录后运行:

268.python -m SimpleHTTPServer

269.#其它电脑使用 来访问

270.#自定义端口为8080:

271.python -m SimpleHTTPServer 8080

272.ssh -v -CNgD 7070 [email protected]

273.sudo apt-get install snort #安装snort入侵检测程序

274.sudo snort -vde

275.sudo apt-get install iftop

276.sudo iftop

277.#或

278.sudo apt-get install iptraf

279.sudo iptraf

280.#eth0 为外网网卡

281.sudo iptables -t nat -A PREROUTING -i eth0 -s 10.0.0.0/8 -j DROP

282.sudo iptables -t nat -A PREROUTING -i eth0 -s 172.16.0.0/12 -j DROP

283.sudo iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.0/16 -j DROP

284.sudo iptables -t nat -L

285.sudo iptables -L -n

286.sudo iptables -t nat -F

287.sudo iptables -F

288.#规则位于最后

289.sudo iptables -t filter -A INPUT -s 192.168.1.125 -i eth0 -j DROP

290.sudo iptables -A OUTPUT -p tcp --dport 1234 -j DROP

291.sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT

292.#80端口 ,规则插入到前面

293.sudo iptables -t filter -I INPUT -s 192.168.2.0/24 -p tcp --dport http -j DROP

294.#21端口,规则插入到前面

295.sudo iptables -t filter -I INPUT -s 192.168.1.23 -p tcp --dport ftp -j DROP

296.sudo apt-get install rkhunter

297.sudo rkhunter --checkall

298.sudo apt-get install clamav

299.clamscan -r ~/

300.卡巴斯基(deb):

301.avast!(免费/deb):

302.小红伞(gz):

303.BitDefender(比特梵德/run):

304.申请比特梵德的KEY:

305.sudo update-rc.d 服务名 defaults 99

306.sudo update-rc.d 服务名 remove

307./etc/init.d/服务名 restart

308./etc/init.d/服务名 stop

309./etc/init.d/服务名 start

310.sudo adduser 用户名

311.sudo deluser 用户名

312.passwd

313.sudo passwd 用户名

314.sudo chfn userid

315.sudo usermod -L 用户名 #锁定用户

316.sudo usermod -U 用户名 #解锁

317.或

318.sudo passwd -l 用户名 #锁定用户

319.sudo passwd -u 用户名 #解锁

320.sudo usermod -G admin -a 用户名

321.su 用户名

322.sudo -s

323.sudo -i

324.sudo su

325.sudo update-alternatives --config java

326.export http_proxy=

327.sudo vim /etc/motd

328.对于Java JDK6 (就是1.6,sun缩短Java的版本名字了):

329.sudo update-java-alternatives -s java-6-sun

330.对于Java JDK1.5

331.sudo update-java-alternatives -s java-1.5.0-sun

332.im-switch -c

333.sudo apt-get install convmv

334.convmv -r -f cp936 -t utf8 --notest --nosmart *

335.find src -type d -exec mkdir -p utf8/{} ;

336.find src -type f -exec iconv -f GBK -t UTF-8 {} -o utf8/{} ;

337.mv utf8/* src

338.rm -fr utf8

339.iconv -f gbk -t utf8 $i > newfile

340.for i in `find . *`; do if [ -f "$i" ]; then iconv -f gb2312 -t utf8 $i > "./converted/$i" fi ; done

341.sudo apt-get install python-mutagen

342.find . -iname '*.mp3' -execdir mid3iconv -e GBK {} ;

343.或者使用图形界面工具“”,具体请参考

344.sudo apt-get install zhcon

345.使用时,输入zhcon即可

346.更具体的输入:zhcon --utf8 --drv=vga

347.如果在/etc/zhcon.conf中指定了分辨率,可以去掉--drv=vga以指定的分辨率启动。

348.zhcon是个外挂的控制平台,也就是像US-DOS那样是额外安装的软件,装完后是需要驱动才能进去的,不然有可能死机;

349.当然驱动什么的在你sudo apt-get install zhcon的时候就已经安装了;

350.你所需要的是在进zhcon时要申明你所用的驱动,而zhcon在安装时,就装了3种驱动:vga,framebuffer,libggi,而我们一般都

351.是用的第一种驱动,因为比较方便简单,而那2钟驱动.很麻烦,我也就没改过.好了说了这么多该告诉各位怎么进入zhcon了;

352.运行时需输入:zhcon --utf8 --drv=vga

353.lftp :~>set ftp:charset GBK

354.lftp :~>set file:charset UTF-8

355.#下面是ubuntu安装标准的sun-java,安装过程中需要使用tab键切换同意其授权协议

356.sudo add-apt-repository "deb `lsb_release -c | awk '{print $2}'` partner"

357.sudo apt-get update

358.sudo apt-get install sun-java6-jdk sun-java6-plugin ttf-wqy-microhei

359.sudo apt-get remove ttf-kochi-gothic ttf-kochi-mincho ttf-unfonts ttf-unfonts-core

360.sudo mkdir -p /usr/lib/jvm/java-6-sun/jre/lib/fonts/fallback

361.sudo ln -s /usr/share/fonts/truetype/arphic/wqy-microhei.ttc /usr/lib/jvm/java-6-sun/jre/lib/fonts/fallback

362.sudo apt-get install openjdk-6-jdk ttf-wqy-microhei

363.#有两种解决办法,第一种关闭Java的AA

364.echo "export _JAVA_OPTIONS='-Dawt.useSystemAAFontSettings=on'" >> ~/.profile

365.#第二种直接修改Java字体配置

366.echo "allfonts.umingcn=WenQuanYi Microhei Hei" | sudo tee -a /usr/lib/jvm/java-6-openjdk/jre/lib/fontconfig.properties

367.echo "allfonts.uminghk=WenQuanYi Microhei Hei" | sudo tee -a /usr/lib/jvm/java-6-openjdk/jre/lib/fontconfig.properties

368.echo "allfonts.umingtw=WenQuanYi Microhei Hei" | sudo tee -a /usr/lib/jvm/java-6-openjdk/jre/lib/fontconfig.properties

369.echo "allfonts.wqy-zenhei=WenQuanYi Microhei Hei" | sudo tee -a /usr/lib/jvm/java-6-openjdk/jre/lib/fontconfig.properties

370.echo "allfonts.shanheisun=WenQuanYi Microhei Hei" | sudo tee -a /usr/lib/jvm/java-6-openjdk/jre/lib/fontconfig.properties

371.echo "filename.WenQuanYi_Microhei_Hei=/usr/share/fonts/truetype/wqy/wqy-microhei.ttc" | sudo tee -a /usr/lib/jvm/java-6-openjdk/jre/lib/fontconfig.properties

372.sudo apt-get remove ttf-kochi-gothic ttf-kochi-mincho ttf-unfonts ttf-unfonts-core

373.sudo apt-get install xpdf-chinese-simplified xpdf-chinese-traditional poppler-data

374.sudo gedit /etc/fonts/conf.d/49-sansserif.conf

375.将倒数第四行 sans-serif

376.改为 sans

377.保存即可,重启firefox

378.sudo apt-get install lunar-applet

379.鼠标点击面板右键 -> 添加到面板 -> 农历日期

380.sudo apt-get install p7zip-full

381.export LANG=zh_CN.GBK #临时在控制台修改环境为zh_CN.GBK,然后解压缩即可

382.7za e docs.zip

383.安装ibus-gtk即可,最好另外安装:ibus-qt4

384.cat 文件名

385.cat /etc/vsftpd.conf |grep -v ^#

386.more 文件名

387.less 文件名

388.nl 文件名

389.cat -n 文件名

390.cut -c 5- a.py

391.cat file.txt |sort -u

392.grep 字符串 文件名

393.grep -l -r 字符串 路径#显示内容包含字符串的文件名

394.grep -L -r 字符串 路径#显示内容不包含字符串的文件名

395.find . -path './cache' -prune -o -name "*.php" -exec grep -l "date_cache[$format]['lang']" {} ; #显示当前目录下不包含cache目录的所有含有“date_cache[$format]['lang']”字符串的php文件。

396.whereis filename

397.find 目录 -name 文件名

398.locate 文件名 # 注意,为了得到更好的效果,运行前可以更新下数据库,运行 sudo updatedb 即可,但这个命令每隔一段时间会自动运行,所以不用太在意

399.touch file1 file2

400.mkdir -pv /tmp/xxs/dsd/efd

401.rm -fr /tmp/xxs

402.cd ~

403.# 或者更简单的

404.cd

405.cd -

406.pwd

407.echo xxx.xxx.rmvb |sed 's/.*(..*$)/1/'

408.echo xxx.xxx.rmvb |sed 's/(.*)..*$/1/'

409.ls -a

410.mv 路径/文件 /新路径/新文件名

411.cp -av 原文件或原目录 新文件或新目录

412.file filename

413.stat filename

414.diff file1 file2

415.tail -6 xxx

416.tail -10f /var/log/apache2/access.log

417.或者

418.tailf /var/log/apache2/access.log

419.sed -n '5,10p' /var/log/apache2/access.log

420.apropos xxx

421.man -k xxx

422.scp -rp /path/filename [email protected]:/path #将本地文件拷贝到服务器上

423.scp -rp [email protected]:/path/filename /path #将远程文件从服务器下载到本地

424.tar cvzf - /path/ | ssh [email protected] "cd /some/path/; cat -> path.tar.gz" #压缩传输

425.tar cvzf - /path/ | ssh [email protected] "cd /some/path/; tar xvzf -" #压缩传输一个目录并解压

426.rename 's/.rm$/.rmvb/' *

427.rename 'tr/A-Z/a-z/' *

428.rm -- --help.txt 或者 rm ./--help.txt

429.ls -d */ 或 echo */

430.find . -type f -atime -30 -exec mv {} ../back ;

431.find . -type f -atime -30 | xargs tar zcvpf backup.tar.gz

432.find . -type f -atime -30 -print -exec tar rvpf backup.tar {} ;

433.find /home/ -path "*Maildir*" -type f -mmin -60|xargs -i grep -l xxxx '{}'

434.find . -mmin +120 -mmin -480 -exec more {} ;

435.find . -type f -mtime +30 -mtime -3600 -exec rm {} ;

436.find . -type f -atime +30 -atime -3600 -exec rm {} ;

437.find . -name '*.avi' -o -name '*.rm' -user 'guest' -exec rm {} ;

438.find . ! -name *.java ! -name ‘*.xml’ -atime +7 -exec rm {} ;

439.grep -rIl "abcd" ./* --color=never | xargs sed -i "s/abcd/xyz/g" #注意grep的一个参数是大写的i,一个参数是小写的L

440.find . -name .svn -type d -exec rm -fr {} ;

441.find . -name "*~" -exec rm {} ;

442.ls /usr/bin|wc -w

443.find . -name *.jpg -exec wc -c {} ;|awk '{print $1}'|awk '{a+=$1}END{print a}'

444.ls -l /usr/bin|grep ^d|wc -l

445.du -sm * | sort -nr | head -10

446.ls -l |grep 2006-01-01 |awk '{print $8}'

447.sudo rsync -Pa / /media/disk1 --exclude=/media/* --exclude=/home/* --exclude=/sys/* --exclude=/tmp/* --exclude=/proc/* --exclude=/mnt/*

448.rsync -Pa -I --size-only --delete --timeout=300 Remote_IP:/home/ubuntu/back /backup

449.lftp -c "open Remote_IP;user UserName Password;set cache:enable false;set ftp:passive-mode false;set net:timeout 15;mirror -e -c /back /backup;"

450.#注意不要使用同样的文件名,会清空掉原文件

451.cat filename | tr -d "^M" > newfile;

452.或者

453.sed -e "s/^M//g" filename > newfile;

454.或者

455.ex "+:%s/[Ctrl+V][Enter]//g" "+:wq" filename #直接修改文件

456.tr -d '1532' unixfile.txt #dos = > unix

457.awk '{ sub("$", ""); print }' dosfile.txt > unixfile.txt #dos = > unix

458.awk 'sub("$", "")' unixfile.txt > dosfile.txt #unix = > dos

459.#sudo apt-get install bchunk

460.bchunk image.bin image.cue image

461.mkisofs -o isofile.iso dirname

462.dd if=/dev/cdrom of=isofile.iso

463.#sudo apt-get install mailutils sharutils

464.uuencode xxx.tar.gz xxx.tar.gz |mail [email protected]

465.(echo "hello, please see attached file"; uuencode xxx.tar.gz xxx.tar.gz)| mail [email protected]

466.#apt-get install gs pdftk

467.gs -dNOPAUSE -sDEVICE=pdfwrite -sOUTPUTFILE=output.pdf -dBATCH input1.pdf input2.pdf

468.安装swf解码器

469.sudo apt-get install swfmill

470.mplayer -dumpfile dump.rm -dumpstream rstp://....

471.#ipod touch可用

472.for i in *.rmvb; do mencoder -vf harddup -oac mp3lame -lameopts vbr=3 -ovc xvid -xvidencopts fixed_quant=4 -of avi $i -o `echo $i | sed -e 's/rmvb$/avi/'`; done

473.for i in *.VOB; do mencoder -oac mp3lame -lameopts aq=7:vbr=2:q=6 -srate 44100 -ovc xvid -xvidencopts fixed_quant=4 -of avi $i -o `echo $i | sed -e 's/VOB$/avi/'`; done

474.#sudo apt-get install ffmpeg2theora

475.#firefox3.5或chrome直接支持播放,无需安装任何解码器,注意不支持rmvb,rmvb会出现a/v不同步问题

476.for i in *; do ffmpeg2theora --optimize --deinterlace $i; done

477.#!/bin/bash

478.for i in *; do

479.mkfifo "/tmp/$i"

480.mencoder -quiet -vf harddup -ovc raw -oac pcm -o "/tmp/$i" "$i" &

481.ffmpeg2theora --optimize --deinterlace "/tmp/$i" -o "`echo $i | sed 's/(.*)..*$/1/'`.ogv"

482.rm "/tmp/$i"

483.done

484.#!/bin/bash

485.for i in *; do

486.gst-launch-0.10 filesrc location="$i" ! decodebin name=demux

487.{ oggmux name=mux ! filesink location="`echo $i | sed 's/(.*)..*$/1/'`.ogv" }

488.{ demux. ! queue ! audioconvert ! vorbisenc ! queue ! mux. }

489.{ demux. ! queue ! ffmpegcolorspace ! videorate ! theoraenc ! mux. }

490.done

491.#!/bin/bash

492.#ubuntu10.04自带的mencoder由于版权问题,不支持h264编码,需要重新编译;也可以直接参考下面的压缩方法。

493.#sudo apt-get install mencoder mplayer

494.find . -name '*.avi' -o -name '*.rm' -o -name '*.rmvb' -o -name '*.wmv' -o

495.-name '*.vob' -o -name '*.asf' -o -name '*.mpg' -o -name '*.ts' -o

496.-name '*.flv' -o -name '*.mpeg' -o -name '*.ogv' -o -name '*.mov' -o

497.-name '*.mkv' -o -name '*.dat' | while read i; do

498.basename=`echo $i | sed 's/(.*)..*$/1/'`

499.font="WenQuanYi Zen Hei"

500.if [ -f "${basename}.srt" ] ; then

501.cp "${basename}.srt" $$.srt

502.m0="-vf scale=480:-10,harddup -sub $$.srt -unicode -subcp GB18030 -subfont-text-scale 3";

503.else

504.m0="-vf scale=480:-10,harddup";

505.fi

506.x0="-lavfopts format=mp4 -faacopts mpeg=4:object=2:raw:br=160 -oac faac -ovc x264 -sws 9 -x264encopts nocabac:level_idc=30:bframes=0:global_header:threads=auto:subq=5:frameref=6:partitions=all:trellis=1:chroma_me:me=umh:bitrate=500 -of lavf -ofps 24000/1001";

507.mencoder $m0 -fontconfig -font "${font}" $x0 -o "$$.mp4" "$i"

508.mv "$$.mp4" "${basename}.mp4"

509.if [ -f "${basename}.mp4" ] ; then

510.rm "$i"

511.fi

512.done

513.#!/bin/bash

514.#sudo apt-get install faac x264 gpac mplayer mencoder

515.basename=`echo $1 | sed 's/(.*)..*$/1/'`

516.#获得视频的长宽和帧数

517.mplayer -vo null -ao null -identify -frames 0 "$1" 2>/dev/null > video.info

518.FPS=`cat video.info | grep ID_VIDEO_FPS | cut -d = -f 2`

519.#FPS=23.976

520.W=`cat video.info | grep ID_VIDEO_WIDTH | cut -d = -f 2`

521.H=`cat video.info | grep ID_VIDEO_HEIGHT | cut -d = -f 2`

522.WIDTH=480

523.HEIGHT=`expr $WIDTH * $H / $W`

524.echo $1 FPS=$FPS WIDTH=$WIDTH HEIGHT=$HEIGHT

525.mkfifo audio.wav video.yuv

526.faac -o audio.aac audio.wav &

527.mplayer -ao pcm:file=audio.wav:fast -vc null -vo null "$1"

528.x264 --profile baseline --fps $FPS -o video.264 video.yuv ${WIDTH}x${HEIGHT} &

529.mencoder -vf scale=$WIDTH:$HEIGHT,harddup,pp=fd,format=i420 -nosound -ovc raw -of rawvideo -ofps $FPS -o video.yuv "$1"

530.MP4Box -new -add video.264 -add audio.aac -fps $FPS "$basename.mp4"

531.rm video.info audio.aac video.264 audio.wav video.yuv

532.#使用方法将上面的脚本保存为 x264.sh , x264.sh xxx.avi 来进行转化。

533.#sudo apt-get install faac x264 gpac mplayer

534.FPS=29.970

535.mkfifo audio.wav

536.cat VTS_01_1.VOB VTS_02_1.VOB VTS_02_2.VOB VTS_03_1.VOB VTS_04_1.VOB | mplayer -nocorrect-pts -vo null -vc null -ao pcm:file=audio.wav:fast - &

537.faac audio.wav -o audio.aac

538.mkfifo video.y4m

539.cat VTS_01_1.VOB VTS_02_1.VOB VTS_02_2.VOB VTS_03_1.VOB VTS_04_1.VOB | mplayer -vo yuv4mpeg:file=video.y4m -vf scale=480:-3,harddup,pp=fd -nosound - &

540.x264 --profile baseline --muxer mp4 --demuxer y4m video.y4m -o video.mp4

541.MP4Box -add video.mp4 -add audio.aac -fps $FPS video.mp4

542.先确保有zenity和memcoder

543.wget -O ~/.gnome2/nautilus-scripts/toIpod && chmod +x ~/.gnome2/nautilus-scripts/toIpod

544.在nautilus里对视频文件点右键,选择"脚本"-"toIpod".

545.详情请查看。

546.-vf lavcdeint

547.mencoder -ovc lavc 1.rm -oac mp3lame -o 1.avi

548.mencoder -ovc lavc 2.rm -oac mp3lame -o 2.avi

549.mencoder -idx 1.avi -ovc copy -oac copy -o o1.avi

550.mencoder -idx 2.avi -ovc copy -oac copy -o o2.avi

551.cat o1.avi o2.avi | mencoder -noidx -ovc copy -oac copy -o output.avi -

552.mencoder -ovc copy -oac copy -idx -o 目标文件名 文件名1 文件名2

553.#sudo apt-get install abcde

554.abcde -o mp3 -b

555.#sudo apt-get install abcde

556.abcde -o flac -b

557.#sudo apt-get install flac shntool iconv

558.iconv -f GB2312 -t UTF-8 example.cue -o example_UTF-8.cue

559.shntool split -t "%n.%p-%t" -f example_UTF-8.cue -o flac example.ape -d flacOutputDir

560.#sudo apt-get install flac shntool lame

561.#ape 需要安装 monkeys 包

562.iconv -f GB2312 -t UTF-8 example.cue -o example_UTF-8.cue

563.shntool split -t "%n.%p-%t" -f example_UTF-8.cue -o 'cust ext=mp3 lame --r3mix -b 320 --quiet - %f' example.ape -d mp3OutputDir

564.for i in *.ape; do shnconv -i ape -o "cust ext=mp3 lame -b 320 - %f" "$i" -d mp3OutputDir; done

565.for i in *.flac; do shnconv -i flac -o "cust ext=mp3 lame -b 320 - %f" "$i" -d mp3OutputDir; done

566.for i in *.svg; do inkscape $i --export-png=`echo $i | sed -e 's/svg$/png/'`; done

567.#sudo apt-get install lame mplayer

568.for i in *; do base=${i%.*}; mplayer -quiet -vo null -vc dummy -af volume=0,resample=44100:0:1 -ao pcm:waveheader:file="$i.wav" "$i" ; lame -V0 -h -b 192 -vbr-new "$i.wav" "$base.mp3"; rm -f "$i.wav" ; done

569.for i in *.jpg; do convert -resize 30%x30% "$i" "sm-$i"; done

570.for i in *.jpg; do convert $i `echo $i | sed -e 's/jpg$/png/'`; done

571.convert -size 200x30 xc:transparent -font /usr/share/fonts/truetype/wqy/wqy-microhei.ttc -fill red -pointsize 16 -draw "text 5,15 '测试中文转为图片'" test.png

572.#sudo apt-get install optipng

573.optipng -o7 old.png new.png

574.#或 sudo apt-get install pngcrush

575.#pngcrush -brute old.png new.png

576.convert *.jpg out.pdf

577.sudo apt-get install poppler-utils poppler-data

578.find ./ -name '*.txt' | while read i; do cat $i | awk '{if ($0 ~ "^”) {printf “

579.”$0} else {printf $0}}’ | sed ‘/^**$/d’ | sed ’s/^+/ /’ | sed ’s/"/”/g’ > “../txt/$i”; done

580.#sudo apt-get install imagemagick

581.convert -density 196 FILENAME.pdf FILENAME.png

582.identify -verbose xxx.jpg

583.mplayer -vo null -ao null -frames 0 -identify "xxx.avi" 2>/dev/null | sed -ne '/^ID_/ { s/[]()|&;`'"'"'\!$" []/\&/g;p }'

584.#sudo apt-get install mkvtoolnix

585.mkvinfo -v xxx.mkv

586.ffmpeg -f x11grab -s wxga -r 25 -i :0.0 -sameq /tmp/out.mpg

587.espeak -vzh "从前有座山"

588.scrot -s screenshot.png

589.#支持 7Z,ZIP,Zip64,CAB,RAR,ARJ,GZIP,BZIP2,TAR,CPIO,RPM,ISO,DEB 压缩文件格式

590.sudo apt-get install p7zip p7zip-full p7zip-rar

591.#将所有已txt结尾的文件都加入到files.7z

592.7z a -t7z files.7z *.txt

593.#解压缩files.zip

594.7z x files.zip

595.#删除 files.zip中所有已bak结尾的文件

596.7z d -r files.zip *.bak

597.#列出file.7z中所有的文件信息

598.7z l files.7z

599.#测试files.zip中所有doc结尾文件的正确性

600.7z t -r files.zip *.doc

601.#更新files.zip中的所有doc结尾的文件(不是所有的压缩格式都支持更新这一选项)

602.7z u files.zip *.doc

603.sudo apt-get install rar unrar

604.sudo apt-get install zip unzip

605.tar -zxvf xxx.tar.gz

606.tar -jxvf xxx.tar.bz2

607.tar -zcvf xxx.tar.gz aaa bbb

608.tar -jcvf xxx.tar.bz2 aaa bbb

609.sudo apt-get install lha

610.sudo apt-get install cabextract

611.Ctrl+h

612.Ctrl+l

613.* computer:/// - 全部挂载的设备和网络

614.* network:/// - 浏览可用的网络

615.* burn:/// - 一个刻录 CDs/DVDs 的数据虚拟目录

616.* smb:/// - 可用的 windows/samba 网络资源

617.* x-nautilus-desktop:/// - 桌面项目和图标

618.* file:/// - 本地文件

619.* trash:/// - 本地回收站目录

620.* ftp:// - FTP 文件夹

621.* ssh:// - SSH 文件夹

622.* fonts:/// - 字体文件夹,可将字体文件拖到此处以完成安装

623.* themes:/// - 系统主题文件夹

624.fc-list

625.在nautilus的地址栏里输入”fonts:///“,就可以查看本机所有的fonts (这个似乎不行)

626.cal # 显示当月日历

627.cal 2 2007 # 显示2007年2月的日历

628.date -s mm/dd/yy

629.date -s HH:MM

630.hwclock --systohc

631.hwclock --show

632.hwclock --hctosys

633.sudo ntpdate ntp.ubuntu.com

634.sudo ntpdate time.nist.gov

635.sudo cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

636.#关闭UTC,将当前时间写入CMOS。

637.sudo sed -ie 's/UTC=yes/UTC=no/g' /etc/default/rcS

638.sudo hwclock --systohc

639.Ctrl + ALT + ←

640.Ctrl + ALT + →

641.或者,将滚轮鼠标放在工作区图标上滚动

642.Ctrl + ALT + Fn(n:1~7)

643.SHIFT + pageUp/pageDown

644.setterm -dump n(n:1~7)

645.只是支持tty1-7。没中文。没颜色代码序列。

646./var/lib/mysql

647.mysqldump 数据库名 > 文件名 #导出数据库

648.mysqladmin create 数据库名 #建立数据库

649.mysql 数据库名 set names utf8;

650.show table status; #查询表状态

651.show full processlist; #查询mysql进程

652.alter table site_stats engine=MyISAM; #转换表为MyISAM类型,转表锁为行锁。

653.show variables; #查看mysql 变量

654.#备份 forum myweb 数据库到 /backup/mysql 目录,并删除7天之前的备份记录

655.mysqldump --opt --skip-lock-tables -u root forum | gzip -9 > /backup/mysql/forum.`date +%Y%m%d`.sql.gz

656.mysqldump --opt --skip-lock-tables -u root myweb | gzip -9 > /backup/mysql/myweb.`date +%Y%m%d`.sql.gz

657.find /backup/mysql/ -type f -ctime +7 -exec rm {} ;

658.xset dpms force off

659.sudo apt-get install cpufrequtils

660.#查看cpu当前频率信息

661.sudo cpufreq-info

662.设置模式,对应于{最省电(最低频率),用户控制,最高或最低,正常,最大性能}

663.cpufreq-set -g {powersave, userspace, ondemand, conservative, performance}

664.sudo halt

665.sudo shutdown -h now #现在关机

666.sudo shutdown -h 23:00 #晚上11点自动关机

667.sudo shutdown -h +60 #60分钟后关机

668.sudo reboot

669.sudo shutdown -r now

670.sudo gedit /etc/motd

671.sudo gedit /etc/ssh/sshd_config 修改这一行为: PrintLastLog no

672.synclient touchpadoff=1

673.那么开启触摸板就是:

674.synclient touchpadoff=0

675.#sudo apt-get install libnotify-bin

676.notify-send "hello world"

677.history | awk '{CMD[$2]++;count++;}END { for (a in CMD)print CMD[a] " " CMD[a]/count*100 "% " a;}' | grep -v "./" | column -c3 -s " " -t | sort -nr | nl | head -n10

678.awk '{arr[$1]+=1 }END{for(i in arr){print arr[i]""i}}' FILE_NAME | sort -rn

679.netstat -na|grep :80|awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -r -n

680.:%s/[Ctrl-v][Enter]//g 删除DOS方式的回车^M

681.:%s= *$== 删除行尾空白

682.:%!sort -u 删除重复行

683.:%s/^.{-}pdf/new.pdf/ 只是删除第一个pdf

684.:%s/// 删除多行注释

685.:g/^$/d 删除所有空行

686.:g!/^dd/d 删除不含字符串'dd'的行

687.:v/^dd/d 删除不含字符串'dd'的行

688.:g/str1/,/str2/d 删除所有第一个含str1到第一个含str2之间的行

689.:v/./.,/./-1join 压缩空行

690.:g/^$/,/./-j 压缩空行

691.ndw 或 ndW 删除光标处开始及其后的 n-1 个字符。

692.d0 删至行首。

693.d$ 删至行尾。

694.ndd 删除当前行及其后 n-1 行。

695.x 或 X 删除一个字符。

696.Ctrl+u 删除输入方式下所输入的文本。

697.D 删除到行尾

698.x,y 删除与复制包含高亮区

699.dl 删除当前字符(与x命令功能相同)

700.d0 删除到某一行的开始位置

701.d^ 删除到某一行的第一个字符位置(不包括空格或TAB字符)

702.dw 删除到某个单词的结尾位置

703.d3w 删除到第三个单词的结尾位置

704.db 删除到某个单词的开始位置

705.dW 删除到某个以空格作为分隔符的单词的结尾位置

706.dB 删除到某个以空格作为分隔符的单词的开始位置

707.d7B 删除到前面7个以空格作为分隔符的单词的开始位置

708.d) 删除到某个语句的结尾位置

709.d4) 删除到第四个语句的结尾位置

710.d( 删除到某个语句的开始位置

711.d) 删除到某个段落的结尾位置

712.d{ 删除到某个段落的开始位置

713.d7{ 删除到当前段落起始位置之前的第7个段落位置

714.dd 删除当前行

715.d/text 删除从文本中出现“text”中所指定字样的位置,一直向前直到下一个该字样所出现的位置(但不包括该字样)之间的内容

716.dfc 删除从文本中出现字符“c”的位置,一直向前直到下一个该字符所出现的位置(包括该字符)之间的内容

717.dtc 删除当前行直到下一个字符“c”所出现位置之间的内容

718.D 删除到某一行的结尾

719.d$ 删除到某一行的结尾

720.5dd 删除从当前行所开始的5行内容

721.dL 删除直到屏幕上最后一行的内容

722.dH 删除直到屏幕上第一行的内容

723.dG 删除直到工作缓存区结尾的内容

724.d1G 删除直到工作缓存区开始的内容

725.打开新立得或者命令行,查找emacs, 选择你想要的版本,比如emacs22或者emacs21.

726.之后的配置参考

727.sudo cp /usr/share/vim/vimcurrent/vimrc_example.vim /usr/share/vim/vimrc

728.sudo apt-get install vim-full

729.set number

730.如果没有~/.vimrc文件,则可以在/etc/vim/vimrc中加入

731.set number

732.colorscheme scheme

733.可用的 scheme 在 /usr/share/vim/vim71/colors/

734.let &termencoding=&encoding

735.set fileencodings=utf-8,gbk,ucs-bom,cp936

736.#再提供一个实践中觉得不错的配置:

737." Encoding related

738.set encoding=UTF-8

739.set langmenu=zh_CN.UTF-8

740.language message zh_CN.UTF-8

741.set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1

742.set fileencoding=utf-8

743.gconftool-2 --set /apps/gedit-2/preferences/encodings/auto_detected "[UTF-8,CURRENT,GB18030,BIG5,ISO-8859-15,UTF-16]" --type list --list-type string

744.sudo apt-get install build-essential

745../configure && make && sudo make install

746.sudo apt-get install apt-build

747.sudo apt-build install kate

748.sudo apt-get source mysql-server

749.dpkg-source -x mysql-dfsg-5.1_5.1.30-1.dsc

750.sudo apt-get build-dep mysql-server

751.dpkg-buildpackage -rfakeroot

752.apt-get source php5-cgi

753.#或手工下载源码后使用 dpkg-source -x php5_5.2.6.dfsg.1-3ubuntu4.1.dsc 解开源码

754.sudo apt-get build-dep php5-cgi

755.cd php5-5.2.6.dfsg.1

756.dpkg-buildpackage -rfakeroot -uc -b

757.patch -p0 首选项 -> 会话 -> 启动程序

758.vim ~/.bashrc

759.#增加下面的内容:

760.export LESS_TERMCAP_mb=$'E[01;31m'

761.export LESS_TERMCAP_md=$'E[01;31m'

762.export LESS_TERMCAP_me=$'E[0m'

763.export LESS_TERMCAP_se=$'E[0m'

764.export LESS_TERMCAP_so=$'E[01;44;33m'

765.export LESS_TERMCAP_ue=$'E[0m'

766.export LESS_TERMCAP_us=$'E[01;32m'

767.#生效文件

768.#source .bashrc

769.cd ~/.config/autostart

770.rm 需要删除启动程序

771.sudo sed -ie '/GBK/,/^}/d' /usr/share/X11/locale/zh_CN.UTF-8/XLC_LOCALE

772.可能造成某些游戏帧数降低

773.mkisofs -o test.iso -Jrv -V test_disk /home/carla/

774.cdrecord -scanbus

775.scsibus1:

776.1,1,0 101) 'HL-DT-ST' 'CD-RW GCE-8481B ' '1.04' Removable CD-ROM

777.cdrecord -v -eject speed=8 dev=1,1,0 test.iso

778.gnome-screenshot -d 10 #延迟10秒抓图

779.gnome-screenshot -w -d 5 #延迟5秒抓当前激活窗口

780.Ubuntu8.04 Gnome 2.22.2 以后在 $HOME/.local/share/Trash/

781.Ubuntu8.04 之前在 $HOME/.Trash/

782.sudo rm -fr $HOME/.local/share/Trash/files/

783.#全局

784./etc/gnome/defaults.list

785.#个人

786.~/.local/share/applications/mimeapps.list

787.ls ~/.mozilla/firefox/*.default/Cache/

788.sudo pdbedit -L

789.sudo pdbedit -a username

790.sudo openvpn代理 pdbedit -x username

791.sudo pdbedit -r username

792.smbclient -L 192.168.1.1 -U username -d 3

793./var/lib/samba/passdb.tdb

794.在Windows的运行输入 cmd ,进入终端,输入 net use 命令,将显示已经连接的帐号如 \192.168.1.1%2fame

795.再输入 net use \192.168.1.1%2fame /delete 删除现有的共享连接,再尝试进入另外一个目录就可以正常登录了。

796.~/.purple/logs/

797.sudo apt-get install cups-pdf

798.#打印生成的pdf文件在 ~/PDF 文件夹里面

799.sudo dpkg-reconfigure xserver-xorg

800.sudo nvidia-xconfig

801.#nvidia-settings 用于设置分辨率和多显示器

802.sudo nvidia-settings

803.硬件驱动中不要激活无线网卡驱动即可

804.^foo^bar^

805.!!:s/foo/bar/1.使用http代理转接OpenVPN

2.OpenVPN本身可以使用http代理,也就是说,OpenVPN客户端不是直接和OpenVPN服务器连接,而是使用http代理进行连接。这个特性是OpenVPN的外围特性,不是其核心的,然而却能解决很多实际问题,它相当于隧道外面又套了一个隧道,不过这个外面的隧道并不是真实的隧道,因为它并没有封装,而仅仅是伪装了端口信息而已,然而不管怎么说,它还是使用http代理服务器的connect方法的。具体流程就是:

3.OpenVPN客户端连接http代理服务器(CONNECT方法);

4.http代理服务器连接OpenVPN服务器;

5.vpn苹果3.http代理服务器在OpenVPN客户端和OpenVPN服务器之间中转数据。

6.那么为何要使用http代理连接OpenVPN服务器呢?这一般是为了对付防火墙的封堵,另外的意义就是,一般很容易在公网上找到http代理服务器,且该http代理支持CONNECT方法。这样的话,所有的OpenVPN的数据全部被伪装到了代理服务器的端口,成功绕过防火墙。这么做之所以可行,那是因为一般而言,http的80端口或者https的443端口是不被封锁的。

7.使用http代理服务器唯一的副作用就是,OpenVPN服务器将得不到OpenVPN客户端的真实IP地址,所看到的只是http代理服务器的IP地址,这对于管理接口而言很不方便,也不便于根据用户IP设置策略。

8.使用http代理的方式及其简单,那就是在OpenVPN客户端配置文件中加入一行:

9.http-proxy openvpn代理 airspeed vpn电脑版astrill vpn中国 xxx yyy zzz1.原创OpenVPN使用HTTP代理连接服务器

2.在一些公司或者其他受限的网络环境中,使用的是HTTP代理服务器上网。在这种情况下,使用OpenVPN客户端可能无法连接服务器。此时,我们可以设置OpenVPN客户端以HTTP代理方式连接服务器。

3.OpenVPN支持三种认证模式使用HTTP代理连接:

4.不需要认证的HTTP代理。 稳定的vpn推荐 基本认证的HTTP代理。 基于NTLM的HTTP代理(NTLM,NT 神灯vpn怎么样 LAN Manager的缩写,是Windows NT早期版本的标准安全协议)。使用HTTP代理需要TCP协议的支持,因此你需要在OpenVPN服务器和客户端的配置文件中都设置TCP作为传输协议。如果你以前使用的是UDP协议,而不是TCP协议,你应该在配置文件中将其改为TCP协议。(服务器端配置文件路径为安装目录configserver.ovpn,客户端配置文件路径为安装目录configclient.ovpn)。

OpenVPN_HTTP_Proxy必须使用TCP协议

5.此外,你还需要进行以下额外的操作。

6.举个例子,如果你原来用来上网的HTTP代理服务器IP是192.168.5.1,代理端口是8080,那么你需要在OpenVPN客户端的配置文件中添加如下配置(根据情况选择其中的一条命令):

7.如果你使用的HTTP代理需要额外的认证(也就是上面三种情况的后面两种),在连接时,系统会弹出窗口并要求你输入对应的用户名/密码。如果你不喜欢每次连接都输入,你可以将用户名/密码存放在一个文件中,并用文件名替换掉上面命令语句中的stdin。注意:文件中的第一行存放用户名,第二行存放密码。(文件应和客户端配置文件存放在同一目录才能直接以文件名替代,即文件夹,否则可能需要输入相对路径或绝对路径)。

OpenVPN_proxy_2

OpenVPN_proxy_3

8.有些读者可能不清楚在哪里查看自己上网使用的HTTP代理IP地址和端口,你可以打开IE浏览器的【工具】-【Internet选项】菜单,按照如下图所示的方式查看自己的HTTP代理服务器的IP地址和端口:

OpenVPN_Proxy_4

9.此外,值得注意的是,一旦我们在OpenVPN客户端中设置了HTTP代理,那么浏览器本身的HTTP代理设置就应该去掉,否则我们连接OpenVPN服务器成功但可能无法通过IE浏览器访问OpenVPN服务器上的站点等资源 (去掉上图右侧【代理服务器】下面的复选框"为LAN使用代理服务器"即可)。openvpn代理1.如何在SSH通道中隐藏OpenVPN流量?

2.手机免费vpn软件 连接中国的vpn nordvpn中国使用

3.传统防火墙会根据目标 IP 地址和端口号来屏蔽连接,但更高级的防火墙会使用深度包检测(DPI)技术或者状态包检测(SPI)技术来识别不同类型的加密算法和VPN协议。这就意味着它们能够检测出OpenVPN流量并将其标识出来,以方便管理员决定是否屏蔽目标服务器。

4.有三种方法可以绕过这种检测:使用混淆(obfuscation)代理,使用 SSL 通道或者使用 SSH 通道。在本教程中,我们将讨论最后一种方法。SSH 通道会将你已经加密的链接封装在另一层加密中,这样防火墙就无法进行识别。这种方法可以用在绕过部署有完备 DPI 和 SPI 防火墙的公司或像天朝这种具有重度审查机制的国家。

5.但基于 SSH 通道的 OpenVPN 也有几个缺点。第一个就是双重加密必然会导致效率的降低。其次是虽然 OpenVPN 的指纹不在会被防火墙检出,但有些防火墙同样也会屏蔽 SSH 流量。就像 Netflix(美国一家在线影片租赁提供商) 会禁止使用任何类型加密代理的连接,无论是 OpenVPN、SSH 还是其他方式。在这种情况下,我们建议你使用混淆代理,其会使加密流量呈现出正常和未加密流量的样子。混淆代理非常强大,但为此付出的代价是,混淆代理难以的配置和运行。

6.但不幸的是,据我所知,具有混淆功能的OpenVPN 只能工作在桌面端,而使用 SSH 通道则还可以用在安卓或 IOS 等移动端。

7.本文假设你已经拥有一台配置好 OpenVPN 的服务器,并且能够通过 OpenVPN GUI 或者 APP 连接上服务器。同样的你也能够通过 SSH 连接上服务器,无论是使用 Mac 的终端还是在 PC 上使用 PuTTy。本文会以 PuTTy 进行演示。

8.打开 PuTTy 加载你的 VPN 服务器配置。在侧栏中选择 “Connection > SSH > Tunnels”,确保 D8080 包含在列表中。如果没有,那么如下图所示在 “Source port” 中输入8080,并选择 “Auto” 和 “Dynamic”,然后点击添加(Add)按钮。这样你就有了一个运行在 8080 端口的 SSH 代理了。如果你想保存设置,可以返回 “Session” 选项卡进行保存。

9.点击 “Open” 按钮登录到你的服务器,定位到 openvpn.conf 文件并使用如下命令检查配置:

10.这会显示你 OpenVPN 服务器的配置文件,像如下内容:

11.最重要的事是,第二行设置为 TCP 而不是 UDP。如果你需要修改它,你可以使用以下命令:

12.然后使用 CTRL+O (字母”o”不是数字零)保存文件,CTRL+X 退出编辑。

13.在你的本地机器上,定位到 OpenVPN 客户端的配置文件。如果你使用默认的安装目录,那么应该在 “C:/Program Files/OpenVPN/config”。

14.复制一份原先的配置文件当备份,或者直接新建一个配置文件。使用记事本或者其他编辑器以管理员身份运行,打开或创建一个新的配置文件,如下所示:

15.注意第二行的 “remote” 使用 localhost 而不是远程 OpenVPN 服务器的 IP 地址,然后在末尾增加两行配置 OpenVPN 使用代理。其余的配置跟以前一样。

16.将新的配置文件保存到 OpenVPN 的目录下面。

17.最后一步就是配置你的应用程序使用 8080 端口的代理了。这跟配置基本的 SSH 代理步骤一样。许多应用又可以设置代理,有些甚至能够自动检测代理。如果你需要手动进行设置,下面三部分信息是你需要的:

18.下面以 Firefox 和 Chrome 为例来说:

19.Firefox 中:

20.Chrome Proxy Switchy 中:

21.译者注:Proxy Switchy已经停止更新了,Chrome 下面可以使用 SwitchyOmega,还是跟上面一样的配置。

22.现在使用 PuTTy 连接到你的服务器,然后使用新的配置文件运行 VPN。这样你就可以使用基于 SSH 通道的 OpenVPN 上网了。

23.下面我们开始讲解如何在安卓上使用 OpenVPN+SSH,对于 IOS 端我们就不说了大同小异。

24.在开始前有几个注意事项。首先,此方法仅适用于浏览 Web。这是因为不像桌面端,在安卓或 IOS 设备上你无法随心所欲的打开端口,这意味着其他 Apps 无法直接使用 SSH 代理。为了解决这个问题,你可以选择进行 root 或越狱手机,然后使用像 ProxyDroid 或 Cydia’s Unix apps 来配置代理。

25.本教程以在安卓上面运行火狐浏览器为例,你需要安装如下应用:

26.你还需要一些可以将文件从电脑传输到手机上的方法,一根 USB 传输线是必须的,我会选择使用 IBackup 的同步文件夹。

27.找到电脑上的 ovpn.key 和 .ovpn 配置文件,将它们上传到手机上。同样的还有服务器主机的 .pem 密钥文件,这个文件应该位于与 .ppk 文件相同的文件夹下,用于 PuTTy 认证使用的。如果丢失了这个文件,你必须重新创建一个。

28.(可选)你也可以使用标准的 .ovpn 配置文件而不使用 SSH。这样你所有的 Apps 都就可以使用 VPN 连接上网,而不仅仅只限于浏览器,另外这样也可以用来进行排错。

29.在手机上运行 ConnectBot,点击右上角的三个点进行管理公钥。再次点击第二页上面的点,然后点击导入,这样应该会启动你安装的文件管理器。找到上传的 .pem 文件并选择它,这样它应该会在公钥列表中出现并带有一个红色锁的标识。点击让其图标变绿,然后返回到 ConnectBot 主界面。

30.在底部的 ssh 终端中输入你的 ssh 信息,像如下所示:

31.将上面替换为为你的 OpenVPN 服务器地址和用户名,然后点击登录按钮使用 SSH 登录到服务器。这一切步骤都会被保存,所以之后就无需在重复进行,但以后你可能会需要再次更换公钥。

32.一旦你成功连接,再次点击右上角的三个点并断开连接。此时你的配置文件应该已经得以保存并显示在 ConnectBot 的主页上。长按配置文件打开菜单,在点击”编辑端口转发(Edit port forwards)”,然后在点击那三个点选择”增加端口转发(Add port forward)”。按你的喜好随意取个名字,随后选择类型为动态(SOCKS)端口为 8080,在点击”创建端口转发(create port forward)”。

33.这样 ConnectBot 就配置好了,但我们还没有创建连接,让我们来先配置好 OpenVPN 吧。

34.运行 OpenVPN for Android。点击右上角带有向下箭头的方形按钮进行导入配置。找到你的 .ovpn 配置文件并选中它。

35.这时,在找到你的 ovpn.key 文件并选中,再点击右下角黄色的保存按钮。

36.这样你的新配置文件就应该出现在 App 的首页上了。

37.在连接前,让我们在检查下服务器的防火墙,在用户配置中赠加自定义的 TCP 规则,允许端口 22,1194和8080。

38.现在是时候开始连接了。首先打开 ConnectBot,选择我们刚才创建的 SSH 连接上服务器,确保公钥已经加载,不然会提示密码错误。在成功连接上后,切换到 OpenVPN App 选择你的配置文件进行连接。

39.当你连接上后,OpenVPN 日志末尾应该会显示为“CONNECTED,SUCCESS”。

40.请注意,因为我们使用了同电脑相同的 .pem 和 .key 文件,在同一时刻内你只能使用一台设备进行登录。当你想在移动端进行连接时,请确保电脑没有进行连接。如果你想同时连接多台设备,你需要为每一台设备生成新的凭证(.key 和 .pem)。

41.最后,我们需要配置 Firefox 使用代理。移动端的 Chrome 和 Safari 浏览器没有配置代理选项,这也是为什么我们推荐使用 Firefox。你可以在 wi-fi 环境下设置代理,但当你不再需要使用代理的时候要来回进行切换。

42.在 Firefox 的地址栏中,输入 “about:config”,然后在搜索栏中输入 “network.proxy”,这样我们就可以进行设置代理了,在相应的位置输入以下配置:

43.这样你的 Firefox openvpn代理 流量就会通过 OpenVPN 和 SSH 了,你也可以随心所欲的使用 VPN 进行上网而不用在担心深度包检测了。

44.如果你只想通过 SSH 代理而不使用 OpenVPN 进行上网,只需要使用 ConnectBot SSH 登录服务器,同时不连接 OpenVPN 即可。同样的,如果你只想使用 OpenVPN 而不使用 SSH,则可以只导入基本的 .ovpn 配置文件使用 OpenVPN 进行连接,而不使用 SSH 通道。1.如何在Windows 10上安装和配置OpenVPN

adguard vpn中国 pptp vpn账号express vpn回国2.vpn知乎 91vpn怎么用在这篇博客文章中,我们将讨论如何在Windows 10上安装和配置OpenVPN。VPN是虚拟专用网络的缩写形式,它通过公共互联网为我们提供了隐私,匿名性和安全性。VPN服务屏蔽了我们的ISP IP,因此您的在线操作几乎无法追踪。VPN 还可用于通过使用 Internet 或其他中间网络将计算机连接到通常无法访问的隔离的远程计算机网络。

3.我们可以将OpenVPN定义为功能齐全的SSL VPN。OpenVPN使用OSI第2层或第3层安全网络扩展,使用行业标准的SSL / TLS协议。OpenVPN支持基于证书,智能卡和用户名/密码凭据的灵活客户端身份验证方法。OpenVPN不是Web应用程序代理,也不通过Web浏览器运行。OpenVPN服务器通过单个TCP或UDP端口进行处理。默认端口号为 1194。OpenVPN 2.3包含大量改进,包括完整的IPv6支持和PolarSSL支持。

4.OpenVPN也是我们的联合创始人发起的开源项目的名称,该项目使用GPL许可证。他开发了OpenVPN项目,用于加密和保护公共互联网上两台机器之间的点对点或站点到站点连接。换句话说,使用OpenVPN,我们可以通过公共互联网创建一个安全的专用网络,并且可以远程访问您的IT基础架构的内部服务。OpenVPN的用例安全远程访问站点到站点、用户到站点或用户对用户连接,将网络整合在一起保护屏幕共享和远程桌面通信加密敏感的物联网通信安全访问基于云的系统OpenVPN如下。

5.OpenVPN社区版,这是一个免费的开源版本OpenVPN Access Server(OpenVPN-AS)基于社区版,但提供额外的付费和专有功能,如LDAP集成,轻松管理管理门户,集群选项等。OpenVPN即服务解决方案消除了安装VPN服务器的需求。通过购买OpenVPN云,我们可以简单地连接到我们的托管服务,遍布全球的地区。除了OpenVPN社区版之外,另外两个OpenVPN版本具有经济的许可模式,该模式仅基于同时连接用户或设备的VPN数量。OpenVPN社区版完全免费使用,没有用户限制。OpenVPN社区版服务器可以安装在Linux或Windows系统上。

6.OpenVPN for Windows它可以从称为OpenVPN GUI的自安装exe文件安装。OpenVPN GUI是Windows上运行的OpenVPN的图形前面板。它会在通知区域中创建一个图标,您可以从中控制OpenVPN以启动/停止VPN隧道,查看日志并执行其他有用的操作。OpenVPN Connect client它是安装在客户端PC上的OpenVPN客户端软件包。此客户端包用于连接到 OpenVPN 服务器。OpenVPN Connect客户端支持Windows,Linux,MacOS,IOS和Android。

7.设置 OpenVPN 服务器。在本文中,将向您展示如何在Windows 10上设置OpenVPN服务器(社区版)以将传入流量转发到Internet,然后将响应路由回客户端。这是一个用户到站点的模型,这意味着设置一个OpenVPN服务器,通过OpenVPN服务器隧道传输客户端互联网流量。那些成功连接到OpenVPN服务器的客户端将具有其ISP IP地址将显示为服务器公共IP地址。通常,VPN隧道用于私人访问互联网,通过在通过委托的热点或连接进行连接时屏蔽计算机的网络流量来逃避审查或地理位置。

8.第1款.安装OpenVPN服务器让我们开始吧。第一件事是从官方OpenVPN网站的社区部分下载最新的Windows 64位MSI安装程序,用于OpenVPN社区版。OpenVPN可执行文件应同时安装在服务器和客户端计算机上,因为单个可执行文件同时提供客户端和服务器功能。下载完成后,右键单击安装程序exe文件,然后选择安装选项。

9.将出现以下屏幕,单击“自定义”以开始安装。

10.确保通过单击每个功能旁边的图标并选择选项“整个功能将安装在本地硬盘驱动器上”来选择所有功能。以下是默认情况下不会安装的两个功能,我们需要在安装过程中进行选择。Openssl utilities , EasyRSA 3 证书管理脚本OpenVPN服务。

11.选择所有功能后单击立即安装按钮。

12.安装将完成,我们将在屏幕下方找到。单击“关闭”。默认安装位置将是 C:\Program Files\OpenVPN

13.我们将收到一条警告消息,如“未找到可读的连接配置文件(配置文件)。单击确定。

14.这样就完成了OpenVPN MSI软件包的安装。安装完成后,在Windows 10下“网络和互联网”设置>>在以太网>>下更改适配器选项>>我们可以看到创建了一个名为OpenVPN TAP设备的新网络适配器。

15.现在,我们可以从Windows开始菜单->控制面板->管理工具->服务部分管理OpenVPN服务。

16.从OpenVPN版本2.5.0开始,在启动OpenVPN包装服务时,OpenVPN将在文件夹“C:\Program Files\OpenVPN\config-auto”下查找.ovpn配置文件,以便在Windows 10重新启动时自动启动OpenVPN服务。启动/停止OpenVPN服务的另一个选项是 从任务栏单击Windows隐藏的通知区域 ,在那里我们可以看到OpenVPN图标,右键单击它,您将看到多个选项,包括连接和断开连接。如果在Windows任务栏通知区域中看不到OpenVPN图标,请双击桌面中可用的OpenVPN图标,这将使OpenVPN图标在Windows任务栏通知区域中可用。为了更好地理解,请参阅下面的屏幕截图。

17.正如我之前提到的,从OpenVPN版本2.5.0开始,当我们使用Windows任务栏通知区域下的GUI组件启动OpenVPN服务时,OpenVPN将在文件夹“C:\Program Files\OpenVPN\config”下查找.ovpn配置文件。这就是Windows 10 for Server和Client PC上OpenVPN软件包安装的结束。现在让我们转到下一节。第2款.设置主证书颁发机构(CA)并为OpenVPN服务器和客户端生成证书和密钥。OpenVPN使用公钥基础设施(PKI)进行证书生成和管理。它是数字证书背后的技术。因此,PKI是允许您加密数据,对文档进行数字签名以及使用证书对自己进行身份验证的技术。公钥基础结构包括:

18.服务器和每个客户端的单独证书(也称为公钥)和私钥,以及主证书颁发机构 (CA) 证书和密钥,用于对每个服务器和客户端证书进行签名。对于PKI管理,最新版本的OpenVPN软件包提供了easy-rsa 3,这是一组与OpenVPN MSI捆绑在一起的脚本。easy-rsa3 scripts 文件夹位置应为“C:\Program Files\OpenVPN\easy-rsa”。 此外,Easy-RSA 3运行POSIX shell代码,因此在Windows上使用有一些额外的要求,例如OpenSSL安装和可用的shell环境,但EasyRSA 3.0.7 +的Windows软件包包括OpenSSL二进制文件和默认情况下将使用的库。因此,基本上我们不需要在Windows Install中单独执行OpenSSL安装。此外,Easy-RSA 3 Windows版本包括一个即用型shell环境,我们可以在其中运行颁发SSL / TSL证书所需的命令。因此,让我们使用easy-rsa3脚本继续创建SSL / TLS证书以及CA证书。第一件事是使用Windows文件资源管理器转到文件夹“C:\Program Files\OpenVPN\easy-rsa”。将名为“vars.example”的文件复制到名为“vars”的文件。“vars”文件包含内置的 Easy-RSA 配置设置。默认设置很好,除非我们需要任何自定义更改。下表中给出的可配置选项很少。

19.变量默认值用法set_var EASYRSAC:\Program Files\OpenVPN\easy-rsa定义 easy-rsa 脚本的文件夹位置set_var EASYRSA_OPENSSLC:\Program Files\OpenVPN\bin\openssl.exe定义 OpenSSL 二进制路径set_var EASYRSA_PKIC:\Program Files\OpenVPN\easy-rsa\pkiSSL/TLS 文件的文件夹位置在创建后存在set_var EASYRSA_DNcn_only这用于调整哪些元素作为 DN 包含在“主题”字段中set_var EASYRSA_REQ_COUNTRY“美国”我们的组织国家set_var EASYRSA_REQ_PROVINCE“加利福尼亚”我们的组织省份set_var EASYRSA_REQ_CITY“旧金山”我们的组织城市set_var EASYRSA_REQ_ORG“Copyleft Certificate Co”我们的组织名称set_var EASYRSA_REQ_EMAIL“[email protected]”我们的组织联系电子邮件set_var EASYRSA_REQ_OU“My Organizational Unit”我们的组织单位名称set_var EASYRSA_KEY_SIZE2048以位定义密钥对大小set_var EASYRSA_ALGOrsa默认加密模式set_var EASYRSA_CA_EXPIRE3650CA密钥过期天数set_var EASYRSA_CERT_EXPIRE825服务器证书密钥过期天数set_var EASYRSA_NS_SUPPORT“no”支持弃用的Netscape扩展set_var EASYRSA_NS_COMMENT“HAKASE-LABS CERTIFICATE AUTHORITY”定义NS注释set_var EASYRSA_EXT_DIR"$EASYRSA/x509-types"定义x509扩展目录set_var EASYRSA_SSL_CONF"$EASYRSA/openssl-easyrsa.cnf"定义openssl配置文件位置set_var EASYRSA_DIGEST"sha256"定义要使用的加密摘要因此,如果需要编辑上述默认值,请取消注释相应的行并进行必要的更改。“var”还有其他可配置选项,但我只提到了几个重要变量。因此,在我们的示例中,我们可以使用默认值,并且默认值将在证书生成过程中使用。现在打开Windows命令提示符并转到目录“C:\Program Files\OpenVPN\easy-rsa”。之后,启动EasyRSA shell。对于该问题,以下命令。复制到剪贴板1

20.2

21.现在我们已经进入了easy-rsa3 shell提示符,从那里我们将能够发布easy-rsa3脚本。附上截图供参考。

22.现在启动公钥基础结构 PKI 目录。对于该问题,请在 EasyRSA Shell 中以下命令。复制到剪贴板1

23.截图下方供参考。从那里我们可以看到PKI目录设置为“C:\Program Files\OpenVPN\easy-rsa\pki”

24.现在,使用以下命令构建证书颁发机构 (CA ) 密钥。此 CA 根证书文件稍后将用于对其他证书和密钥进行签名。我们使用的选项“nopass”是禁用密码锁定CA证书。复制到剪贴板

25.1

26.将要求该命令输入公用名。在这里,我输入了我的VPN服务器主机名,即OPENVPN服务器,这是一种常见的做法。在这里,我们可以自由使用任何名称或值。此外,创建的CA证书将保存到文件夹“C:\Program Files\OpenVPN\easy-rsa\pki”,文件名为“ca.crt”。参考下面的截图。

27.现在使用以下命令构建服务器证书和密钥。此处替换为您自己的服务器名称。另外,我使用选项nopass来禁用密码锁定密钥。复制到剪贴板1

28.附上截图供您参考。颁发的服务器证书将位于文件夹“C:\Program Files\OpenVPN\easy-rsa\pki\issued”中,文件名为 SERVER.crt。

29.之后,我们可以在 EasyRSA shell 本身中使用下面的 openssl 命令来验证颁发的服务器证书。“状态正常”表示证书正常。复制到剪贴板1

30.现在,使用以下命令构建客户端证书和密钥。从该替换替换为您的客户名称。还使用了选项nopass来禁用密码锁定密钥。复制到剪贴板1

31.附上截图供您参考。颁发的客户端证书也将保存到文件夹“C:\Program Files\OpenVPN\easy-rsa\pki\issued”,文件名为“CLIENT.crt”。

32.之后,我们可以使用下面的 openssl 命令验证颁发的客户端证书。“确定”表示证书正常。复制到剪贴板1

33.这完成了 CA 证书、服务器和客户端证书的生成以及密钥。这些密钥将用于在OpenVPN服务器之间和客户端之间进行身份验证。现在,生成一个共享密钥,该密钥与标准 RSA 证书/密钥一起使用。文件名为 tls-auth.key。使用此密钥,我们启用 tls-auth 指令,该指令向所有 SSL/TLS 握手数据包添加额外的 HMAC 签名以进行完整性验证。任何不带有正确 HMAC 签名的 UDP 数据包都可以丢弃,而无需进一步处理。启用 tls-auth 将保护我们免受

34.OpenVPN UDP 端口上的 DoS 攻击或端口泛洪。端口扫描以确定哪些服务器 UDP 端口处于侦听状态。SSL/TLS 实现中的缓冲区溢出漏洞。来自未经授权的计算机的 SSL/TLS 握手启动。因此,首先使用GitHub 链接下载 Easy-TLS https://github.com/TinCanTech/easy-tls 。它是一个Easy-RSA扩展实用程序,我们用它来生成tls-auth密钥。单击“下载 zip”选项,该选项位于“代码”选项卡下。参考下面的截图。

35.之后,解压缩easy-tls-master文件夹,并将名为“easytls”和“easytls-openssl.cnf”的文件复制到“C:\Program Files\OpenVPN\easy-rsa”目录。检查下面的屏幕截图以供参考。

36.现在返回到 EasyRSA shell 提示符并发出以下命令。这将初始化 easy-tls 脚本实用程序。复制到剪贴板1

37.现在,使用以下命令生成 tls-auth 密钥。1

38.该命令将在文件夹“C:\Program Files\OpenVPN\easy-rsa\pki\easytls”下生成名为“tls-auth.key”的tls-auth密钥文件。参考下面的截图。

39.现在我们需要生成Diffie Hellman参数。

40.Diffie Hellman参数必须为OpenVPN服务器生成。这些参数定义了OpenSSL如何执行Diffie-Hellman(DH)密钥交换。Diffie-Hellman密钥交换是一种通过公共通道安全地交换加密密钥的方法

41.发出以下命令,用于从 EasyRSA shell 生成 Diffie Hellman 参数。

42.该命令将在文件夹“C:\Program Files\OpenVPN\easy-rsa\pki”下创建DH文件,文件名为“dh.pem”。 参考下面的截图。

43.这样就完成了OpenVPN服务所需的必要SSL / TLS密钥文件的生成。我们将能够在以下文件夹下找到创建的文件。

44.文件夹路径内容C:\Program Files\OpenVPN\easy-rsa\pkiCA 文件, DH 文件和其他 OpenSSL 文件相关的文件,如配置文件C:\Program Files\OpenVPN\easy-rsa\pki\private包括 CA、服务器和客户端证书的私钥文件C:\Program Files\OpenVPN\easy-rsa\pki\easytls包含 tls-auth 密钥C:\Program Files\OpenVPN\easy-rsa\pki\issued包含已颁发的服务器和客户端证书参考下面的截图。

45.下面还有相关文件的简短说明。

46.文件名需要者目的秘密ca.crt服务器 + 所有客户端根 CA 证书不ca.key仅服务器根 CA 密钥是的dh.pem仅服务器迪菲·赫尔曼参数不SERVER.crt仅服务器服务器证书不SERVER.key仅服务器服务器密钥是的CLIENT.crt仅限客户端客户端证书不CLIENT.key仅限客户端客户端密钥是的tls-auth.key服务器 + 所有客户端用于 tls-auth 指令不现在是时候将证书文件ca.crt,CLIENT.crt,CLIENT.crt,client.key和tls-auth.key从OpenVPN服务器复制到OpenVPN客户端PC。确保通过安全通道(如 SFTP)复制机密文件。好了,这样就完成了为OpenVPN服务创建SSL/TLS证书。现在让我们转到下一节。

47.第3节 .为服务器创建配置文件在本节中,我们将创建OpenVPN服务器配置文件并在其中进行必要的更改。首先打开Windows资源管理器,然后转到文件夹“C:\Program Files\OpenVPN\sample-config”,并将名为“server.ovpn”的文件复制到“C:\Program Files\OpenVPN\config”。参考下面的截图。

48.现在使用任何文本编辑器打开配置文件,并相应地更改以下值。

49.ca “C:\\Program Files\\OpenVPN\\easy-rsa\\pki\\ca.crt”cert “C:\\Program Files\\OpenVPN\\easy-rsa\\pki\\issued\\SERVER.crt”key “C:\\Program Files\\OpenVPN\\easy-rsa\\pki\\private\\SERVER.key”dh “C:\\Program Files\\OpenVPN\\easy-rsa\\pki\\dh.pem”push “redirect-gateway def1 bypass-dhcp”push “dhcp-option DNS 208.67.222.222”push “dhcp-option DNS 208.67.220.220”tls-auth “C:\\Program Files\\OpenVPN\\easy-rsa\\pki\\easytls\\tls-auth.key” 0cipher AES-256-CBC在前四个值中定义了ca,cert,key和Diffie hellman参数的位置证书位置。接下来的三行强制客户端在成功连接到OpenVPN服务器后通过OpenVPN服务器重定向其所有流量。使用“tls-auth”参数,我们启用 HMAC 防火墙。它是用于防止DDos攻击的额外安全层。最后一个“数据密码AES-256-CBC”启用加密密码。请参阅下面的屏幕截图,然后您将了解这些参数在server.ovpn配置文件中。

50.这样就完成了OpenVPN配置文件的设置。现在,使用下面的电源外壳命令在Windows防火墙中打开UDP端口1194。复制到剪贴板1

51.现在,通过单击Windows显示隐藏图标部分启动OpenVPN服务器服务,>>右键单击OpenVPN图标>>选择连接”。

52.OpenVPN服务将自动启动,您将在OpenVPN图标内看到绿色。这意味着我们的OpenVPN服务正在运行。

53.确认OpenVPN服务运行的另一个选项是,取Windows cmd并列出所有网络接口。现在,我们将看到OpenVPN TUN/TAP接口分配了私有IP 10.8.0.1,这是根据配置设置分配给服务器和客户端的默认私有IP地址范围。

54.正如我在介绍部分中提到的,我们正在设置 我们的 OpenVPN服务器 ,通过VPN服务器本身路由客户端所有IP流量,例如Web浏览和DNS查找。为此,我们需要通过OpenVPN服务器公共接口共享公共互联网,这些公共接口已经可以访问OpenVPN TUN / TAP网络接口。

55.因此,让我们看看如何实现这一点。为此,首先转到Windows服务部分,然后右键单击“路由和远程访问”服务。选择“属性”,并将启动类型设置为“自动”。之后,启动服务。之后,转到VPN服务器“网络和互联网”设置>>在以太网>>更改适配器选项>>右键单击具有公共Internet访问权限的网络适配器名称,然后选择属性。

56.选择“共享”选项卡,然后从那里选中“允许其他网络用户通过此计算机的Internet连接”选项框从下拉列表中选择“OpenVPN Tap-Windows6”,或者您的TAP服务器连接的连接名称。另外,如果需要,您可以勾选“允许其他网络用户控制或禁用共享互联网连接”选项旁边的框单击确定并确认更改

57.现在编辑下面的注册表项值。为此,请在Windows Run中运行“注册表编辑器”。

58.钥匙价值类型数据HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\ParametersIPEnableRouterREG_DWORD0x00000001 (1)好了,这样就完成了在Windows 10中启用互联网连接共享(ICS)。现在让我们转到下一节。同时再次重新连接OpenVPN连接以使更改生效。

59.第5节 .设置 OpenVPN 客户端在本节中,我们首先在Windows 10等客户端PC上安装OpenVPN MSI安装程序。之后,我们将设置OpenVPN客户端配置文件。最后启动OpenVPN连接并进行测试。

60.第5节 a .OpenVPN 客户端MSI安装对于在客户端PC上安装OpenVPN MSI,请按照第1节中描述的相同步骤进行操作。

61.OpenVPN Community Edition MSI Installer可以在服务器端和客户端使用。在OpenVPN MSI安装之后。

62.打开Windows资源管理器,然后转到文件夹“C:\Program Files\OpenVPN\sample-config”,

63.并将名为“client.ovpn”的文件复制到“C:\Program Files\OpenVPN\config”。

64.将已下载的 ca.crt、CLIENT.crt、CLIENT.key 和 tls-auth.key移动到文件夹“C:\Program Files\OpenVPN\config”。请参阅下面的屏幕截图,以更好地了解文件结构。

65.第5节 b .配置客户端配置文件。转到文件夹“C:\Program Files\OpenVPN\config”,并使用任何文本编辑器打开 client.ovpn 文件,并相应地定义以下参数。

66.remote 185.210.137.214 1194ca “C:\\Program Files\\OpenVPN\\config\\ca.crt”cert “C:\\Program Files\\OpenVPN\\config\\CLIENT.crt”key “C:\\Program Files\\OpenVPN\\config\\CLIENT.key”remote-cert-tls servertls-auth “C:\\Program Files\\OpenVPN\\config\\tls-auth.key” 1cipher AES-256-CBC在第一个值中定义OpenVPN服务器的主机名/ IP和端口接下来的三个 ca,cert ,键值定义了 CA 和客户端证书位置的位置。使用“remote-cert-tls server”,OpenVPN客户端将验证服务器证书扩展KeyUsage。使用“tls-auth”参数,我们启用 HMAC 防火墙。它是用于防止DDos攻击的额外安全层。最后一个“密码AES-256-CBC”启用加密密码。下图显示了这些参数在客户端配置文件中的外观。

67.这样就完成了客户端设置。现在从客户端测试 VPN 连接。确保在客户端窗口防火墙中也打开UDP端口1194。测试 OpenVPN 连接。在窗口下 隐藏的通知区域 ,右键单击OpenVPN图标,然后单击连接。

68.OpenVPN连接将自动建立。连接成功后,尝试ping到OpenVPN服务器的私有IP,并确保其可访问。还要测试客户端PC的互联网连接。

69.openvpn代理我们在浏览器地址百度上搜索 IP ,我们看到显示的是VPN服务器IP。这意味着我们所有的网络流量都是通过OpenVPN服务器路由的。1.如何搭建VPN服务器用来翻墙国外网站的方法

2.网上对于国内VPN整顿也是热议不止的,在国内,除了付费购买VPN服务之外,其实也可以自己通过一台国外服务器来搭建VPN服务,从而实现翻墙访问国外网站。搭建vpn软件本文主要跟大家分享分享如何搭建VPN服务器用来翻墙国外网站的方法。

3.首先当然是需要有一个境外的服务器,作为VPN来讲,不需要太高的配置,系统这里建议选择linux,这里以centos为例来掩国内vpn代理饰。

4.安装openvpn和easy-rsa软件包,因为系统默认yum源没有openvpn和easy-rsa软件包,所以这里就先修改源,然后安装软件。推荐阅读:《租用国外服务器的优势》

5.最好用的vpn软件rpm -ivh http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm

6.yum -y install vpn电脑版下载 openvpn easy-rsa 香港vpn

7.接着继续文件配置生产的操作:

8.切换到/usr/share/easy-rsa/2.0/目录cd /usr/share/easy-rsa/2.0/初始化环境变量

9.source vars

10.清除所有与证书相关的文件./clean-all生成CA相关文件./build-ca生成服务端相关文件./build-key-server server生成客户端相关文件./build-key client生成dh2048.pem文件./build-dh生成ta.key文件(防DDos攻击)openvpn –genkey –secret keys/ta.key创建/etc/openvpn/server.conf文件,内容如下

11.port 1194

12.proto udp

13.dev tun

14.ca /usr/share/easy-rsa/2.0/keys/ca.crt

15.cert /usr/share/easy-rsa/2.0/keys/server.crt

16.key /usr/share/easy-rsa/2.0/keys/server.key # This file should be kept secret

17.dh /usr/share/easy-rsa/2.0/keys/dh2048.pem

18.server 10.8.0.0 255.255.255.0

19.ifconfig-pool-persist ipp.txt

20.push "redirect-gateway def1 bypass-dhcp"

21.push "dhcp-option DNS 8.8.8.8"

22.keepalive 10 120

23.tls-auth /usr/share/easy-rsa/2.0/keys/ta.key openvpn代理 0 # This file is secret

24.comp-lzo

25.persist-key

26.persist-tun

27.status openvpn-status.log

28.verb 3修改/etc/sysctl.conf文件,开启路由转发功能sed -i ‘/net.ipv4.ip_forward/s/0/1/’ /etc/sysctl.conf使刚才的修改立即生效sysctl -p

29.防火墙配置iptables -t nat -A POSTROUTING -j MASQUERADE

30.启动openvpn服务service openvpn start

31.最后创建客户端配置文件即client.ovpn文件,内容如下1.安卓Vpn开发思路

2.经过2个月的开发,我的http代理可以说没有遗憾了,当然还有可以改进的地方,比如多用户认证啥的,但是没有必要啦。

3.为了在安卓上也能愉快地使用自己开发的代理,研究了一高匿名vpn下安卓Vpnservice,在此记录一下当前的进度,并确定以后的开发思路。

4.在网上找了一篇我觉得讲的比较对和易懂的博客:引用开始

5.翻墙有几种方式:

6.1:vpn和各种自定义lets vpn怎么样的vpn;它们是把iOS的ip数据包的内容通过一个tcp转发到vpn服务器,然后在服务器上创建一个tun虚拟网卡,再把接收到的ip数据包内容通过系统的函数发给网卡,然后网卡再把这个原始的ip数据包内容加上自己的ip地址等信息发送出去,对方接收到数据之后,解析出来,在ip之上的内容是没有改变的,所以tcp的连接之类的整个过程是不会影响的,只是在返回数据时,它识别到的源ip地址变成了服务器上虚拟网卡的地址;

7.2:http代理,现在主流的系统都支持设置http代理;它们的原理是客户端系统在发送http请求时,并不是把数据包发给真正的目的地址,而是与代理服务器创建一个tcp连接,把http包发送给代理服务器,这样代理服务器就可以接收到一个http请求,然后再从请求中得到真正的目的地址,把这个请求转发给目的ip,所以从服务器上来看,就是一个最基本的http服务器而已,只是它的目的从处理请求变成了转发请求;整个请求过程中,在http层上的内容不会改变,但是在tcp这一层会改变;对于客户端操作系统来说,在发送http之前,我们要先与目的地建立连接,但是操作系统并不知道我们是不是用来发送http的,所以它就不能让我们去连接代理服务器,由此可知,http代理的客户端处理不会是操作系统来提供,而是应该上层应用程序来提供;比如提供一个发送http的函数,那么在这个函数中,我们就可以知道它肯定是用来发http的,就可以去连接代理服务器而不是直接的目标服务器;这就解释了为什么有些http请求不走代理(比如libcurl创建的http请求,大部分的linux终端命令),因为这要库去支持,不过现在主流的浏览器都支持;

8.3:socks5代理,socks5代理中,客户端与代理服务器tcp连接上后,客户端会向代理服务器发送协商数据和真正的目标地址,代理服务器就与直接的目标地址连接,然后再把后续的请求转发到目标地址上;相对于http代理来说,socks5代理不区分上层协议,所以可以在系统库中去实现;

9.翻墙原理上是这几个基本的方法,vpn的ip数据转发,http代理的http数据转发,sock5代理的tcp,udp数据转发。

10.但是由于这几种方式都有它的明确的特征和易于识别,比如vpn,sock5代理特征明显,http代理数据明文可见,导致了用来翻墙不稳定(当然自定义vpn可以解决这个问题);

11.ShadowSocks的优点为sock5代理类似,由于不是在ip层面上,所以数据包相对来说要小(不用传ip数据包头与tcp数据包头,所有理论上它要快一些)

12.所以现在大家都在用ShadowSocks,在pc端它的实现比较简单,因为它只要在本地实现一个sockt5代理服务器就好了,这样在sock5代理服务器内部,就能得到tcp数据的内容,把内容通过自己的协议转发到远程服务器,让远程服务器转发tcp的内容;相当于本地和服务器上两边实现了类似的socket5代理;

13.但是对于iOS,android而言,sock5代理在非越狱和root的情况下不被支持,不过能得到ip数据包,所以要想办法把ip数据包转成tcp/udp的包,这样才能分析出tcp/udp中的内容进行转发;

14.这里引入一个开源的tcp/ip协议栈,它简单占用内存小,所以能运行在移动设备上,我们要的是让它接收系统的ip数据包,分析出tcp/udp数据内容。但是对于标准的tcp/ip协议栈,由于系统的ip数据包发送的目的地与这个协议栈运行的地址,所以正常情况下它是不会被解析出来的,不过由于这个协议栈相对来说简单,所以我们可以进行改造,让它不管是去哪里的ip数据包,都像本来就是发送给他的一样;这样它能accept 发给其它地址的tcp的连接,可以直接读取tcp连接之后的发送的内容;这也就是为什么叫tun2socks了(改造的过程其实很简单,只是把在tcp段组成tcp时的ip和port限制去掉就行了),并且由于它能让我们得到tcp发送的数据包,这样就不用另一个socks代理了。

15.引用结束。

16.我写的HttpProxy就是一个http代理(tcp代理),而安卓、iphone要求的是一个VPN(因为手机只给ip数据报)。socks则是不管应用层是tcp还是udp。所以从通用性上讲,VPN>socks>tcp代理。我的HttpProxy在这个时代可以说超级菜鸡了。

17.引用部分最后提到的开源tcp/ip协议栈是iwIP(我在别的博客看到的,可能我引用的部分是抄的别人的。。),引用还提到的tun2socks,则将在解决方案二中详细解释。

18.VpnService是开发安卓VPN的基础,下面是官方文档的阐释

19.VpnService is a base class for applications to extend and build their own VPN solutions. In general, it creates a virtual network interface, configures addresses and routing rules, and returns a file descriptor to the application. Each read from the descriptor retrieves an outgoing packet which was routed to the interface. Each write to the descriptor injects an incoming packet just like it was received from the interface. The interface is running on Internet Protocol (IP), so packets are always started with IP headers. The application then completes a VPN connection by processing and exchanging packets with the remote server over a tunnel.

20.上面的阐释的重点是:虚拟一个网卡、返回文件描述符、 读写的内容是ip数据报

21.安卓example的ToyVpn;初步搭一个vpn应用的框架可以看这里,这个仅仅是搭建了框架,功能(ip数据包的收发)则没有实现

22.Vpnservice是安卓提供给开发者用于开发自己的VPN的服务。开发者继承这个Vpnservice,从而实现VPN。手机本身是有一块网卡,安卓虚拟出一个网卡,然后通过NAT,将真实网卡上的出站流量转发到虚拟网卡上,然后Vpnservice获取这个虚拟网卡上的“流量”,并转发给Vpn的服务端。其实还是挺好理解的。问题在于,上面说的流量,并不是传输层的tcp/udp流量,而是ip数据报。

23.tcp代理所操作的是tcp包,现在要处理ip数据报。而且java语言只提供了传输层(tcp/udp)的socket传输api。这意味着,开发Vpn必定有一部分需要使用其他语言(C/C++)。

24.看安卓example的ToyVpn中server的代码,发现他的代码就是直接open /dev下的网卡文件,然后读写来收取ip数据(一切皆文件真的骚。。)

25.一句话:将ip数据报通过Udp发送给代理服务器,代理服务器解包后得到原始的ip数据报,通过C/C++写进网卡文件。

26.通过Udp传输的原因是,Udp(用户数据报)是ip数据报的简单包裹,不像tcp数据包那样,增加了很复杂的东西,也不进行失败重传等操作。要清楚,我们这里传输的是较底层的ip数据报,在ip数据报的上层,可能是UDP,也可能是TCP,不管传输层是什么协议,消息的正确性,失败重传等等,都有人做过,我们只要传就好了,所以用UDP是最好的。

27.通过C/C++写进网卡,这个可能要用JNI,没用过,学学吧。

28.其实就是ip over udp。下面是一段对这个概念的阐释:原文

29.数据报文封包和UDP隧道相对来说还是比较容易理解的概念。试想一个进入隧道的TCP数据包:

30.这个数据报有正常的IP和TCP头,后面是用户要发送的数据。封包的过程如下:

31.这样,这个数据包就是一个UDP数据包,里面装的是TCP数据包。系统可以将他想普通的UDP数据包一样发送;在接收端,额外的UDP头部被去掉后,原始的包含tcp消息的ip数据报经修改后(修改源ip地址)继续进入网络堆栈进行处理。

32.这其实也就是正经的VPN的概念了。这也是ToyVpn所采用的实现方式。

33.在安卓机上解析ip数据报,最终拿到tcp/udp的数据部分,最后传输。这意味着需要处理tcp协议栈中的握手等等,怎么看怎么不靠谱,主要是难度大。

34.直到看到了tun2socks和iwIP,才意识到这个有难度的轮子其实已经有人造了。安卓使用最广泛的翻墙工具就是shadowsocks了,赫然看到shadowsocks-android的readme中的“OPEN openvpn代理 SOURCE LICENSES”含有tun2socks。行吧,shadowsocks都用这个技术,够权威了。

35.下面就说,什么是tun2socks,直接引用别人的博客了。这个博主csdn排名15,牛逼

36.tun2socks实现一种机制,它可以让你无需改动任何应用程序而完全透明地将数据用socks协议封装,转发给一个socks代理,然后由该代理程序负责与真实服务器之间转发应用数据。使用代理有两种方式,一种是你自己显式配置代理,这样一来,数据离开你的主机时它的目标地址就是代理服务器,另一种是做透明代理,即在中途把原始数据重定向到一个应用程序,由该代理程序代理转发。tun2socks在第二种的基础上,完成了socks协议的封装,并且实现该机制时使用了强大的tun网卡而不必再去配置复杂的iptables规则。

37.本文以TCP为例,就不再提UDP了。所以说,简单点,把socks代理称为带有认证功能的TCP代理是合适的。

38.TCP代理非常容易理解,然而纯粹的TCP代理并不实用,必然要加入一些控制功能,比如谁可以被代理,谁不能被代理,如何认证,最多可以代理多少路的请求等等。有了这些控制手段,TCP代理才真正变得实用起来。

39.socks的运作原理非常简单,就是在TCP数据外包一层socks协议头,到达socks代理服务器后,脱去socks头,然后通过socks服务器与真实服务器之间建立的连接将TCP裸数据传给真实服务器。如下图所示:

40.请注意,socks代理并不理解任何应用层协议,它只是负责转发应用层数据而已,这一点使socks成为了一个通用的代理协议,这一点和HTTP代理服务器是完全不同的。

41.这个就不再多说。之所以有这个小节是为了文章的完整性。也是为了给初学者一个完整的提纲来更深入的学习。

42.我理解的透明代理就是“偷偷的给你做代理”,这一点与你在浏览器里显式设置socks代理服务器完全不同。透明代理就比如说下面这样子:

43.要实现这一点有很多方式,比如你可以用Linux的TProxy+Policy routing机制,关于这种方式请参见《socket的IP_TRANSPARENT选项实现代理》,然而,很多时候,这种方式行不通。

44.如果给一个Linux的root账户,那么几乎可以随意显摆,而很多时候这并不可能。比如Android系统就不能随意root,这就意味着你无法在Android系统上随意地配置iptables规则,路由等。那么想在Android系统上免root实现一个透明代理,就需要别的办法。而tun2socks提供了一种这样的办法。

45.如果理解了上述所有的概念,那么tun2socks就不剩下什么了。先给出一个总览图:

46.通过上图,我们看到tun2socks可以被拆解出三个部分,即tun网卡部分,协议处理部分以及socks转换部分,这三部分在tun2socks的处理流程是串行的。我来一个一个说。

47.该部分解决了一个基本的问题,即“如何获取原始的数据包”。拿到了数据包,什么都好办了。

48.如果你想做透明代理,那么你必须“想办法把数据流导入到本地”,完成这件事有好多种办法,以Linux为例,比如做一个DNAT即可完成,再比如如上所述,用tun网卡直接把原始数据包捕获到一个应用程序。显然tun2socks采用了后者。

49.两者有何不同呢?

50.很大的不同。如果使用DNAT的话,目标地址和端口将会是本地的一个代理程序,比如socks代理,那么操作系统的协议栈会自动将数据包交到该代理程序,除了这个DNAT之外不需要再做任何操作。而使用tun捕获数据包的话,由于只是捕获到了IP数据报文,这意味着你要自己处理IP层以上的逻辑,比如TCP按序交付,TCP状态处理,TCP拥塞控制,你要确保代理程序收到的数据包看起来是“经过协议栈处理过的数据包”,“就像是直接从socket的recv接口读到的一样”。

51.tun2socks使用现成的lwip来完成了协议处理。lwip是一个轻量级的用户态协议栈,非常适合完成这种协议适配工作。

52.经过第2部分,即协议处理之后,现在tun2socks拿到的已经是源主机试图发送到原始目标主机的裸数据了,接下来它可以做的事情可就多了,当然可以用socks协议封装裸数据,将其发送给一个socks代理程序。

53.只要是使用了tun网卡获取原始数据,那么任何框架都会面临一个必须回答的问题,即拿到原始的IP数据报文或者以太帧之后,下一步如何处理这些数据。OpenVPN和tun2socks显然是给出了两种不同的回答,而这不同的回答即是OpenVPN和tun2socks之间唯一的不同。

54.引用结束,作者说tun2socks和OpenVPN采用了两种完全不同的解答,其实也就是这里的tun2socks和OpenVpn了。1.牛榜:2019年最值得推荐的23款免费安全工具

2.工欲善其事,必先利其器。对于信息平安专业人士来说,这是最坏的时代,因为平安威胁防不堪防,但也是最好的时代,因为在这个黑客言商的时代,居然有大量居家vpn账号共享观光必备的精良免费平安对象可用。

3.以下平安牛整顿了 2019 年最精良的 23 款免费平安对象,笼盖从暗码破解到破绽治理、收集剖析到平安通信多个范畴,无论您在信息平安行业从事何种职业,总有一vpn pc端free款适合你,若是你正在使用个中的数款软件,或许有更好的介绍,也能够留言分享。

4.1

5.Maltego

6.Maltego 是 Paterva 斥地的取证和开源谍报法式,旨在为用户的手机vpn软件数字情况供应清楚的威胁图景。Laltego 可以直观展示单点故障的复杂性和严重性,以及企业根蒂架构局限内的信任关系。无论是企业收集边缘路由器的设置状况,照样公司副总裁的下落,Maltego都能从互联网squirrel vpn怎么样海量信息中提掏出相关谍报。Maltego贸易版有点小贵,但社区版是免费的,固然有一些功能限制。

7.2

8.OWASP Zed冲击代理 (ZAP)

9.Zed 冲击代理 (ZAP) 桌面版vpn是一款用户友好的渗透测试对象,可发现 Web 应用法式中的破绽。它为那些进展手动查找破绽的人供应了主动扫描法式和一整套对象。ZAP 适合那些拥有普遍平安经验的从业者使用,同时也是渗透测试新手或斥地人员的幻想选择。针对Jenkins持续集成和交付应用法式,ZAP 甚至还供应了一个官方插件。

10.3

11.Samurai Web测试框架

12.Samurai Web 测试框架是一个虚拟机,也是一个web渗透测试情况,个中包含了一些本文提到的其他对象。你能够下载一个 ZIP 压缩包,里面的 VMware 镜像文件里包含了大量免费和开源对象来测试和冲击网站。

13.这些对象包罗 Fierce 域扫描法式和 Maltego。映射对象包含 WebScarab 和 ratproxy,发现对象包罗 w3af 和 burp,破绽行使方面,供应了 AJAXShell 和浏览器斥地框架 BeEF 等。然则全家桶也是有价值的:Samurai 斥地人员的邮件列表在曩昔几年中一向处于休眠状况,最新的 SamuraiWTF 版本 3.3.2 于 2016 年打包,是以个中包含的很多对象都是 “过时” 版本。

14.4

15.BackTrack

16.Kali Linux 是基于 Linux 的渗透测试对象箱,曩昔被称为 BackTrack。经由 BackTrack,平安专业人员能够在内陆原生的冲击情况中执行评估。用户能够轻松接见和使用从端口扫描法式到暗码破解法式的各类对象。你能够下载 Kali 的 ISO,安装在 32 位、64 位 x86 系统或 ARM 处理器系统,也能够作为 VMware 或 Hyper-V 的 VM 映像使用。

17.Kali 的对象分为以下几类:信息收集、懦弱性剖析、无线冲击、web 应用、破绽行使对象、压力测试、 取证、嗅探和诳骗、暗码冲击、接见连结、逆向工程、申报和硬件黑客冲击。

18.5

19.Cain&Abel

20.若是您急迫需要接见一个老旧的 Windows 系统,但没人记得(供应)暗码,那么 Cain&Abel 或者会是你的最后一根救命稻草。Cain&Abel 是微软 Windows XP(但愿你还记得)以来各版本把持系统的暗码恢复对象,自 2014 年以来该对象未进行过更新。

21.Cain&Abel 能够经由嗅探收集、使用字典、暴力破解和暗码剖析冲击破解暗码,Cain&Abel 还能对 VoIP 通话灌音,解码加扰的暗码,恢复无线收集密钥,显露暗码框,发现缓存的暗码并进行剖析,从而轻松恢复各类暗码,并剖析路由和谈。Cain&Abel 能行使和谈尺度、身份验证方式懈弛存机制中存在中的一些弱点和平安缺陷,其首要目的是简化各类暗码和账户的恢复工作。

22.6

23.Fierce Domain Scan

24.这是一个让人寂然起敬的对象,12 年前 (2007) 斥地人员 Robert Hansen (RSnake) 对 Fierce Domain Scan 进行了最后一次更新。正如他在 ha.ckers 博客上所言:斥地 FDS 的激动来自一次让人溃逃的 Web 应用平安审计工作。

25.经由检索 DNS 条目,Fierce 能够正确地锁定公司收集内部和外部的方针。Fierce 素质上是一种伺探对象,一种 Perl 剧本,能够使用多种策略在几分钟内扫描域。尽管 Hansen 封闭了他的博客,但 Fierce 仍然活在 Github 法式库中。因为 DNS 的根基道理在曩昔十年中没有发生什么转变,是以 Fierce 仍然有效。

26.7

27.The Harvester

28.Harvester 是一种开放源谍报对象 (OSINT),可行使Google 和 LinkedIn 等民众资源获取与方针域名相关的子域名、电子邮件地址和用户名。Harvester 是渗透测试人员的最爱,能够用于被动伺探并竖立方针档案,个中包罗用户名和电子邮件地址的列表-或用于评估自身域名的露出情形。

29.8

30.Hping

31.Hping 是一个号令行对象,可用于组装和剖析自界说 TCP / IP 数据包。它能够用于防火墙测试、端口扫描、多和谈收集测试、把持系统指纹识别,也能够作为高级路由跟踪对象使用。Hping 能够在 Linux、FreeBSD、NetBSD、OpenBSD、Solaris、MacOS X和Windows 上运行。Hping 拖了好多年,但 TCP / IP 也没有更新过。

32.9

33.John the Ripper

34.开膛手约翰 (John the Ripper) 是可用于 Unix、Windows、DOS、BeOS 和 OpenVMS 的跨..暗码破解法式,不外使用前你或者需要本身着手编译免费版本。John the Ripper 首要用于检测弱 Unix 暗码,除了在各类 Unix 系统上最常见的几种crypt (3) 暗码哈希类型之外,还支撑 Windows LM 哈希。John the Ripper 的社区增加版本支撑更多哈希和暗码,增加了对 GPU 的支撑,搜刮速度也更快。

35.10

36.Nessus

37.Nessus 是地球上最受迎接的破绽和设置评估对象之一。Nessus 最初是一个开源项目,但斥地者 Tenable 在第三个版本起头改为专有许可。截止 2018 年 5 月,Nessus 的版本号为 7.1。令人欣慰的是,小我依然能够在家庭收集中免费使用 Nessus,能扫描多达 16 个 IP 地址。Nessus 的功能特色包罗高速发现、设置审核、资产设置文件、敏感数据发现、补丁治理集成和破绽剖析等。

38.11

39.NMap

40.Nmap 是用于收集索求和平安审核的开源对象,其斥地者在发布20年后仍在维持更新。NMap 能够快速扫描大型收集,单个主机更是不在话下。凭据 NMap 网站信息,NMap 能够凭据原始 IP 数据包来确定收集上可用的主机、这些主机供应的办事、它们正在运行的把持系统,正在使用的数据包过滤器/防火墙的类型以及数十种其他特征信息。NMap 是一个万能型对象,不光可用于平安审核,还能够用于获取收集构造清单,治理办事升级规划。

41.12

42.OpenVPN

43.OpenVPN 是一种开放源代码 SSL VPN 对象,可在非常宽泛的设置中使用,包罗长途接见,站点到站点 VPN,Wi-Fi 平安和企业级长途接见解决方案。OpenVPN 供应了负载平衡、故障转移和细粒度的接见掌握。OpenVPN 为 Windows 设备供应了打包的安装法式,也能够在 OpenBSD,FreeBSD,NetBSD,Mac OS X 和 Solaris 上运行。

44.13

45.Ophcrack

46.Ophcrack 是一个免费对象,可使用彩虹表破解 Windows 暗码。它运行在多个..上,供应图形用户界面,可以显露实时图形以剖析暗码。行使站点上现成的免费彩虹表,Ophcrack 能够用 LM (Windows XP) 和 NTLM (Vista,7) 哈希来破解暗码。它还具有效于简洁暗码的暴力破解模块,甚至能够从 Windows 分区中恢复的加密平安帐户治理器 (SAM) 中转储和加载哈希。

47.14

48.Python Security

49.OWASP Python Security 项目致力于建立一个 Python 的强化版本,匡助斥地人员斥地出能用于高风险情况的应用法式,现在,Python Security 已经是 Python 平安性的最大信息集。Python Security 团队专注于两个范畴:Python 应用法式和开源代码的功能和构造剖析,以及 Python 注释器的黑盒剖析。该项目的网站有一个 Wiki 网页,列出了他们发现的所有平安问题。

50.15

51.Wireshark

52.Wireshark 是一种收集和谈剖析器,它使用户能够捕捉并交互式浏览较量机收集上运行的流量。在其 20 多年的成长汗青中,Wireshark 增加了好多功能,包罗实时捕捉、离线剖析以及对数百种和谈的深入搜检,而且络续有新功能到场。Wireshark 是跨..的,可在 Windows、Linux、OS X、Solaris、FreeBSD、NetBSD 等..上运行。Wireshark还有好多高级功能,例如剖析 VOIP 流量、解密 SSL / TLS、WEP 和 WPA / WPA2 流量,并读取经由 USB,蓝牙甚至帧中继传输的流量。

53.16

54.ModSecurity

55.ModSecurity 是由 Trustwave 的 SpiderLabs 团队斥地的Web应用法式监控、日志记录和接见掌握对象包。它能够执行完整的 HTTP 事务日志记录,捕捉完整的恳求和响应,进行持续的平安评估并加固 Web 应用法式。你能够把 ModSecurity 嵌入到 Apache 2.x 安装包中,也能够将其布置为反向代理以珍爱任何Web办事器。

56.17

57.ThreadFix

58.ThreadFix 是 Denim Group 斥地的软件破绽聚合和破绽治理系统。它成家并归并来主动态、静态和交互式应用法式扫描法式的申报究竟。它能够与软件缺陷跟踪系统进行交互,匡助斥地人员聚焦最严重的问题。ThreadFix 的社区版是开源的,此外还有一个增加功能的付费版本。

59.18

60.Burp Suite

61.Burp Suite 是一个 Web 应用法式平安测试..,支撑完整的测试流程,从应用法式冲击面初始映射到平安破绽的发现、剖析和行使。该套件中的对象包罗代理办事器、收集蜘蛛、Intruder(暴力破解)和 Repeater(恳求自 动化)。

62.Burp Suite 参数浩瀚,入门较难,然则一旦上手,威力伟大。Portswigger 供应了一个 Burp Suite 免费版本,该版本贫乏 Web 破绽扫描法式和某些高级手动对象。

63.19

64.Metasploit

65.HD Moore 于 2003 年建立了 Metasploit 项目,旨在为平安社区供应用于破绽行使斥地的民众资源。该项目发生了 Metasploit 框架,一个用于编写平安对象和破绽行使法式的开源..。2009 年,破绽治理解决方案公司 Rapid7 收购了 Metasploit 项目。收购之前,框架的所有斥地工作都是斥地人员业余时间完成。Rapid7 赞成帮助一个专职的斥地团队,并维持了源代码的 BSD 许可。

66.20

67.Aircrack-ng

68.若是说 Wireshark 是以太网杀神,那么 Aircrack-ng 就是 Wi-Fi 终结者。实际上 Aircrack 是一整套对象包,包含了数据包监控、硬件测试、暗码破解以及Wi-Fi收集冲击对象。2018 年 4 月发布的 1.2 版极大地提高了速度和平安性,并扩展了 Aircrack-ng 能够使用的硬件局限。

69.21

70.TAILS

71.健忘症隐身实时系统(简称TAILS)是能够在 DVD 光碟或USB记忆棒运行的实时 Linux 把持系统。健忘症 (Amnesiac) 指的是 TAILS 不会追踪或保留上一个会话的记录,而隐身 (Incognito) 指的是它使用 Tor 进行所有互联网通信。需要注重的是,当使用 Tor 时,若是你登录社交账号或做其他蠢事,监控者依然会发现你的身份,除此之外,TAILS 能够在很大水平上确保你的在线运动的私密性。

72.22

73.Qubes OS

74.与 IT 业常见的强调疗效分歧,Qubes OS 非常低调地将本身描述为 “一个openvpn代理相当平安的把持系统”。它使用 Xen 虚拟机治理法式来划分分歧虚拟机 (qubes) 中的功能。能够将分歧的运动隔离在分歧的 Qubes 中。平安强度完全取决于你的需求,若是您只是有点担心,能够选择在一个 qube 中执行网上银行买卖,而在另一个 qube 中执行所有其他在线运动。若是您万分郑重,也能够为每一个电子邮件附件建立一个一次性的 qube,确保恶意附件无法接管整个较量机。Qubes OS 供应免费下载。

75.23

76.Signal

77.Signal 是一款供应端到端加密(默认开启)的即时通信法式,甚至其斥地人员也无法阻挡或许解密小我通话,其平安性和口碑强于被币圈搞黄了的 Telegram。Signal 供应微信的大部门通信功能,包罗语音视频通话、多媒体文件传输等,最大的卖点是高度可定制化的隐私珍爱功能,包罗加密群聊、阅后即焚和新闻准时销毁功能。

78.相关阅读

79. 2019年顶级应用平安对象

80.5种最常用的黑客对象,以及若何防御1.用openvpn快速建立linux下的加密代理

2.5:诊断

3.VPN一般出问题就只有三个地方,client的防火墙,server的防火墙,和转发开关是否打开,所以我们在服务端抓抓包就完全可purevpn怎么样知乎以找到出问题的地方。ipsec pptp都可以这么找错。

4.A:在server的tun0口抓一切包,以检测client-->server是否连通,废话,肯定连通的,否则那图标怎么会是绿色好用的翻墙软件....

5.[[email protected] root]# tcpdump -n -i tun0

6.tcpdump: listening on tun0

7.B:在server的eth0口抓目中国好用的vpn标地址包,以检测转发是否有问题。

8.[[email protected] root]# tcpdump -n -i eth0 dst host baoz.net

9.tcpdump: listening on 中国openvpn eth0

10.C:这个时候我们telnet一下baoz.net看看

11.C:>telnet baoz.net

12.两边都看到有包就对了。如果有一边看不到包,就自己折腾一下神灯vpn mac好了。看看一路过来是不是都没搞错。

13.到此为止,我们已经可以通过加密代理上网了。

14.D:希望你的内网里不要有10的路由,有朋友出过类似的问题,如果你内网是10的,最好把前面的10.8.0.1和10.8.0.2改成192.168.0.1和192.168.0.2以避免路由上的问题。

15.6:安全

16.除了使用nobody:nobody跑openvpn之外,我们还可以chroot一下,一开始我以为也要ldd一下然后把库什么的还有配置文件丢到一目录里去,今天一朋友和我说openvpn貌似有remote 1出,不知道真的假的,不过0day exp这东西,还是宁可信其有,不可信其无,他建议我把chroot的办法也写进去,我又把文档看了看,发现原来他本身有chroot的实现,他的配置文件,key什么的,都在chroot之前装载好了,我们只需要加一个参数到服务端的配置文件去就OK

17.chroot /var/tmp  -->等会我们可以通过lsof准确的判断openvpn已经chroot了

18.[[email protected] root]# ps aux | grep openvpn

19.nobody 24066 0.0 0.1 4012 1684 %2fS15:12 0:00 [openvpn]

20.root 24069 0.0 0.0 3572 624 pts/2S15:45 0:00 grep openvpn

21.[[email protected] root]# lsof -p 24066 | grep "/var/tmp"

22.openvpn 24066 nobody cwdDIR 8,14096 294337 /var/tmp

23.openvpn 24066 nobody rtdDIR 8,14096 294337 /var/tmp

24.这回即使别人有remote exp也不怕了,要能进来的话就请看看/var/tmp里的东西好了,呵呵。

25.五:肉鸡中的隐藏

26.0:肉鸡哪来?

27.A:web app漏洞,awstat什么的,没事就留意一下milw0rm.com的webapp部分,出新漏洞了就google hacking一把。

28.B:ssh or telnet弱口令 没事就找几个A BLOCK扫扫看。推荐xfocus冰河的X-Scan。

29.C:0day exp %2f 这个我就不清楚了。

30.D:蜜罐,上面三种情况都可能是蜜罐,不过没关系,就做个代理上上网嘛,蜜罐就蜜罐了,只要网速快就行。

31.1:日志

32.日志的处理上面在服务端配置部分已经提到了的,小心处理就是,只要你比系统(安全)管理员更XX你就可以玩的下去,其中XX可以用细心,坚韧,不拔等形容词代替。

33.2:进程、端口和连接

34.A:sk2一装,用sk2的client进去启动openvpn,动态隐藏进程端口和网络连接

35.B:adore,貌似要改改才行,不过我暂时没这个需求,sk2已经很爽了。

36.C:shv5,最近抓到的一个rootkit,替换ELF文件的,很容易被查出来,没啥意思,他的特征是默认有个/usr/lib/libsh目录。

37.3:ifconfig

38.这个是最关键的也是最麻烦的,因为一般的人都会ifconfig敲着玩玩的,一不小心就会被发现多了个tun0。。。。呵呵,我想了想办法有两:

39.A:使用awk or sed脚本替换/sbin/ifconfig,过滤掉tun0相关的输出,但这个比较容易被chkrootkit这样的东西发现,不过即使被人家用 chkrootkit发现了也挺光荣的,至少用chkrootkit的人还稍微比较专业点,总比被人家ifconfig发现了好吧……

40.B:修改ifconfig的源程序,让他输出的时候不显示tunX设备,这个相对稳妥,因为一般检查ifconfig都是对比那混杂模式而已的,当然还有文件类型。

41.[[email protected] root]# rpm -q --whatprovides /sbin/ifconfig

42.net-tools-1.60-12

43.查了一下,在这个软件包里,想改的自己可以改改,不想改的就去使用wzt修改的ifconfig程序覆盖掉系统的/sbin/ifconfig文件,这就不会显示出tunX接口了。

44.这个程序在http://baoz.net或http://xsec.org可以下载。

45.C:我们知道rpm是可以自校验的,如果我们换了他的ifconfigopenvpn代理,然后我们检查一下,就会发现下面的信息1.网络安全工具集

2.Nessus 是最好的免费网络漏洞扫描器,它可以运行于几乎所有的UNIX平台之上。它不止永久升级,还免费提供多达11000种插件(但需要免费pc端vpn注册并接受EULA-acceptance–终端用户授权协议)。它的主要功能是远程或本地(已授权的)安全检查,客户端/服务器架构,GTK(Linux下的一种图形界面)图形界面,内置脚本语言编译器,可以用其编写自定义插件,或用来阅读别人写的插件。Nessus vpn pc端免费 3 panda vpn怎么样已经开发完成(now closed source),其现阶段仍然免费,除非您想获得最新的插件。

3.Wireshark (2006年夏天之前叫做 Ethereal)是一款非常棒的Unix和Windows上的开源网络协议分析器。它可以实时检测网络通讯数据,也可以检测其抓取的网络通讯数据快照文件。可以通过图形界面浏览这些数据,可以查看网络通讯数据包中每一层的详细内容。Wireshark拥有许多强大的特性:包含有强显示过滤器语言(rich display filter language)和查看TCP会话重构流的能力;它更支持上百种协议和媒体类型; 拥有一个类似tcpdump(一个Linux下的网络协议分析工具)的名为tethereal的的命令行版本。不得不说一句,Ethereal已经饱受许多可远程利用的漏洞折磨,所以请经常对其进行升级,并在不安全网络或敌方网络(例如安全会议的网络)中谨慎使用之。

4.这款小型的**检测和预防系统擅长于通讯分析和IP数据包登录(packet logging)。Snort除了能够进行协议分析、内容搜索和包含其它许多预处理程序,还可以检测上千种蠕虫病毒、漏洞、端口扫描以及其它可疑行为检测。Snort使用一种简单的基于规则的语言来描述网络通讯,以及判断对于网络数据是放行还是拦截,其检测引擎是模块化的。 用于分析Snort警报的网页形式的引擎 Basic Analysis and Security Engine (BASE)可免费获得。

5.开源的Snort为个人、小企业、集团用户提供良好的服务。其母公司SourceFire提供丰富的企业级特性和定期升级以丰富其产品线。提供(必须注册)5天免费的规则试用,您也可以在Bleeding Edge Snort找到很多免费规则。

6.这个简单的小工具可以读和写经过TCP或UDP网络连接的数据。它被设计成一个可靠的可以被其它程序或脚本直接和简单使用的后台工具。同时,它也是一个功能多样的网络调试和检查工具,因为它可以生成几乎所有您想要的网络连接,包括通过端口绑定来接受输入连接。Netcat最早由Hobbit在1995年发布,但在其广为流传的情况下并没有得到很好的维护。现在nc110.tgz已经很难找了。这个简单易用的工具促使了很多人写出了很多其它Netcat应用,其中有很多功能都是原版本没有的。其中最有趣的是Socat,它将Netcat扩展成可以支持多种其它socket类型,SSL加密,SOCKS代理,以及其它扩展的更强大的工具。它也在本列表中得到了自己的位置(第71位)。还有Chris Gibson’s Ncat,能够提供更多对便携设备的支持。其它基于Netcat的工具还有OpenBSD’s nc,Cryptcat,Netcat6,PNetcat,SBD,又叫做GNU Netcat。

7.2004年Metasploit的发布在安全界引发了强烈的地震。没有一款新工具能够一发布就挤进此列表的15强(也就是说2000年和2003年的调查没有这种情况),更何况此工具更在5强之列,超过了很多广为流传的诞生了几十年的老牌工具。它是一个强大的开源平台,供开发、测试和使用恶意代码。这种可扩展的模型将负载控制、编码器、无操作生成器和漏洞整合在一起,使得Metasploit Framework成为一种研究高危漏洞的途径。它自带上百种漏洞,还可以在online exploit building demo(在线漏洞生成演示)看到如何生成漏洞。这使得您自己编写漏洞变得更简单,它势必将提升非法shellcode代码的水平,扩大网络阴暗面。与其相似的专业漏洞工具,例如Core Impact和Canvas已经被许多专业领域用户使用。Metasploit降低了这种能力的门槛,将其推广给大众。

8.这个小工具可以发送自定义的ICMP,UDP和TCP数据包,并接收所有反馈信息。它的灵感来源于ping命令,但其功能远远超过ping。它还包含一个小型的路由跟踪模块,并支持IP分段。此工具可以在常用工具无法对有防火墙保护的主机进行路由跟踪/ping/探测时大显身手。它经常可以帮助您找出防火墙的规则集,当然还可以通过它来学习TCP/IP协议,并作一些IP协议的实验。

9.Kismet是一款基于命令行(ncurses)的802.11 layer2无线网络探测器、嗅探器、和**检测系统。它对网络进行被动嗅探(相对于许多主动工具,例如NetStumbler),可以发现隐形网络(非信标)。它可以通过嗅探TCP、UDP、ARP和DHCP数据包来自动检测网络IP段,以Wireshark/TCPDump兼容格式记录通讯日志,更加可以将被检测到的网络分块并按照下载的分布图进行范围估计。如您所想,这款工具一般被wardriving所使用。嗯!还有warwalking、warflying和warskating……

10.在Ethereal(Wireshark)出现之前大家都用Tcpdump,而且很多人现在还在一直使用。它也许没有Wireshark那么多花里胡哨的东西(比如漂亮的图形界面,亦或数以百计的应用协议逻辑分析),但它能出色的完成很多任务,并且漏洞非常少,消耗系统资源也非常少。它很少添加新特性了,但经常修复一些bug和维持较小的体积。它能很好的跟踪网络问题来源,并能监控网络活动。其Windows下的版本叫做WinDump。Libpcap/WinPcap的包捕获库就是基于TCPDump,它也用在Nmap等其它工具中。

11.UNIX用户经常声称正是因为Unix平台下有很多非常好的免费安全工具,所以Unix才会成为最好的平台,而Windows平台一般不在他们的考虑范围之内。他们也许是对的,但Cain & Abel确实让人眼前一亮。这种只运行于Windows平台的密码恢复工具可以作很多事情。它可以通过嗅探网络来找到密码、利用字典破解加密密码、暴力破解密码和密码分析、记录VoIP会话、解码非常复杂的密码、星号查看、剥离缓存密码以及分析路由协议。另外其文档也很齐全(well documented)。

12.John the Ripper是最快的密码破解器,当前支持多种主流Unix (官方支持11种,没有计算不同的架构)、DOS、Win32、BeO和OpenVMS。它的主要功能就是检测弱Unix密码。它支持主流Unix下的多种(3种)密码哈希加密类型,它们是Kerberos、AFS以及Windows NT/2000/XP LM。其它哈希类型可以通过补丁包加载。如果您希望从一些单词表开始的话,您可以在这里、这里和这里找到。

13.Ettercap是一款基于终端的以太网络局域网嗅探器/拦截器/日志器。它支持主动和被动的多种协议解析(甚至是ssh和https这种加密过的)。还可以进行已建立连接的数据注入和实时过滤,保持连接同步。大部分嗅探模式都是强大且全面的嗅探组合。支持插件。能够识别您是否出在交换式局域网中,通过使用操作系统指纹(主动或被动)技术可以得出局域网结构。

14.Nikto是一款开源的(GPL)网页服务器扫描器,它可以对网页服务器进行全面的多种扫描,包含超过3200种有潜在危险的文件/CGIs;超过625种服务器版本;超过230种特定服务器问题。扫描项和插件可以自动更新(如果需要)。基于Whisker/libwhisker完成其底层功能。这是一款非常棒的工具,但其软件本身并不经常更新,最新和最危险的可能检测不到。

15.虽然有很多重型的高科技网络安全工具,但是不要忘记其基础!所有网络安全人士都要对这些基本命令非常熟悉,因为它们对大多数平台都适用(在Windows平台上whois为tracert)。它们可以随手捏来,当然如果需要使用一些更高级的功能可以选择Hping2和Netcat。

16.SSH(Secure Shell)现在普遍应用于登录远程计算机或在其上执行命令。它为不安全网络上的两台不互信计算机间通讯提供安全加密,代替非常不可靠的telnet/rlogin/rsh交互内容。大多UNIX使用开源的OpenSSH服务器和客户端程序。Windows用户更喜欢免费的PuTTY客户端,它也可以运行在多种移动设备上。还有一些Windows用户喜欢使用基于终端的OpenSSH模拟程序Cygwin。还有其它很多收费和免费的客户端。您可以在这里和这里找到。

17.如果您需要暴力破解一个远程认证服务,Hydra经常会是选择对象。它可以同时对30个以上的端口进行基于字典的快速破解,包括telnet、ftp、http、https、smb、多种数据库及其它服务。和THC Amap一样,此Hydra版本来自于民间组织THC。

18.基于Java的网页程序漏洞评估代理。支持实时编辑和浏览HTTP/HTTPS信息,修改例如Cookie和表字段中的内容。它包含有网页通讯记录器、网页小偷(web spider)、哈希计算器和一个常用网页程序攻击扫描器,例如SQL注入和跨网站脚本等。

19.由Dug Song精心设计并广受欢迎的这款套装包含很多工具。Dsniff、filesnarf、mailsnarf、msgsnarf、urlsnarf和webspy通过被动监视网络以获得敏感数据(例如密码、邮件地址、文件等)。Arpspoof、dnsspoof和macof能够拦截一般很难获取到的网络通讯信息(例如由于使用了第二层转换(layer-2 switching))。Sshmitm和webmitm通过ad-hoc PKI中弱绑定漏洞对ssh和https会话进行重定向实施动态monkey-in-the-middle(利用中间人攻击技术,对会话进行劫持)攻击。Windows版本可以在这里获取。总之,这是一个非常有用的工具集。它能完成几乎所有密码嗅探需要作的工作。

20.Netstumbler是广为人知的寻找开放无线访问接入点的Windows工具(”wardriving”)。其PDA上的WinCE系统版本名叫Ministumbler。此软件当前免费,但只能够运行在Windows平台上,且代码不公开。它使用很多主动方法寻找WAP,而Kismet或KisMAC则更多使用被动嗅探。

21.Amap是一款很棒的程序,它可以检测出某一端口正在被什么程序监听。因为其独有的version detection特性,所以其数据库不会象Nmap一样变得很大,在Nmap检测某一服务失败或者其它软件不起作用时可以考虑使用之。Amap的另一特性是其能够解析Nmap输出文件。这也是THC贡献的另一款很有价值的工具。

22.GFI LANguard通过对IP网络进行扫描来发现运行中的计算机,然后尝试收集主机上运行的操作系统版本和正在运行的应用程序。我曾经尝试收集到了Windows主机上的service pack级别、缺少的安全更新、无线访问接入点、USB设备、开放的共享、开放的端口、正在运行的服务和应用程序、主要注册表项、弱密码、用户和组别以及其它更多信息。扫描结果保存在一份可自定义/可查询的HTML报告文档中。它还含有一个补丁管理器,可以检查并安装缺少的补丁。试用版可以免费获得,但只能使用30天。

23.Aircrack是一套用于破解802.11a/b/g WEP和WPA的工具套装。一旦收集到足够的加密数据包它可以破解40到512位的WEP密匙,它也可以通过高级加密方法或暴力破解来破解WPA 1或2网络。套装中包含airodump(802.11数据包捕获程序)、aireplay (802.11数据包注入程序)、aircrack(静态WEP和WPA-PSK破解),和airdecap(解密WEP/WPA捕获文件)。

24.SuperScan是一款Foundstone开发的免费的只运行于Windows平台之上的不开源的TCP/UDP端口扫描器。它其中还包含许多其它网络工具,例如ping、路由跟踪、http head和whois。

25.Netfilter是一款强大的运行于标准Linux核心上的包过滤器。它集成了用户空间IP列表工具。当前,它支持包过滤(无状态或有状态)、所有类型的网络地址和端口转换(NAT/NAPT)并支持多API层第三方扩展。它包含多种不同模块用来处理不规则协议,例如FTP。其它UNIX平台请参考Openbsd PF(只用于OpenBSD)或者IP Filter。许多个人防火墙(personal firewalls)都支持Windows (Tiny、Zone Alarm、Norton、Kerio…),但都不提供上述IP列表。微软在Windows XP SP2中集成了一款非常基础的防火墙,如果您不安装它,它就会不断地提示您安装。

26.Sysinternals为Windows低级**提供很多非常有用的小工具。其中一部分是免费的,有些还附有源代码,其它是需要付费使用的。受访者最喜欢此集合中的以下工具:

27.ProcessExplorer 监视所有进程打开的所有文件和目录(类似Unix上的LSoF)。

28.PsTools 管理(执行、挂起、杀死、查看)本地和远程进程。

29.Autoruns 发现系统启动和登陆时加载了哪些可执行程序。

30.RootkitRevealer 检测注册表和文件系统API异常,用以发现用户模式或内核模式的rootkit工具。

31.TCPView 浏览每个进程的TCP和UDP通讯终点(类似Unix上的Netstat)。

32.生产此软件的公司已被微软于2005年收购,所以其未来产品线特征无法预测。

33.象Nessus一样,Retina的功能是扫描网络中所有的主机并报告发现的所有漏洞。eEye出品,此公司以其security research而闻名。

34.常用的安全问题都能在网上找到工具解决,但使用脚本语言您可以编写您自己的(或编辑现有的)工具,当您需要解决某种特定问题的时候。快速、简单的脚本语言可以测试、发现漏洞甚至修复系统漏洞。CPAN上充满了类似Net::RawIP和执行协议的程序模块,可以使您的工作更加轻松。

35.L0phtCrack也叫作LC5,用来尝试通过哈希(通过某种访问方式获得的)方法破解诸如Windows NT/2000工作站、联网服务器、主域控制器、或活动目录密码,有时它也可以通过嗅探获得密码的哈希值。它还可以通过多种手段来猜测密码(字典、暴力破解等等)。Symantec公司2006年已经停止了LC5的开发,但LC5 installer的安装文件随处可以找到。免费试用版只能使用15天,Symantec已经停止出售此软件的注册码,所以如果您不想放弃使用它,就必须找到一个与其对应的注册码生成器(key generator)。因为Symantec不再维护此软件,所以最好尝试用Cain and Abel或John the Ripper来代替之。

36.Scapy是一款强大的交互式数据包处理工具、数据包生成器、网络扫描器、网络发现工具和包嗅探工具。它提供多种类别的交互式生成数据包或数据包集合、对数据包进行操作、发送数据包、包嗅探、应答和反馈匹配等等功能。Python解释器提供交互功能,所以要用到Python编程知识(例如variables、loops、和functions)。支持生成报告,且报告生成简单。

37.Sam Spade为许多网络查询的一般工作提供了图形界面和方便的操作。此工具设计用于跟踪垃圾信息发送者,但它还可以用于许多其它的网络探查、管理和安全工作。它包含许多有用的工具,例如ping、nslookup、whois、dig、路由跟踪、查找器、原始HTTP网页浏览器、DNS地址转换、SMTP中继检查、网站搜索等等。非Windows用户可以在线使用更多其它工具。

38.PGP是Phil Zimmerman出品的著名加密程序,可以使您的数据免受窃听以及其它危险。GnuPG是一款口碑很好的遵守PGP标准的开源应用(可执行程序名为gpg)。GunPG是免费的,而PGP对某些用户是收费的。

39.AirSnort是一款用来恢复加密密码的无线LAN(WLAN)工具。Shmoo Group出品,工作原理是被动监控传输信息,当收集到足够多的数据包后开始计算加密密码。Aircrack和它很像。

40.这款卓越的光盘自启动Linux系统是由Whax和Auditor合并而成。它以其超级多的安全和防护工具配以丰富的开发环境而闻名。重点在于它的用户模块化设计,用户可以自定义将哪些模块刻到光盘上,例如自己编写的脚本、附加工具、自定义内核等等。

41.P0f能够通过捕获并分析openvpn代理目标主机发出的数据包来对主机上的操作系统进行鉴别,即使是在系统上装有性能良好的防火墙的情况下也没有问题。P0f不增加任何直接或间接的网络负载,没有名称搜索、没有秘密探测、没有ARIN查询,什么都没有。某些高手还可以用P0f检测出主机上是否有防火墙存在、是否有NAT、是否存在负载平衡器等等!

42.Google当然不是什么安全工具,但是它超级庞大的数据库却是安全专家和**者最好的资源。如果您想了解某一公司,您可以直接用它搜索 “site:target-domain.com”,您可以获得员工姓名、敏感信息(通常公司不对外公开的,但在Google上就难说了)、公司内部安装的软件漏洞等等。同样,如果您在Google上发现一个有某个漏洞的网站,Google还会提供给您其它有相同漏洞的网站列表。其中利用Google进行黑客活动的大师Johny Long建立了一个Google黑客数据库(Google Hacking Database)还出版了一本如何用Google进行黑客活动的书Google Hacking for Penetration Testers。

43.它的原理很简单,WebScarab记录它检测到的会话内容(请求和应答),使用者可以通过多种形式来查看记录。WebScarab的设计目的是让使用者可以掌握某种基于HTTP(S)程序的运作过程;也可以用它来调试程序中较难处理的bug,也可以帮助安全专家发现潜在的程序漏洞。

44.Ntop以类似进程管理器的方式显示网络使用情况。在应用程序模式下,它能显示用户终端上的网络状况。在网页模式下,它作为网页服务器,以HTML文档形式显示网络状况。它是NetFlow/sFlow发射和收集器,通过一个基于HTTP的客户端界面来生成以ntop为中心的监控程序,RRD(Round Robin Database)(环形数据库)用来持续储存网络通讯状态信息。

45.一款文件和目录完整性检查器。Tripwire是一种可以帮助系统管理员和一般用户监控某一特定文件或目录变化的工具。可以用以对系统文件作日常(例如:每天)检查,Tripwire可以向系统管理员通报文件损坏或被篡改情况,所以这是一种周期性的文件破坏控制方法。免费的开源Linux版本可以在Tripwire.Org下载到。AIDE是UNIX平台的Tripwire替代品。或者Radmind、RKHunter和chkrootkit也是很好的选择。Windows用户请使用Sysinternals出品的RootkitRevealer。

46.ngrep尽可能多的去实现GNU grep的功能,将它们应用于网络层。Ngrep是一款pcap-aware工具,它允许指定各种规则式或16进制表达式去对数据负载或数据包进行匹配。当前支持TCP、UDP、以太网上的ICMP、PPP、SLIP、FDDI、令牌环(Token Ring)和空接口(null interfaces),还能理解类似Tcpdump和snoop等一样形式的bpf过滤器逻辑。

47.NBTscan是一款在IP网络上扫描NetBIOS名称信息的工具。它通过给指定范围内所有地址发送状态查询来获得反馈信息并以表形式呈现给使用者。每一地址的反馈信息包括IP地址、NetBIOS计算机名、登录用户、MAC地址。

48.SPI Dynamics’ WebInspect应用程序安全评估工具帮您识别已知和未知的网页层漏洞。它还能检测到Web服务器的配置属性,以及进行常见的网页攻击,例如参数注入、跨网站脚本、目录游走等等。

49.OpenSSL项目的目的是通过开源合作精神开发一种健壮的、可以和同类型商业程序媲美的、全功能的,且开源的应用于SSL v2/v3(Secure Sockets Layer)和TLS v1(Transport Layer Security)协议的普遍适用的加密库工具集。本项目由世界范围内的志愿者们维护,他们通过互联网联络、计划和开发OpenSSL工具集及其相关文档。

50.XProbe是一款远程主机操作系统探查工具。开发者基于和Nmap相同的一些技术(same techniques),并加入了自己的创新。Xprobe通过ICMP协议来获得指纹。

51.包含连接层、IP和TCP三种模式,EtherApe网络活动图通过不同颜色来标识不同协议。主机和连接的图形大小随通讯情况而变化。它支持以太网、FDDI、令牌环、ISDN、PPP和SLIP设备。它可以实施过滤网络通讯,也可以抓取网络通讯快照文件。

52.Core Impact可不便宜(先准备个上万美元吧),但它却是公认的最强的漏洞检测工具。它有一个强大的定时更新的专业漏洞数据库,它可以轻易的黑掉一台计算机,并以它为跳板再去作别的事情。如果您买不起Core Impact,可以看看比较便宜的Canvas或者免费的Metasploit Framework。当然,三个同时用是最好的了。

53.反编译器是一块很重要的安全研究方向。它可以帮您拆解微软的补丁,以了解微软未公开并悄悄修补的漏洞,或直接以二进制的方式对某个服务器进行检测,以找出为何某个存在的漏洞不起作用。反编译器有很多,但IDA Pro是遵守二进制包事实标准(de-facto standard)的恶意代码和漏洞研究分析工具。这个图形化的、可编程的、可扩展的、支持多处理器的反编译器现在有了一个和Windows一模一样的Linux(命令行模式)版本。

54.SolarWinds生产和销售了许多专业的系统管理工具。安全相关的包括许多网络发现扫描器、一个SNMP暴力破解器、路由器密码解密器、TCP连接重置程序、最快最易用的一个路由器设置下载和上传程序等等。

55.Pwdump可以从Windows主机中取得NTLM和LanMan哈希值,无论系统密码是否启用。它还能显示系统中存在的历史密码。数据输出格式为L0phtcrack兼容格式,也可以以文件形式输出数据。

56.这是一款Unix平台上的诊断和研究工具,它可以列举当前所有进程打开的文件信息。它也可以列举所有进程打开的通讯socket(communications sockets)。Windows平台上类似的工具有Sysinternals。

57.RainbowCrack是一款使用了大规模内存时间交换(large-scale time-memory trade-off)技术的哈希破解工具。传统的暴力破解工具会尝试每一个可能的密码,要破解复杂的密码会很费时。RainbowCrack运用时间交换技术对破解时间进行预计算,并将计算结果存入一个名叫”rainbow tables”的表里。预计算确实也会花费较长时间,但相对暴力破解来说则短多了,而且一旦预计算完成破解开始,那么破解所需要的时间就非常非常短了。

58.Firewalk使用类似路由跟踪的技术来分析IP数据包反馈,以确定网关ACL过滤器类型和网络结构。这款经典的工具在2002年十月由scratch重写。这款工具的大部分功能Hping2的路由跟踪部分也都能实现

59.Angry IP Scanner能够实现最基本的Windows平台上的主机发现和端口扫描。它的体积非常的小,它还可以通过挂载插件(a few plugins)来获得主机其它信息。

60.RKHunter是一款检测例如rootkit、后门、漏洞等恶意程序的工具。它采用多种检测手段,包括MD5哈希值对比、rootkits原始文件名检测、文件权限检测,以及LKM和KLD模块中的可疑字符串检测。

61.Ike-scan是一款检测IKE(Internet Key Exchange)服务传输特性的工具,IKE是VPN网络中服务器和远程客户端建立连接的机制。在扫描到VPN服务器的IP地址后,将改造过的IKE数据包分发给VPN网中的每一主机。只要是运行IKE的主机就会发回反馈来证明它存在。此工具然后对这些反馈数据包进行记录和显示,并将它们与一系列已知的VPN产品指纹进行对比。Ike-scan的VPN指纹包含来自Checkpoint、Cisco、Microsoft、Nortel和Watchguard的产品。

62.Arpwatch是LBNL网络研究组出品的一款经典的ARP中间人(man-in-the-middle)攻击检测器。它记录网路活动的系统日志,并将特定的变更通过Email报告给管理员。Arpwatch使用LibPcap来监听本地以太网接口ARP数据包。

63.这款Mac OS X下非常流行的搜寻器和Kismet功能差不多,但和Kismet不同的是Kismet是基于命令行的,而KisMac有很漂亮的图形化界面,在OS X上出现得也比Kismet早。它同时还提供映射、Pcap兼容格式数据输入、登录和一些解密、验证破解功能。

64.OSSEC HIDS的主要功能有日志分析、完整性检查、rootkit检测、基于时间的警报和主动响应。除了具有检测系统功能外,它还一般被用在SEM/SIM(安全事件管理(SEM: Security Event Management)/安全信息管理(SIM:Security Information Management))解决方案中。因其强大的日志分析引擎,ISP(Internet service provider)(网络服务提供商)、大学和数据中心用其监控和分析他们的防火墙、检测系统、网页服务和验证等产生的日志。

65.象其它平台上的Netfilter和IP Filter一样,OpenBSD用户最爱用PF,这就是他们的防火墙工具。它的功能有网络地址转换、管理TCP/IP通讯、提供带宽控制和数据包分级控制。它还有一些额外的功能,例如被动操作系统检测。PF是由编写OpenBSD的同一批人编写的,所以您完全可以放心使用,它已经经过了很好的评估、设计和编码以避免暴露其它包过滤器(other packet filters)上的类似漏洞。

66.Nemesis项目设计目的是为Unix/Linux(现在也包含Windows了)提供一个基于命令行的、小巧的、人性化的IP堆栈。此工具套装按协议分类,并允许对已注入的数据包流使用简单的shell脚本。如果您喜欢Nemesis,您也许对Hping2也会感兴趣,它们是互补的关系。

67.Tor是一款面向希望提高其网络安全性的广大组织和大众的工具集。Tor的功能有匿名网页浏览和发布、即时信息、irc、ssh以及其它一些TCP协议相关的功能。Tor还为软件开发者提供一个可开发内置匿名性、安全性和其它私密化特性的软件平台。在Vidalia可以获得跨平台的图形化界面。

68.Knoppix由一系列典型的GNU/Linux软件组成,可以自动检测硬件环境,支持多种显卡、声卡、SCSI和USB设备以及其它外围设备。KNOPPIX作为一款高效的Linux光盘系统,可以胜任例如桌面系统、Linux教学光盘、救援系统等多种用途,经过这次在nmap中调查证实,它也是一款很小巧的安全工具。如果要使用更专业的Linux安全系统请看BackTrack。

69.Internet Scanner是由Christopher Klaus在92年编写的一款开源的扫描器工具。现在这款工具已经演变成了一个市值上亿美元生产无数安全产品的公司。

70.Fport可以报告所有本地机上打开的TCP/IP和UDP端口,并显示是何程序打开的端口。所以用它可以快速识别出未知的开放端口以及与其相关的应用程序。它只有Windows版本,但现在很多UNIX系统上的netstat也提供同样的功能(Linux请用’netstat -pan’)。SANS article有Fport的使用说明和结果分析方法。

71.chkrootkit是一款小巧易用的Unix平台上的可以检测多种rootkit**的工具。它的功能包括检测文件修改、utmp/wtmp/last日志修改、界面欺骗(promiscuous interfaces)、恶意核心模块(malicious kernel modules)。

72.Spike Proxy是一款开源的以发现网站漏洞为目的的HTTP代理。它是Spike Application Testing Suite的一部分,功能包括自动SQL注入检测、 网站爬行(web site crawling)、登录列表暴力破解、溢出检测和目录游走检测。

73.OpenBSD是将安全作为操作系统首要任务的操作系统之一,甚至有时安全性级别要高于易用性,所以它骄人的安全性是不言而喻的。OpenBSD也非常重视系统的稳定性和对硬件的支持能力。也许他们最伟大的创举就是创造了OpenSSH。 OpenBSD用户对此系统之上的[pf](OpenBSD上的防火墙工具,本列表中第57位有介绍)也褒奖有佳。

74.Yersinia是一款底层协议攻击**检测工具。它能实施针对多种协议的多种攻击。例如夺取生成树的根角色(生成树协议:Spanning Tree Protocol),生成虚拟CDP(Cisco发现协议:Cisco Discovery Protocol)邻居、在一个HSRP(热等待路由协议:Hot Standby Router Protocol)环境中虚拟成一个活动的路由器、制造假DHCP反馈,以及其它底层攻击。

75.Nagios是一款系统和网络监控程序。它可以监视您指定的主机和服务,当被监视对象发生任何问题或问题被解决时发出提示信息。它的主要功能有监控网络服务(smtp、pop3、http、nntp、ping等等)、监控主机资源(进程负载、硬盘空间使用情况等等)、当发现问题或问题解决时通过多种形式发出提示信息(Email、寻呼机或其它用户定义的方式)。

76.Fragrouter 是一款单向分段路由器,发送(接收)IP数据包都是从攻击者到Fragrouter,将数据包转换成分段数据流发给受害者。很多检测系统都不能重建一段被视为一个整体的网络数据(通过IP分段和TCP流重组),详情请见这篇文章(this classic paper)。Fragrouter可以帮助骇客在逃避检测后发起基于IP的攻击。它是Dug Song出品的NIDSbench套装中的一部分。Fragroute是Dug song出品的另一款和Fragrouter相似的工具。

77.一款多线程、支持插件的漏洞扫描器。X-Scan主要功能有全面支持NASL(Nessus攻击脚本语言:Nessus Attack Scripting Language)、检测服务类型、远程操作系统类型(版本)检测、弱用户名/密码匹配等等。最新版本可以在这里获取。请注意这是一个中文网站(原文为英文,所以原文作者提醒英文读者这是个中文网站)。

78.Libwhisker是一款Perl模板集用来测试HTTP。它的功能是测试HTTP服务器上是否存在许多已知的安全漏洞,特别是CGI漏洞。Whisker是一款基于libwhisker的扫描器,但是现在大家都趋向于使用Nikto,它也是基于libwhisker的。

79.类似于Netcat的工具,可以工作于许多协议之上,运行于文件、管道、设备(终端或调制解调器等等)、socket(Unix、IP4、IP6-raw、UDP、TCP)、Socks4客户端、代理服务器连接、或者SSL等等之间。它提供forking、logging和dumping,和不同模式的交互式处理通讯,以及更多其它选项。它可以作为TCP中继(单次触发:one-shot或者daemon(Internet中用于邮件收发的后台程序))、作为基于daemon的动态Sockes化(socksifier)、作为Unix平台上sockets的shell接口、作为IP6中继、将面向TCP的程序重定向成串行线路(Serial Line)程序、或者建立用来运行客户端或服务器带有网络连接的shell脚本相关安全环境(su和chroot)。

80.SARA是一款源于infamous SATAN扫描器的漏洞评估工具。此工具大约两个月更新一次,出品此工具的开源社区还维护着Nmap和Samba。

81.在网站上以服务形式发布, 所以QualysGuard没有开发、维护和升级漏洞管理软件或ad-hoc安全应用程序的负担。客户端可以安全的通过一个简单易用的网页访问QualysGuard。QualysGuard含有5000种以上的单一漏洞检查,一个基于推理的扫描引擎,而且漏洞知识库自动天天升级。

82.ClamAV是一款强大的注重邮件服务器附件扫描的反病毒扫描器。它含有一个小巧的可升级的多线程daemon、一个命令行扫描器和自动升级工具。Clam AntiVirus基于AntiVirus package发布的开源病毒库,您也可以将此病毒库应用于您自己的软件中,但是别忘了经常升级。

83.Cheops提供许多好用的图形化用户界面网络工具。它含有主机/网络发现功能,也就是主机操作系统检测。Cheops-ng用来探查主机上运行的服务。针对某些服务,cheops-ng可以探查到运行服务的应用程序是什么,以及程序的版本号。Cheops已经停止开发和维护,所以请最好使用cheops-ng。

84.Burp suite允许攻击者结合手工和自动技术去枚举、分析、攻击网页程序。这些不同的burp工具通过协同工作,有效的分享信息,支持以某种工具中的信息为基础供另一种工具使用从而发动攻击。

85.这款Windows平台上的暴力破解器通过字典猜测远程系统网络服务密码。它支持HTTP、POP3、FTP、SMB、TELNET、IMAP、NTP等等。不开放源码,UNIX平台上的类似软件有THC Hydra。

86.Unicornscan是一款通过尝试连接用户系统(User-land)分布式TCP/IP堆栈获得信息和关联关系的端口扫描器。它试图为研究人员提供一种可以刺激TCP/IP设备和网络并度量反馈的超级接口。它主要功能包括带有所有TCP变种标记的异步无状态TCP扫描、异步无状态TCP标志捕获、通过分析反馈信息获取主动/被动远程操作系统、应用程序、组件信息。它和Scanrand一样都是另类扫描器。

87.stunnel用来对远程客户端和本地机(可启动inetd的:inetd-startable)或远程服务器间的SSL加密进行封装。它可以在不修改任何代码的情况下,为一般的使用inetd daemon的POP2、POP3和IMAP服务器添加SSL功能。它通过使用OpenSSL或SSLeay库建立SSL连接。

88.Honeyd是一个可以在网络上创建虚拟主机的小型daemon。可以对此虚拟主机的服务和TCP进行配置,使其在网络中看起来是在运行某种操作系统。Honeyd可以使一台主机在局域网中模拟出多个地址以满足网络实验环境的要求。虚拟主机可以被ping通,也可以对它们进行路由跟踪。通过对配置文件进行设置可以使虚拟计算机模拟运行任何服务。也可以使用服务代理替代服务模拟。它的库有很多,所以编译和安装Honeyd比较难。

89.fping是一款类似ping(1)(ping(1)是通过ICMP(网络控制信息协议Internet Control Message Protocol)协议回复请求以检测主机是否存在)的程序。Fping与ping不同的地方在于,您可以在命令行中指定要ping的主机数量范围,也可以指定含有要ping的主机列表文件。与ping要等待某一主机连接超时或发回反馈信息不同,fping给一个主机发送完数据包后,马上给下一个主机发送数据包,实现多主机同时ping。如果某一主机ping通,则此主机将被打上标记,并从等待列表中移除,如果没ping通,说明主机无法到达,主机仍然留在等待列表中,等待后续操作。

90.BASE是一款基于PHP的可以搜索和实施安全事件的分析引擎,她的安全事件数据库来源于很多**检测系统、防火墙、网络检测工具生成的安全事件。它的功能包括一个查找生成器和搜索界面,用来搜索漏洞;一个数据包浏览器(解码器);还可以根据时间、传感器、信号、协议和IP地址等生成状态图。

91.Argus是一款固定模型的实时的流量监视器,用来跟踪和报告数据网络通讯流中所有事务的状态和性能。Argus为流量评估定制了一种数据格式,其中包括连通性、容量、请求、丢包、延迟和波动,这些就作为评估事务的元素。这种数据格式灵活易扩展,支持常用流量标识和度量,还可以获得指定的应用程序/协议的信息。

92.Wikto是一款检查网页服务器漏洞的工具。它和Nikto类似,但是添加了很多其它功能,例如一个整合了Google的后台发掘器。Wikto工作于MS ..NET环境下,下载此软件和源代码需要注册。

93.Sguil(按sgweel发音)是由network security analysts出品的网络安全分析工具。Sguil的主要组件就是一个Snort/barnyard实时事件显示界面。它还包含一些网络安全监控的辅助工具和事件驱动的**检测系统分析报告。

94.Scanrand是一款类似Unicornscan的无状态主机发现和端口扫描工具。它以降低可靠性来换取异常快的速度,还使用了加密技术防止黑客修改扫描结果。此工具是Dan Kaminsky出品的Paketto Keiretsu的一部分。

95.IP Filter是一款软件包,可以实现网络地址转换(network address translation)(NAT)或者防火墙服务的功能。它可以作为UNIX的一个核心模块,也可以不嵌入核心,强烈推荐将其作为UNIX的核心模块。安装和为系统文件打补丁要使用脚本。IP Filter内置于FreeBSD、NetBSD和Solaris中。OpenBSD可以使用Openbsd PF,Linux用户可以使用Netfilter。

96.Canvas是Aitel’s ImmunitySec出品的一款漏洞检测工具。它包含150个以上的漏洞,它比Core Impact便宜一些,但是它也价值数千美元。您也可以通过购买VisualSploit Plugin实现在图形界面上通过拖拽就可以生成漏洞。Canvas偶尔也会发现一些ODay漏洞。

97.VMware虚拟软件允许您在一个系统中虚拟运行另一个系统。这对于安全专家在多平台下测试代码和漏洞非常有用。它只运行在Windows和Linux平台上,但它可以虚拟运行几乎所有的x86操作系统。它对建立沙箱(sandboxes)也非常有用。在VMware虚拟系统上感染了恶意软件不会影响到宿主机器,可以通过加载快照文件恢复被感染了的虚拟系统。VMware不能创建虚拟系统的镜像文件。VMware最近刚刚宣布免费。另一款在Linux下颇受瞩目的虚拟平台软件是Xen。

98.现代网络广泛使用防火墙,导致传统路由跟踪工具发出的(ICMP应答(ICMP echo)或UDP)数据包都被过滤掉了,所以无法进行完整的路由跟踪。尽管如此,许多情况下,防火墙会准许反向(inbound)TCP数据包通过防火墙到达指定端口,这些端口是主机内防火墙背后的一些程序和外界连接用的。通过发送TCP SYN数据包来代替UDP或者ICMP应答数据包,tcptraceroute可以穿透大多数防火墙。

99.SAINT象Nessus、ISS Internet Scanner和Retina一样,也是一款商业漏洞评估工具。它以前是运行在UNIX系统之上的免费开源工具,但现在收费了。

100.OpenVPN是一款开源的SSL VPN工具包,它可以实现很多功能,包括远程登录、站对站VPN、WiFi安全、带有负载平衡的企业级远程登录解决方案、节点控制移交(failover)、严密的访问控制。OpenVPN运行于OSI 2层或3层安全网络,使用SSL/TLS工业标准协议,支持灵活的基于证书、智能卡、二元验证的客户端验证方法,允许在VPN虚拟接口上使用防火墙规则作为用户或指定用户组的访问控制策略。OpenVPN使用OpenSSL作为其首选加密库

101.OllyDbg是一款微软Windows平台上的32位汇编级的分析调试器。因其直接对二进制代码进行分析,所以在无法获得源代码的时候它非常有用。OllyDbg含有一个图形用户界面,它的高级代码分析器可以识别过程、循环、API调用、交换、表、常量和字符串,它可以加载运行时程序,支持多线程。OllyDbg可以免费下载,但不开源。

102.Helix是一款自定义版本的Knoppix自启动Linux光盘系统。Helix远不止是一张自启动光盘。除了光盘启动到自定义的Linux环境,还具有超强的硬件支持能力,包含许多应付各种问题的软件。Helix尽量少的接触主机软硬资源。Helix不自动加载交换(swap)空间,不自动加载其它任何外围设备。Helix还可以自动加载Windows,以应对意外情况。

103.Bastille使操作系统固若金汤,减少系统遭受危险的可能,增加系统的安全性。Bastille还可以评估系统当前的安全性,周期性的报告每一项安全设置及其工作情况。Bastille当前支持Red Hat(Fedora Core、Enterprise和Numbered/Classic版本)、SUSE、Debian、Gentoo和Mandrake这些Linux版本,还有HP-UX和Mac OS X。Bastille旨在使系统用户和管理员了解如何加固系统。在其默认的最坚固模式下,它不断的询问用户问题,并对这些问题加以解释,根据用户对问题不同的回答选择不同的应对策略。在其评估模式下,它会生成一份报告旨在告诉用户有哪些安全设置可用,同时也提示用户哪些设置被加固了。

104.Acunetix WVS自动检查您的网页程序漏洞,例如SQL注入、跨网站脚本和验证页面弱密码破解。Acunetix WVS有着非常友好的用户界面,还可以生成个性化的网站安全评估报告。

105.TrueCrypt是一款非常出色的开源磁盘加密系统。用户可以加密整个文件系统,它可以实时加密/解密而不需要用户干涉,只要事先输入密码。非常巧妙的hidden volume特性允许您对特别敏感的内容进行第二层加密来隐藏它的存在。所以就算加密系统的密码暴露,黑客也不知道还有隐藏内容存在。

106.AppScan按照应用程序开发生命周期进行安全测试,早在开发阶段就进行单元测试和安全保证。Appscan能够扫描多种常见漏洞,例如跨网站脚本、HTTP应答切开、参数篡改、隐藏值篡改、后门/调试选项和缓冲区溢出等等。

107.N-Stealth是一款网页服务器安全扫描器。它比Whisker/libwhisker和Nikto这些免费的网页扫描器升级得更频繁,但是它网站上声称的可以扫描30000种漏洞(30000 vulnerabilities and exploits)和每天添加数十种漏洞(Dozens of vulnerability checks are added every day)的说法是很值得怀疑的。象Nessus、ISS Internet Scanner、Retina、SAINT和Sara这些防**工具都含有网页扫描组件,它们都很难做到每日更新。N-Stealth运行于Windows平台之上,且不开源。

108.Microsoft Baseline Security Analyzer(MBSA)是一款简单易用的工具,帮助IT专业人员检测其小型和中型商业应用的安全性,将用户系统与微软安全建议(Microsoft security recommendations)进行比对,并给出特定的建议指导。通过与Windows内置的Windows自动升级代理器(Windows Update Agent)和微软自动升级基础架构(Microsoft Update infrastructure)的协作,MBSA能够保证和其它微软管理产品的数据保持一致,它们包括微软自动升级(Microsoft Update(MU))、Windows服务器自动升级服务(Windows Server Update Services(WSUS))、系统管理服务器(Systems Management Server(SMS))和微软运行管理器(Microsoft Operations Manager(MOM))。MBSA平均每周要扫描3百万台电脑。1.老男孩顶级架构师培训视频教程,架构师全套教程下载

2.苹果怎么用vpnimage.png

3.课程目录

4.lesson01-Svn版本管理与代码上线架构方案

5.lesson02电脑版vpn下载-openv-p-n架构方案及实现指南

6.lesson03-ldap统一认证架构方案及实现指南

7.lesson04-openvpn架构方案及实现指南后续

8.lesson05-heartbeat高可用

9.lesson06-drbd数据同步工具

10.lesson07-NFS存储高可用及10T大数据迁移实战

11.lesson08-存储集群高可用方案及架构思想拓 vpn代理软件展

12.lesson09-Mysql数据库高可用实战

13.lesson10-haproxy负载均衡实战

14.lesson11-haproxy负载均衡实战02续-www

15.lesson12-Java应用服务器实战

16.lesson13-JAVAJVM调优

17.lesson14-dns与智能dns服务实战应用

18.lesson15-SaltStack批量管理工具实战基

19.lesson16-puppet批量管理工具实战----09期

20.lesson17-squid代理与缓存实战----

21.lesson18-mfs分布式文件系统实战

22.lesson19-SaltStack批量管理工具实战深入

23.lesson20-kvm虚拟化实战

24.lesson21-glusterfs分布式云存储集群实战

25.lesson22-nosql之redis持久化存储

26.lesson23-消息队列中间件消息队列

27.lesson24-日志审计-项目负责-用户权限管理-进程权限综合方案

28.lesson25-门户网站核心架构深度讲解

29.详细目录:

30. 小火箭vpn windows   lesson01-Svn版本管理与代码上线架构方案

31.      01-第一天课前思想讲解_rec_(new)_rec.exe

32.      02-如何成为高级架构师_rec_(new)_rec.exe

33.      03-linux系统架构师的职责和能力要求_rec_(new)_rec.exe

34.      04-IDC服务器业务变更的内容讲解_rec_(new)_rec.exe

35.      05-版本管理种类与Svn工具介绍_rec_(new)_rec.exe

36.      06-Svn工具与Git工具的简单区别介绍_rec_(new)_rec.exe

37.      08-Svn服务的运行模式与访问方式_rec_(new)_rec.exe

38.      09-Svn客户端访问服务器的方式_rec_(new)_rec.exe

39.      10-Svn档案数据库的格式说明_rec_(new)_rec.exe

40.      11-Svn版本系统逻辑架构图原理讲解_rec_(new)_rec.exe

41.      12-Svn版本系统使用的工作流程与优缺点介绍_rec_(new)_rec.exe

42.      13-准备并安装部署Svn版本系统_rec_(new)_rec.exe

43.      14-配置启动SVN服务并检查启动结果_rec_(new)_rec.exe

44.      15-创建一个Svn版本库及版本库目录结构介绍_rec_(new)_rec.exe

45.      16-修改创建的Svn版本库配置配置文件_rec_(new)_rec.exe

46.      17-为Svn版本库创建用户并授权访问指定项目版本库_rec_rec.exe

47.      18-win32下安装Svn客户端访问Svn版本库服务_rec_rec.exe

48.      19-win32下Svn客户端使用简单介绍_rec_rec.exe

49.      20-linux下Svn客户端命令的使用介绍01_rec_rec.exe

50.      21-linux下Svn客户端命令的使用介绍02_rec_rec.exe

51.      22-linux下Svn客户端命令的使用介绍03_rec_rec.exe

52.      23-Svn版本系统中钩子介绍_rec_rec.exe

53.      24-Svn版本系统中钩子种类及功能介绍_rec_rec.exe

54.      25-Svn钩子的生产应用场景及同步案例实践_rec_rec.exe

55.      26-Svn钩子的同步案例逻辑架构讲解及钩子注意事项_rec_rec.exe

56.      27-利用Svn钩子功能做Svn上传文件各类检查控制_rec_rec.exe

57.      28-互联网小型企业代码上线发布架构方案_rec_rec.exe

58.      29-互联网中型企业代码上线发布架构方案_rec_rec.exe

59.      30-互联网大型企业代码上线发布架构方案01_rec_rec.exe

60.      31-互联网大型企业代码上线发布架构方案02_rec_rec.exe

61.      32-有关PHP代码大型集群架构代码发布方案特别说明_rec_rec.exe

62.      33-有关java代码大型集群架构代码发布方案特别说明_rec_rec.exe

63.      34-sina及小米等门户企业代码发布案例介绍_rec_rec.exe

64.      35-大型集群架构代码发布方案注意事项_rec_rec.exe

65.      36-自动化部署及代码发布管理平台_rec_rec.exe

66.      37-开发及运维人员业务变更管理方案思路_rec_rec.exe

67.      38-代码发布上线制度企业实际案例介绍_rec_rec.exe

68.      39-门户淘宝网软件及代码发布架构方案案例介绍_rec_rec.exe

69.      40-企业代码发布制度流程等内容案例展示_rec_rec.exe

70.      42-企业代码发布架构方案总结与课后作业_rec_rec.exe

71.    lesson02-openv-p-n架构方案及实现指南

72.      01--课前企业代码发布实际案例分享讲解-_rec_(new)_rec.exe

73.      02--课前企业代码发布实际案例分享讲解-_rec_(new)_rec.exe

74.      03-课前思想必看_rec_(new)_rec.exe

75.      04-V-P-N概述介绍与图解_rec_(new)_rec.exe

76.      05-V-P-N的作用介绍与图解_rec_(new)_rec.exe

77.      06-V-P-N的企业应用分类介绍与图解1_rec_(new)_rec.exe

78.      07-V-P-N的企业应用分类介绍与图解2_rec_(new)_rec.exe

79.      08-常见隧道协议介绍-PPTP_rec_(new)_rec.exe

80.      09-常见隧道协议介绍-L2TP_rec_(new)_rec.exe

81.      10-常见隧道协议介绍-IPSEC-SSLVPN_rec_(new)_rec.exe

82.      11-实现vpn功能常见开源产品及实际应用特点介绍_rec_(new)_rec.exe

83.      12-根据企业生产场景需求选择vpn产品及方案建议_rec_(new)_rec.exe

84.      13-openvpn开源vpn产品介绍_rec_(new)_rec.exe

85.      14-openvpn依赖的SSL与TLS协议介绍_rec_(new)_rec.exe

86.      15-openvpn的加密通信原理过程_rec_(new)_rec.exe

87.      16-openvpn的多种身份验证方式介绍_rec_(new)_rec.exe

88.      17-openvpn通信原理与企业应用场景_rec_(new)_rec.exe

89.      18-企业vpn远程拨号访问场景逻辑图_rec_(new)_rec.exe

90.      19-企业或IDC机房网络互联场景逻辑图_rec_(new)_rec.exe

91.      20-openvpn实战部署-环境需求及实际搭建_rec_(new)_rec.exe

92.      21-openvpn实战对应企业集群位置讲解_rec_(new)_rec.exe

93.      22-openvpn对应的操作系统安装包及版本介绍_rec_(new)_rec.exe

94.      23-openvpn基础环境及依赖安装_rec_(new)_rec.exe

95.      24-选择openvpn版本并安装软件_rec_(new)_rec.exe

96.      25-介绍与实际生成服务端CA证书_rec_rec.exe

97.      26-生成vpn服务器端证书和密钥文件_rec_rec.exe

98.      27-生成vpn客户端证书和密钥文件方案1_rec_rec.exe

99.      28-生成vpn密钥协议交换文件_rec_rec.exe

100.      29-详解服务器及客户端的证书各文件用途_rec_rec.exe

101.      30-详解openvpn服务端重要配置参数并实践 _rec_rec.exe

102.      31-配置调试vpn并准备运行vpn服务_rec_rec.exe

103.      32-启动服务端的VPN服务并检查日志_rec_rec.exe

104.      33-配置常规方式启动openvpn服务_rec_rec.exe

105.      34-安装win32 openvpn客户端_rec_rec.exe

106.      35-配置vpn客户端并启动远程拨号_rec_rec.exe

107.      36-通过tcpdump逐层抓包实践理解路由方式VPN的运行原理_rec_rec.exe

108.      37-验证VPN的连通性并对比客户端路由信息变化_rec_rec.exe

109.      38-通过tcpdump逐层抓包实践理解NAT方式VPN方案的运行原理_rec_rec.exe

110.      39-利用防火墙脚本实现NAT方式的防火墙控制策略_rec_rec.exe

111.      40-NATVPN架构适合应用场景分析及与路由架构方式区别_rec_rec.exe

112.      41-企业openvpn服务维护常见问题-增加多个证书_rec_rec.exe

113.      42-如何规范的发用户给公司需求的员工_rec_rec.exe

114.      43-企业openvpn服务维护常见问题-撤销单个证书_rec_rec.exe

115.      44-企业openvpn服务维护常见问题-撤销多个证书_rec_rec.exe

116.      45-v-p-n服务小结与安装linux下vpn客户端_rec_rec.exe

117.      46-启动openvpn client服务并检查_rec_rec.exe

118.      47-linux v-p-n客户端架构的企业应用场景01_rec_rec.exe

119.      48-linux v-p-n客户端架构的企业应用场景02_rec_rec.exe

120.      49-多个IDC机房利用VPN互联架构方案_rec_rec.exe

121.      50-多个IDC机房利用VPN互联架构方案实现案例介绍_rec_rec.exe

122.      51-多个IDC机房利用VPN互联架构方案应用场景_rec_rec.exe

123.      52-openvpn服务阶段性总结及课后作业_rec_rec.exe

124.      53-解答学生openvpn架构技术疑问_rec_rec.exe

125.    lesson03-ldap统一认证架构方案及实现指南

126.      01-课后作业openvpn跨机房互联分享讲解_rec_(new)_rec.mkv

127.      02-第三节课前思想_rec_(new)_rec.mkv

128.      03-目录服务简单介绍_rec_(new)_rec.mkv

129.      04-目录介绍深入_rec_(new)_rec.mkv

130.      05-ldap知识介绍_rec_(new)_rec.mkv

131.      06-X.500标准与协议介绍_rec_(new)_rec.mkv

132.      07-LDAP与X.500的相同点_rec_(new)_rec.mkv

133.      08-LDAP与X.500的差别_rec_(new)_rec.mkv

134.      09-LDAP中的常用名词缩写及含义_rec_rec.mkv

135.      10-LDAP目录服务的特点_rec_rec.mkv

136.      11-LDAP的目录结构_rec_rec.mkv

137.      12-ldap目录结构的相关术语_rec_rec.mkv

138.      13-存储在目录当中的信息介绍_rec_rec.mkv

139.      14-ldap目录逻辑结构原理介绍_rec_rec.mkv

140.      15-ldap的访问及授权访问_rec_rec.mkv

141.      16-ldap目录数据文件内容直观讲解与树形结构_rec_rec.mkv

142.      17-LDAP是怎样工作的_rec_rec.mkv

143.      18-LDAP重要配置模式介绍01_rec_rec.mkv

144.      19-LDAP重要配置模式介绍02_rec_rec.mkv

145.      20-LDAP服务的企业应用领域与开源软件_rec_rec.mkv

146.      21-OPENLDAP环境搭建准备及生产情况介绍_rec_rec.mkv

147.      22-ldap系统配置基本依赖准备_rec_rec.mkv

148.      23-开始实战安装ldap软件服务_rec_rec.mkv

149.      24-centos64 ldap安装故障问题解决_rec_rec.mkv

150.      25-结合官方文档讲解与实战配置ldap_rec_rec.mkv

151.      26-配置rsyslog记录ldap服务日志_rec_rec.mkv

152.      27-实战配置LDAP数据库并授权_rec_rec.mkv

153.      28-对比编译安装启动参数并启动ldap服务_rec_rec.mkv

154.      29-ldap启动故障与查找实战解决01_rec_rec.mkv

155.      30-ldap启动故障与查找实战解决02_rec_rec.mkv

156.      31-介绍导入ldap数据的4种方案介绍_rec_rec.mkv

157.      32-安装及配置ldap管理ldap服务器_rec_rec.mkv

158.      33-通过ldap web客户端实战管理ldap_rec_rec.mkv

159.      34-生成初始导入的数据及备份LDAP数据_rec_rec.mkv

160.      35-介绍并启用svn服务器的SASL验证机制实践_rec_(new)_rec.mkv

161.      36-配置SASL ldap验证机制实践_rec_(new)_rec.mkv

162.      37-配置SASL ldap验证机制实践_rec_(new)_rec.mkv

163.      38-配置SASL ldap验证机制实践过程小结_rec_(new)_rec.mkv

164.      39-开发脚本一键安装svn服务并测试成功_rec_(new)_rec.mkv

165.      40-配置并实战完整svn通过ldap验证并且授权_rec_(new)_rec.mkv

166.      41-ldap结合svn验证的授权问题说明_rec_(new)_rec.mkv

167.      42-ldap课程课后作业说明_rec_(new)_rec.mkv

168.      43-企业代码发布案例-人人网游戏更新流程分享讲解_rec_(new)_rec.mkv

169.    lesson04-openvpn架构方案及实现指南后续

170.      01-课前samba通过ldap用户验证分享讲解_rec_(new)_rec.mkv

171.      02-课前openvpn通过ldap用户验证分享讲解_rec_(new)_rec.mkv

172.      03-课前思想-如何成为优秀的架构师_rec_(new)_rec.mkv

173.      04-openvpn跨机房互联实践环境准备_rec_(new)_rec.mkv

174.      05-确定vpn互联目标并抓包分析环境问题_rec_(new)_rec.mkv

175.      06-模拟故障并逐步分析故障问题原因_rec_(new)_rec.mkv

176.      07-实战思想提升讲解及真正vpn实战部署_rec_(new)_rec.mkv

177.      08-v-p-n不做网关情形的企业多机房vpn互联_rec_(new)_rec.mkv

178.      09-实现企业多机房vpn互联条件流程总结_rec_(new)_rec.mkv

179.      10-openvpn翻墙架构解决方案需求分析_rec_(new)_rec.mkv

180.      11-openvpn翻墙架构解决方案配置说明_rec_rec.mkv

181.      12-完成openvpn通过服务器代理翻墙实战_rec_rec.mkv

182.      13-课间临时想和大家分享的_rec_rec.mkv

183.      14-openvpn负载均衡方案一说明及实战手把手演示_rec_rec.mkv

184.      15-openvpn负载均衡方案一特点及应用场景总结_rec_rec.mkv

185.      16-openvpn负载均衡方案二说明及实战手把手演示_rec_rec.mkv

186.      17-openvpn负载均衡方案二特点及应用场景总结_rec_rec.mkv

187.      18-openvpn跨机房互联负载均衡方案延伸_rec_rec.mkv

188.      19-openvpn负载均衡方案三思路及原理讲解_rec_rec.mkv

189.      20-openvpn负载均衡方案三之DNS轮询服务的配置实战_rec_rec.mkv

190.      21-openvpn负载均衡方案三实战手把手演示_rec_rec.mkv

191.      22-openvpn负载均衡方案三小结及应用场景拓展讲解_rec_rec.mkv

192.      23-openvpn负载均衡方案四_rec_rec.mkv

193.      24-openvpn的8种身份验证方案介绍_rec_rec.mkv

194.      25-openvpn本地身份验证实战_rec_rec.mkv

195.      26-openvpn本地身份验证实战故障问题_rec_rec.mkv

196.      27-openvpn本地身份验证实战故障排查_rec_rec.mkv

197.      28-openvpn本地身份验证实战故障解决_rec_rec.mkv

198.      29-openvpn本地身份验证实战故障解决及脚本内容说明_rec_rec.mkv

199.      30-openvpn本地身份验证原理画图讲解_rec_rec.mkv

200.      31-openvpn数据库身份验证思路原理讲解_rec_rec.mkv

201.      32-openvpn通过ldap验证2种方案及环境准备_rec_rec.mkv

202.      33-准备LDAP环境并测试openvpn验证脚本_rec_rec.mkv

203.      34-开发脚本实现openvpn通过ldap验证并授权说明_rec_rec.mkv

204.      35-实现openvpn通过ldap验证的最后测试准备_rec_rec.mkv

205.      36-openvpn通过ldap验证实战实现及总结_rec_rec.mkv

206.      37-员工入职账号开通流程说明_rec_rec.mkv

207.      38-开发脚本实现vpn自动化授权账号_rec_rec.mkv

208.      39-openv通过ldap验证故障排错说明_rec_rec.mkv

209.    lesson05-heartbeat高可用

210.      01-heartbeat介绍与作用_rec_rec.mkv

211.      02-Heartbeat的工作原理与服务切换条件_rec_rec.mkv

212.      03-Heartbeat心跳连接介绍_rec_rec.mkv

213.      04-裂脑的概念讲解_rec_rec.mkv

214.      05-裂脑发生的多种原因介绍_rec_rec.mkv

215.      06-防止裂脑发生的8种秘籍01_rec_rec.mkv

216.      07-防止裂脑发生的8种秘籍02_rec_rec.mkv

217.      08-防止裂脑发生的8种秘籍03_rec_rec.mkv

218.      09-有关fence设备和仲裁机制说明_rec_rec.mkv

219.      10-heartbeat的消息类型介绍_rec_rec.mkv

220.      11-heartbeat的IP接管和故障转移原理_rec_(new)_rec.mkv

221.      12-高可用软件的IP配置管理技术讲解_rec_(new)_rec.mkv

222.      13-heartbeat的默认路径配置介绍_rec_(new)_rec.mkv

223.      14-heartbeat的软件版本分支说明_rec_(new)_rec.mkv

224.      15-heartbeat企业应用场景介绍_rec_(new)_rec.mkv

225.      16-部署heartbeat高可用业务需求描述_rec_(new)_rec.mkv

226.      17-模拟服务器准备及IP配置说明_rec_rec.mkv

227.      18-配置主机名及服务器hosts文件解析_rec_rec.mkv

228.      19-配置服务器间心跳的连接_rec_rec.mkv

229.      20-安装heartbeat软件及配置文件讲解_rec_rec.mkv

230.      21-heartbeat的主要配置文件参数讲解_rec_rec.mkv

231.      22-实战配置heartbeat配置文件_rec_rec.mkv

232.      23-启动heartbeat服务并查看配置的VIP_rec_rec.mkv

233.      24-发生裂脑故障及根据前面原理排查思路_rec_rec.mkv

234.      25-通过heartbeat日志分析接管过程_rec_rec.mkv

235.      26-heartbeat实现web服务高可用实战案例1_rec_rec.mkv

236.      27-heartbeat实现web服务高可用实战案例1原理_rec_rec.mkv

237.      28-heartbeat实现web服务高可用案例2_rec_rec.mkv

238.      29-有关heartbeat调用资源的生产场景应用_rec_rec.mkv

239.      30-heartbeat高可用案例拓展_rec_rec.mkv

240.      31-heartbeat和keepalived的应用场景区别_rec_rec.mkv

241.      32-heartbeat服务生产环境下维护要点_rec_rec.mkv

242.      33-heartbeat服务生产环境维护FAQ_rec_rec.mkv

243.    lesson06-drbd数据同步工具

244.      01-drbd服务介绍_rec_(new)_rec.mkv

245.      02-drbd的工作原理介绍_rec_(new)_rec.mkv

246.      03-drbd的工作原理图_rec_(new)_rec.mkv

247.      04-drbd的复制协议与应用模式_rec_(new)_rec.mkv

248.      05-drbd的企业应用场景介绍_rec_(new)_rec.mkv

249.      06-常见运维同步工具介绍_rec_(new)_rec.mkv

250.      07-drbd的部署及ip配置规划_rec_(new)_rec.mkv

251.      08-drbd软件的安装配置准备_rec_(new)_rec.mkv

252.      09-创建同步的分区实践drbd_rec_(new)_rec.mkv

253.      10-drbd环境分区说明及分区命令_rec_(new)_rec.mkv

254.      11-实际安装drbd软件实战_rec_(new)_rec.mkv

255.      12-drbd相关配置列表说明_rec_(new)_rec.mkv

256.      13-配置drbd加载到内核模块_rec_(new)_rec.mkv

257.      14-drbd配置文件参数讲解及实际配置_rec_(new)_rec.mkv

258.      15-drbd服务初始化数据故障机排查过程_rec_(new)_rec.mkv

259.      16-启动drbd并配置主从同步数据_rec_rec.mkv

260.      17-drbd服务的常见故障及排查方法_rec_rec.mkv

261.      18-挂载测试数据库同步及查看备节点数据_rec_rec.mkv

262.    lesson07-NFS存储高可用及10T大数据迁移实战

263.      01-获得RHCA证书同学分享心得_rec_rec.mkv

264.      02-NFS存储高可用需求与架构讲解_rec_rec.mkv

265.      03-大规模集群架构中NFS存储的位置和架构_rec_rec.mkv

266.      04-NFS存储实战模拟环境描述_rec_rec.mkv

267.      05-NFS存储生产场景配置及网络地址规划_rec_rec.mkv

268.      06-NFS存储实施正式环境准备_rec_rec.mkv

269.      07-快速安装Centos6.4下heartbeat并配置启动_rec_rec.mkv

270.      08-快速安装Centos6.4下drbd服务准备01_rec_rec.mkv

271.      09-快速安装Centos6.4下drbd服务实战02_rec_rec.mkv

272.      10-初始化并启动drbd服务实战03_rec_rec.mkv

273.      11-有关drbd配置内部外部元数据存储模式说明_rec_rec.mkv

274.      12-测试drbd服务同步效果_rec_rec.mkv

275.      13-配合heartbeat调试drbd服务配置原理详解说明_rec_rec.mkv

276.      14-详细分析heartbeat启动资源流程_rec_rec.mkv

277.      15-切换前判断heartbeat配合drbd成功配置启动3要素_rec_rec.mkv

278.      16-切换前根据软件服务日志分析主备节点启动过程01_rec_rec.mkv

279.      16-切换前根据软件服务日志分析主备节点启动过程02_rec_rec.mkv

280.      17-测试主节点恢复后的整体接管情况_rec_rec.mkv

281.      18-切换后heartbeat-drbd裂脑后调试解决故障_rec_rec.mkv

282.      19-根据高可用启动流程原理手工排错实战_rec_rec.mkv

283.      20-Nfs服务安装配置说明与安装实战_rec_rec.mkv

284.      21-安装Nfs并配置客户端挂载_rec_rec.mkv

285.      22-通过手工测试配置文件方式NFS的高可用切换 _rec_rec.mkv

286.      23-网上流行的NFS的高可用切换方案实践_rec_rec.mkv

287.      24-老男孩创新的NFS的高可用切换方案说明及实战_rec_rec.mkv

288.      25-老男孩创新的NFS的高可用全自动切换实现_rec_rec.mkv

289.      26-NFS多主多从高可用集群读写分离的实现_rec_rec.mkv

290.      27-拓展存储高可用的更多思路方案_rec_rec.mkv

291.      28-通过NFS高可用实现举一反三实现其他业务高可用说明_rec_rec.mkv

292.      29-10T以上小文件大数据异地迁移企业级实战案例01_rec_rec.mkv

293.      30-10T以上小文件大数据异地迁移企业级实战案例02_rec_rec.mkv

294.      31-课后作业-实现双主多从MySQL高可用全自动切换_rec_rec.mkv

295.    lesson08-存储集群高可用方案及架构思想拓展

296.      01-大规模集群存储架构重要思想讲解_rec_rec.mkv

297.      02-企业级存储架构之中小规模集群架构解决方案_rec_rec.mkv

298.      03-企业级存储架构之解决NFS单点及NFS并发性能_rec_rec.mkv

299.      04-企业级存储架构之解决NFS单点-并发性能-存储容量问题_rec_rec.mkv

300.      05-企业级存储架构之NOSQL-分布式方案_rec_rec.mkv

301.      06-企业级存储架构之赶集网存储系统架构_rec_rec.mkv

302.      07-有关抓重点学习的思想_rec_rec.mkv

303.    lesson09-mysql数据库高可用实战

304.      01-重要课前思想_rec_rec.mkv

305.      02-MySQL高可用需求与架构讲解_rec_rec.mkv

306.      03-大规模集群架构中MySQL高可用的位置和架构_rec_rec.mkv

307.      04-MySQL高可用实战模拟环境描述_rec_rec.mkv

308.      05-MySQL高可用生产场景配置及网络地址规划_rec_rec.mkv

309.      06-MySQL高可用实施正式环境准备与裂脑注意_rec_rec.mkv

310.      07-快速安装双机Centos6.4下heartbeat并配置启动_rec_rec.mkv

311.      08-快速安装双机Centos6.4下drbd服务准备01_rec_rec.mkv

312.      09-快速安装双机Centos6.4下drbd服务实战02_rec_rec.mkv

313.      10-详解drbd服务状态信息细节_rec_rec.mkv

314.      11-启动服务测试DRBD实际同步情况_rec_rec.mkv

315.      12--配合heartbeat调试drbd服务配置_rec_rec.mkv

316.      13-MySQL服务安装实战安装过程讲解_rec_rec.mkv

317.      14-一键安装Mysql多实例实战讲解与演示_rec_rec.mkv

318.      15-通过手工测试MySQL的高可用切换_rec_rec.mkv

319.      16-MySQL双主高可用自动切换实战实现_rec_rec.mkv

320.      17-有关MySQL双主高可用my.cnf的配置注意事项讲解_rec_rec.mkv

321.      18-MySQL高可用切换的重要思想原理及故障排除思想、_rec_rec.mkv

322.      19-MySQL主从同步一键安装脚本实战_rec_rec.mkv

323.      20-MySQL多主多从高可用集群自动切换实现_rec_rec.mkv

324.      21-有关MySQL高可用注意及常见故障讲解_rec_rec.mkv

325.      22-MySQL集群及高可用的更多思路方案引子_rec_rec.mkv

326.      23-常见MySQL集群高可用架构讲座01_rec_rec.mkv

327.      24-常见MySQL集群高可用架构讲座02_rec_rec.mkv

328.      25-常见MySQL集群高可用架构讲座03_rec_rec.mkv

329.      26-常见MySQL集群高可用架构讲座04_rec_rec.mkv

330.      27-常见MySQL集群高可用架构讲座05_rec_rec.mkv

331.      28-门户分布式数据库架构案例分享01_rec_rec.mkv

332.      29-门户分布式数据库架构案例分享02_rec_rec.mkv

333.      30-门户分布式数据库架构案例分享03_rec_rec.mkv

334.      31-门户分布式数据库架构案例分享04_rec_rec.mkv

335.      32-门户分布式数据库架构案例分享05_rec_rec.mkv

336.    lesson10-haproxy负载均衡实战

337.      01-haproxy负载均衡服务介绍_rec_rec.mkv

338.      02-haproxy4层应用架构说明_rec_rec.mkv

339.      03-haproxy7层应用架构说明_rec_rec.mkv

340.      04-haproxy生产环境实战模拟实施准备_rec_rec.mkv

341.      05-haproxy安装手册说明及实际安装_rec_rec.mkv

342.      06-配置haproxy内核参数_rec_rec.mkv

343.      07-调整haproxy目录规范及讲解配置文件框架_rec_rec.mkv

344.      08-haproxy的常用配置参数讲解_rec_rec.mkv

345.      09-实战配置haproxy tcp模式负载均衡并测试_rec_rec.mkv

346.      10-开发实现启动haproxy脚本_rec_rec.mkv

347.      11-利用rsyslog配置haproxy记录日志功能_rec_rec.mkv

348.      12-查看haproxy日志排查故障问题_rec_rec.mkv

349.      13-实战配置haproxy http模式负载均衡并测试_rec_rec.mkv

350.      14-haproxy多进程状态页面明及负载均衡分发测试_rec_rec.mkv

351.      15-有关Centos6负载分发RS请求不均衡的说明_rec_rec.mkv

352.    lesson11-haproxy负载均衡实战02续-www

353.      16-课前思想-数据和7-24网站运行_rec_rec.mkv

354.      17-haproxy测试轮询算法分配_rec_rec.mkv

355.      18-测试停掉rs后的haproxy健康检查功能_rec_rec.mkv

356.      19-基于tcp端口的haproxy健康检查_rec_rec.mkv

357.      20-基于HTTP直接IP URL方式的健康检查_rec_rec.mkv

358.      21-基于HTTP直接IP URL方式的健康检查实战_rec_rec.mkv

359.      22-健康检查官方option httpchk说明_rec_rec.mkv

360.      23-基于具体业务域名的URL健康检查说明及实战_rec_rec.mkv

361.      24-其他服务的健康检查(ldap-mysql-smtp_rec_rec.mkv

362.      25-企业生产环境如何正确配置健康检查的参数项_rec_rec.mkv

363.      26-企业生产环境如何正确选择健康检查方案_rec_rec.mkv

364.      27-haproxy自身高可用功能说明及实战01_rec_rec.mkv

365.      28-haproxy自身高可用功能说明及实战02_rec_rec.mkv

366.      29-实现让haproxy下RS记录客户真实IP_rec_rec.mkv

367.      30-快速部署第二台haproxy负载均衡服务_rec_rec.mkv

368.      31-调试heartbeat配合调度haproxy负载均衡服务_rec_rec.mkv

369.      32-解决备节点haproxy负载均衡启动报错_rec_rec.mkv

370.      33-测试heartbeat加haproxy高可用实现效果_rec_rec.mkv

371.      34-生产环境转发及防火墙iptables配置建议_rec_rec.mkv

372.      35-haproxy多业务多VIP的配置实战_rec_rec.mkv

373.      36-heartbeat与haproxy配合生产场景维护经验谈_rec_rec.mkv

374.      37-haproxy基于L7的acl规则说明及实战01_rec_rec.mkv

375.      38-对比nginx代理讲解haproxy基于L7的acl规则02_rec_rec.mkv

376.      39-实现haproxy基于L7的301跳转配置_rec_rec.mkv

377.      40-实现haproxy基于L7的URL动静分离配置实战_rec_rec.mkv

378.      41-实现haproxy基于文件扩展名做7层跳转_rec_rec.mkv

379.      42-实现haproxy基于user_agent做7层跳转原理及实战_rec_rec.mkv

380.      43-实现haproxy基于来源端口和IP的访问控制实战_rec_rec.mkv

381.      44-学会自学之查看acl官方文档_rec_rec.mkv

382.      45-haproxy错误页面跳转优雅显示实践范例_rec_rec.mkv

383.      46-生产环境优化haproxy应用代理积及故障处理_rec_rec.mkv

384.      47-门户网站京东-蓝讯的haproxy生产案例讲解_rec_rec.mkv

385.      48-haproxy负载均衡的算法介绍_rec_rec.mkv

386.    lesson12-java应用服务器实战

387.      01-就业分享-14K入职_rec_rec.mkv

388.      02-haproxy负载均衡平滑上线实战方案_rec_rec.mkv

389.      03-为什么要讲resin服务_rec_rec.mkv

390.      04-Java语言介绍-特点及运行原理_rec_rec.mkv

391.      05-java和php的应用对比_rec_rec.mkv

392.      06-java应用服务器介绍_rec_rec.mkv

393.      07-resin产生的背景_rec_rec.mkv

394.      08-resin软件版本介绍_rec_rec.mkv

395.      09-resin的运行环境_rec_rec.mkv

396.      10-安装JAVA JDK环境_rec_rec.mkv

397.      11-设置java环境变量_rec_rec.mkv

398.      12-开始安装resin服务_rec_rec.mkv

399.      13-resin配置文件说明及修改_rec_rec.mkv

400.      14-配置resin启动文件启动JAVA服务_rec_rec.mkv

401.      15-有关java服务定时任务无法执行变量问题案例_rec_rec.mkv

402.      16-配置resin开机自启动说明_rec_rec.mkv

403.      17-启动resin服务异常解决_rec_rec.mkv

404.      18-整合apache和resin的原因及实战操作_rec_rec.mkv

405.      19-在apache中配置通过resin解析java程序_rec_rec.mkv

406.      20-在apache中配置虚拟主机转发resin解析_rec_rec.mkv

407.      21-在apache中配置多个虚拟主机实现不同resin解析_rec_rec.mkv

408.      22-调整resin配置支持多vhost主机_rec_rec.mkv

409.      23-resin配置支持多vhost主机配置对应关系_rec_rec.mkv

410.      24-resin支持多vhost主机图解说明_rec_rec.mkv

411.      25-为resin配置别名及错误页面优雅显示_rec_rec.mkv

412.      26-为resin配置状态信息显示页面_rec_rec.mkv

413.      27-独立resin web服务与整合企业里如何选用_rec_rec.mkv

414.      28-为resin配置管理页面_rec_rec.mkv

415.      29-为resin配置日志相关功能_rec_rec.mkv

416.      30-企业生产场景resin JVM参数生产案例配置_rec_rec.mkv

417.      31-整合nginx与resin集群功能说明_rec_rec.mkv

418.      32-resin服务参数调优介绍_rec_rec.mkv

419.      33-课后作业-实现resin4和tomcat7的部署_rec_rec.mkv

420.    lesson13-JAVAJVM调优

421.      001-JVM调优基础_rec_rec.mkv

422.      002-JVM调优之垃圾回收_rec_rec.mkv

423.      003-JVM调优-JVM和容器参数的关系_rec_rec.mkv

424.      004-JVM调优之垃圾回收与处理_rec_rec.mkv

425.      005-JVM调优之常见配置_rec_rec.mkv

426.      006-JVM调优之常见配置案例_rec_rec.mkv

427.      007-JVM调优之小结_rec_rec.mkv

428.    lesson14-dns与智能dns服务实战应用

429.      01-02暂缺---不影响继续学.txt

430.      03_rec_rec.mkv

431.      04_rec_rec.mkv

432.      05_rec_rec.mkv

433.      06_rec_rec.mkv

434.      07_rec_rec.mkv

435.      08_rec_rec.mkv

436.      09_rec_rec.mkv

437.      10_rec_rec.mkv

438.      11_rec_rec.mkv

439.    lesson15-SaltStack批量管理工具实战基

440.      001-SaltStack介绍-优势-安装_rec_rec.mkv

441.      002-SaltStack客户机服务端安装_rec_rec.mkv

442.      003-SaltStack实战案例配置_rec_rec.mkv

443.      004-配置通过数据库接收SaltStack批量管理日志01_rec_rec.mkv

444.      005-配置通过数据库接收SaltStack批量管理日志02_rec_rec.mkv

445.      006-利用SaltStack批量安装nginx服务并定时更新配置_rec_rec.mkv

446.      007-利用SaltStack定时批量更新所有nginx服务配置_rec_rec.mkv

447.      008-利用SaltStack 代理功能实现千台服务器批量管理功能_rec_rec.mkv

448.    lesson16-puppet批量管理工具实战----09期

449.      001_rec_rec.mkv

450.      002_rec_rec.mkv

451.      003_rec_rec.mkv

452.      004_rec_rec.mkv

453.    lesson17-squid代理与缓存实战----

454.      01-代理缓存服务器介绍_rec_rec.mkv

455.      02-Web缓存相关概念详解及解决方案思路_rec_rec.mkv

456.      03-squid缓存服务介绍及功能介绍_rec_rec.mkv

457.      04-squid服务3种代理缓存服务原理与工作流程详解_rec_rec.mkv

458.      05-什么时候就需要使用squid或CDN服务_rec_rec.mkv

459.      06-haproxy和squid代理的区别-门户案例_rec_rec.mkv

460.      07-生产中如何选择squid服务的版本_rec_rec.mkv

461.      08-部署squid需要的硬件环境与虚拟环境准备说明_rec_rec.mkv

462.      09-编译与安装squid服务_rec_rec.mkv

463.      10-squid目录文件结构介绍_rec_rec.mkv

464.      11-squid配置介绍与实际修改_rec_rec.mkv

465.      12-squid日志文件介绍_rec_rec.mkv

466.      13-squid的访问控制详解-ip-port-domain_rec_rec.mkv

467.      14-squid的访问控制详解-协议-url-method等_rec_rec.mkv

468.      15-squid服务如何匹配访问控制元素_rec_rec.mkv

469.      16-squid主程序介绍及运行squid服务-实现普通代理_rec_rec.mkv

470.      17-配置squid服务开机脚本及日志轮询等_rec_rec.mkv

471.      18-squid服务acl访问控制实战测试_rec_rec.mkv

472.      19-配置web界面管理查看squid服务相关信息_rec_rec.mkv

473.      20-squid透明代理实战配置与效果测试_rec_rec.mkv

474.      21-利用squid代理实现翻墙多种方案介绍_rec_rec.mkv

475.      22-squid反向代理的架构-部署需求详解_rec_rec.mkv

476.      23-squid透明代理实战配置准备_rec_rec.mkv

477.      24-squid透明代理各种实战配置及故障排除_rec_rec.mkv

478.      25-查看squid命中-丢失的相关内容知识_rec_rec.mkv

479.      26-查看squid服务的缓存状态_rec_rec.mkv

480.      27-清空squid缓存对象多种方案讲解及实践_rec_rec.mkv

481.      28-suqid CDN集群配置介绍及squid更多参数介绍-作业_rec_rec.mkv

482.    lesson18-mfs分布式文件系统实战

483.      01-为什么要选择mfs分布式文件系统_rec_rec.mkv

484.      02-MFS介绍及特性说明_rec_rec.mkv

485.      03-MFS文件系统优缺点介绍_rec_rec.mkv

486.      04-MFS应用场景及与其他分布式文件系统比较_rec_rec.mkv

487.      05-MFS4大结构组件详细介绍_rec_rec.mkv

488.      06-MFS架构原理及读写文件原理_rec_rec.mkv

489.      07-MFS版本选择-安装环境-生产环境设备选型说明_rec_rec.mkv

490.      08-MFS安装环境实战准备-模拟环境设备测试说明_rec_rec.mkv

491.      09-mfs master服务的安装与实际配置演示_rec_1_rec.mkv

492.      09-mfs master服务的安装与实际配置演示_rec_rec.mkv

493.      10-启动-停止MFS MASTER-及相关服务规范配置_rec_rec.mkv

494.      11-配置主服务器mfs master的图形界面监控_rec_rec.mkv

495.      12-mfs backup热备服务器的安装与配置_rec_rec.mkv

496.      13-安装3台数据服务器data servers_rec_rec.mkv

497.      14-配置3台数据服务器data servers_rec_rec.mkv

498.      15-安装配置客户端服务器client server并测试_rec_rec.mkv

499.      16-MFS客户端挂载深入讲解及常见问题解决_rec_rec.mkv

500.      17-客户端命令使用-配置文件副本及删除后的属性设置_rec_rec.mkv

501.      18-实战还原被误删除的MFS服务上得数据文件_rec_rec.mkv

502.      19-模拟宕机所有服务器角色测试MFS服务健壮性_rec_rec.mkv

503.      20-模拟备份MFS元数据模拟恢复宕机的MFS MASTER_rec_rec.mkv

504.      21-模拟MFS MASTER宕机后通过metalogger服务器切换为主服务器_rec_rec.mkv

505.      22-MFS集群的启动停止顺序服务可用监控讲解_rec_rec.mkv

506.      23-利用ha-drbd实现MFS MASTER的高可用性实战_rec_rec.mkv

507.      24-MFS集群的数据安全保护多种措施思路讲解_rec_rec.mkv

508.    lesson19-SaltStack批量管理工具实战深入

509.      01-saltstack实战01_rec_rec.mkv

510.      02-saltstack实战02_rec_rec.mkv

511.      03-saltstack实战03_rec_rec.mkv

512.      04-saltstack实战04_rec_rec.mkv

513.      05-saltstack实战05_rec_rec.mkv

514.      06-saltstack实战06_rec_rec.mkv

515.      07-saltstack实战07_rec_rec.mkv

516.      08-saltstack实战08_rec_rec.mkv

517.      09-saltstack实战09_rec_rec.mkv

518.    lesson20-kvm虚拟化实战

519.      01-kvm虚拟化实战_rec_rec.mkv

520.      02-kvm虚拟化实战_rec_rec.mkv

521.      03-kvm虚拟化实战_rec_rec.mkv

522.      04-kvm虚拟化实战_rec_rec.mkv

523.      05-kvm虚拟化实战_rec_rec.mkv

524.      06-kvm虚拟化实战_rec_rec.mkv

525.      07-kvm虚拟化实战_rec_rec.mkv

526.      08-kvm虚拟化实战_rec_rec.mkv

527.    lesson21-glusterfs分布式云存储集群实战

528.      01-glusterfs系统原理介绍_rec_rec.mkv

529.      02-glusterfs基本原理讲解_rec_rec.mkv

530.      03-glusterfs基本原理深入_rec_rec.mkv

531.      04-glusterfs集群弹性哈希算法_rec_rec.mkv

532.      05-glusterfs卷原理讲解_rec_rec.mkv

533.      06-glusterfs访问接口讲解_rec_rec.mkv

534.      07-glusterfs数据修复及添加节点原理_rec_rec.mkv

535.      08-主流分布式文件系统多维度对比讲解_rec_rec.mkv

536.      09-glusterfs主要应用场景_rec_rec.mkv

537.      10-glusterfs测试工具与方法_rec_rec.mkv

538.      11-glusterfs实战环境介绍和准备_rec_rec.mkv

539.      12-glusterfs实战环境安装01_rec_rec.mkv

540.      13-glusterfs实战环境安装02_rec_rec.mkv

541.      14-glusterfs实战部署01_rec_rec.mkv

542.      15-开始组建glusterfs集群_rec_rec.mkv

543.      16-glusterfs卷设置及卷信息同步_rec_rec.mkv

544.      17-glusterfs操作复习重做_rec_rec.mkv

545.      18-glusterfs性能测试工具_rec_rec.mkv

546.      19-glusterfs集群典型故障处理01_rec_rec.mkv

547.      20-glusterfs集群典型故障处理02_rec_rec.mkv

548.      21-glusterfs集群生产场景调优精要_rec_rec.mkv

549.    lesson22-nosql之redis持久化存储

550.      01-NoSQL数据库介绍_rec_rec.mkv

551.      02-NoSQL数据可以解决哪些问题及应用场景_rec_rec.mkv

552.      03-主流NoSQL数据库分类及特点简介_rec_rec.mkv

553.      04-常见NoSQL数据库简介及特点介绍_rec_rec.mkv

554.      05-生产场景如何选择NOSQL数据库?_rec_rec.mkv

555.      06-redis概述及特点介绍_rec_rec.mkv

556.      07-redis优点及缺陷-持久化介绍_rec_rec.mkv

557.      08-redis的企业级应用场景_rec_rec.mkv

558.      09-redis的门户应用案例及redis安装_rec_rec.mkv

559.      10-配置并启动redis服务_rec_rec.mkv

560.      11-查看帮助及多个命令行方案操作redis_rec_rec.mkv

561.      12-redis的安全账户密码及授权权限_rec_rec.mkv

562.      13-在php环境中安装redis的客户端扩展_rec_rec.mkv

563.      14-开发php程序实战操作redis服务_rec_rec.mkv

564.      15-开发python程序实战操作redis服务_rec_rec.mkv

565.      16-通过web服务展示python程序操作redis结果_rec_rec.mkv

566.      17-逐条解读redis服务的配置文件redis.conf_rec_rec.mkv

567.      18-redis键值介绍及使用建议_rec_rec.mkv

568.      19-redis数据类型深入讲解-string字符串类型_rec_rec.mkv

569.      20-redis数据类型深入讲解-list列表类型_rec_rec.mkv

570.      21-redis数据类型深入讲解-set集合类型_rec_rec.mkv

571.  openvpn代理     22-redis数据类型深入讲解-hash哈希类型_rec_rec.mkv

572.      23-redis多实例介绍及手把手实战_rec_rec.mkv1.通过 OpenVPN 的 Nginx / Apache2 代理

2.我正在努力完成我认为相当简单的任务,但它给我带来了麻烦。我在互联网上有 VPS (Debian 10),上面安装了 和 。我一直中国大陆能用的vpn在利用两者的代理来尝试从 VPS 转发到我内部网络上的某些。出于显而易见的原因,我不想在开放的互联网上拥有我的家庭 IP 地址。我也不想做一些事情,比如在我的本地网络上打开 HTTP 端口并代理它 - 西柚vpn电脑 VPS 和我的网络之流量将是未加密的。

3.所以,OpenVPN 来了。我进行了设置,以便可以从我的 VPS 连接到本地网络上的 OpenVPN 服务器。这样做我可以像我想要的那样连接到我的内ios免费vpn软件部网络服务器。我尝试像这样设置 和 (显然不是同时):

4.apache2

5.为简洁和安全起见,排除了 SSL ,但这工作正常。当我连接了 OpenVPN 时,这有效 - 但仅当我在本地网络上时。在我的本地网络上,我可以按预期点击 。当我尝试从本地网络外部访问它时,它就在那里。我究竟做错了什么?有没有比使用 OpenVPN 更好的?

6.暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

7.如果你已经找到好的解openvpn代理决方法,欢迎将解决方案带上本链接一起发送给小编。1.通过HTTP代理在Windows上进行VPN /隧道(SSH或其他)

2.OpenVPN可能是一个非常好的解决方案。http://openvpn.net/index.php/open-source/苹果手机怎么用vpn335-why-openvpn.html上的网页确认OpenVPN是一个用户空间守护进openvpn代理程:

3.“... OpenVPN被写为用户空间守护进程,而不是内核模块...”

4.它是免费的,开源vpn国内节点的,安全的,高度可配置的。就“用户友好”而言,管理员在安装OpenVPN后帮助用户获取配置文件,然后只要用户在线(通过设置“OpenVPN服务”服务)就可以自动连接用户自动启动)。1.防追踪溯源识别联网工控设备的方法

2.本文章结合作者在平时工作中真实经历,首先介绍了现有扫描联网工控设备技术存在的缺陷,基于现有技术提出了一种防追踪溯源扫描工控设备的解决方法,并在工控安全态势感知系expressvpn知乎统、工控应急风险评估和远程渗透实际场景中应用。其次在解决方案中给出了具体的实施步骤和过程,最后通过多种方案比较,选定在国外购买的VPS上,自己搭建一套稳定、可靠和高效的vpn代理服务应用,并进行了防追mac vpn推荐踪溯源技术的验证。

3.伴随中国智能制造2025、两化融合以及工业互联网等背景下,越来越多的工业控制系统暴露在网络空间里,为了掌握互联网上有多少工控设备,以及这些工控设备的型号和存在的风险,市面vpn软件开发上大多采用工控态势感知系统、nmap以及plcscan等工具对联网的工控设备进行不间断扫描探测。这些系统或工具的流量出口大多经过公司内部机房或者国内云服务器上,现有技术存在如下缺陷和问题。

4.苹果vpn免费1)部署在公司内部机房,一旦触发扫描目标的入侵检测系统检测到发起扫描的源IP,则可以根据该IP进行反渗透或者反攻击,导致公司内部其它服务器遭受影响;

5.部署在国内云服务器上,一旦扫描目标的检测系统检测到发起扫描的源IP,则可以根据购买云服务器备案的客户信息进行溯源,并追究导致安全事故的责任人;

6.目前市面扫描探测联网工控设备(态势感知系统、nmap工具和plcscan等工具)均采用TCP或者UDP方式进行工控设备探测,扫描探测指纹未经过加密保护,容易被第三方截取并分析出采用的关键技术方法。

7.目前主流的代理服务器如shadowsocks只能对http或https应用进行代理,不能对ICMP、Telnet、原生tcp、udp socket 服务进行代理传输,达到隐蔽扫描的效果;

8.国内的VPN或者免费的VPN不稳定、已掉线,易被中国防火墙封锁。

9.本文章提出了一种基于防追踪溯源技术识别联网工控设备的应用方法,解决了传统技术中出现的未对扫描服务器进行追踪溯源的保护、未对扫描探测技术方法进行保护等问题。此方法主要分为扫描代理客户端、代理服务器和扫描目标组成。方法实现主要包含以下步骤:

10.步骤1:部署代理服务器,国外vultr官网购买一台VPS服务器,在部署上linux操作系统后,并部署OPENVPN代理服务器应用,并启动代理服务,监听代理客户端的请求。

11.步骤2:本地部署扫描服务器(如态势感知系统、nmap工具和plcscan扫描工具等),并在扫描服务器上安装部署OPENVPN代理客户端,设置代理客户端的代理配置文件,主要是配置代理服务器的IP地址、端口、通信方式及证书等信息。

12.步骤3:通过扫描服务器执行相关的工控扫描任务对联网工控设备进行扫描识别。所有的扫描行为均会通过VPN代理服务器转发到扫描目标设备。目标设备返回信息到VPN代理服务器,代理服务再将信息转发给扫描客户端,扫描客户端根据返回的报文与工控指纹库进行匹配,来进行工控资产识别。基于防追踪溯源识别联网工控设备的业务模型如下图所示:

image.png

13.扫描代理客户端:扫描客户端首先对代理服务器相关信息进行配置,主要配置代理服务的IP、端口及认证信息。并开始对目标IP设备进行扫描,此时由于配置了代理客户端,所有扫描请求数据不会直接发送到目标IP设备,而会通过VPN私有通道加密发送到VPN代理服务器上。

14.代理服务器:代理服务器获取的扫描客户端的扫描,会将数据无缝转发给真实的目标IP设备。

15.目标工控设备:目标工控设备收到来自VPN代理服务器扫描请求,会对VPN代理服务器进行响应,代理服务器会将此响应加密转发给原始扫描客户端。

16.数据加解密过程:扫描客户端会对扫描数据进行加密并传输给VPN代理服务器,代理服务器也会对响应扫描客户端的数据进行加密,扫描客户端收到数据会进行解密。

17.购买服务器

18.由于国内如阿里云购买服务器均要实名认证,国外购买服务器价格昂贵等特点,所以决定采用在vultr.com购买VPS服务器,服务稳定、价格低廉、服务器地理区域可任意切换,购买的VPS如下图所示:

image.png

19.利用docker在VPS上快速搭建openvpn代理应用

20.首先在linux上安装docker应用,安装成功后安装以下步骤进行openvpn代理服务器安装部署:

21.打开terminal终端,配置环境变量,输入如下命令:

22.创建一个数据卷存储配置文件和证书等文件,输入如下命令:

23.初始化配置文件到数据卷中,输入如下命令:

24.*.* 需替换为购买vps虚拟服务主机IP地址

25.初始化配置,并保存授权密码,输入如下命令:

26.开启openvpn容器,输入如下命令:

27.%2f生成用户证书,如果需要生成多个用户证书可以执行多次该命令,输入如下命令:

28.%2f将用户证书导出到本地文件,输入如下命令:

29.远程登录代理服务器如下图所示:

image.png

30.linux Centos7部署使用,参照如下步骤:

31.安装epel yum源,输入如下命令:

image.png32.安装openvpn,输入如下命令:

33.安装openvpn,输入如下命令:

34.将代理服务器安装部署成功生成的tencent.ovpn文件按照如下方式进修改,tencent.ovpn文件内如下所示:

image.png

35.并将tencent.ovpn文件,上传到/etc/openvpn/目录下,然后日志输出到/var/log/openvpn.log。

36.在开机启动项/etc/rc.local 文件添加如下命令,并重启服务器

37.扫描服务器代理客户端信息如下图所示:

38.测试客户端IP:192.168.10.108

image.png

39.客户端代理配置如下图所示:

image.png

40.通过扫描服务器客户端代理对目标主机222.86.67.52和 114.221.127.188进行防追踪溯源技术验证。

41.应用层telnet协议代理验证

42.验证通过192.168.10.108(内网服务器) 通过代理服务器(vpn.server)进行telnet连接目标IP(114.221.127.188)地址的验证,如下图所示

image.png

43.机器抓包截图如下所示:

44.发现是通过140.82.63.14进行的

image.png

45.应用层telnet协议代理验证

46.验证通过192.168.10.108(内网服务器) 通过代理服务器(vpn.server)进行telnet连接目标IP(222.86.57.52)地址的验证

image.png

47.从上图可知,当客户端通过telent 目标 222.86.57.52 已经通过 [email protected]服务器进行了数据包的转发。

48.ICMP协议代理验证

49.通过192.168.10.108(内网服务器) 通过代理服务器(vpn.server)进行ping 8.8.8.8的验证,如下图所示:

image.png

50.nmap扫描代理验证

51.nmap扫描验证如下图所示:

image.png

52.利用扫描软件对S7协议plc进行验证

53.客户端对109.105.11.68进行S7协议plc探测验证如下图所示:

54.采用OPENVPN私有隧道进行扫描数据加密传输,不仅可以防止扫描行为被第三方截取或分析,而且还可以隐藏真实设备的身份,防止真实设备被追踪溯源,防止真实设备被反渗透、反攻击的风险。

55.OPENVPN部署简单便捷、传输稳定可靠、通过绑定域名,IP地址可以任意切换,可以对所有的网络通讯行进行代理转发。特别是对原生tcp或udp socket应用进行完全转发,解决诸如某些代理只能对http或https协议进行代理转发的问题。

5openvpn代理6.本文搭建的OPENVPN不仅可以用于工控设备隐藏扫描、远程渗透、应急风险评估等活动中达到隐藏自己真实身份,防止被追踪溯源的目的,而且还可以应用于翻墙,进行google、facebook及twitter等网站的访问。

57.*本文原创作者:yy0308,本文属FreeBuf原创奖励计划,未经许可禁止转载

openvpn代理的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于openvpn代理、openvpn代理的信息别忘了在本站进行查找喔。


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有