日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
快速建立linux下的vpn服務(wù)器做加密代理

一:背景
對(duì)VPN的分類什么的有個(gè)大概的了解,知道是個(gè)大概怎么回事,如果不大清楚的朋友可以google一下,喜歡看英文文檔的朋友可以看下面兩個(gè)文檔對(duì)VPN的介紹,很清晰。本文就不對(duì)這些內(nèi)容進(jìn)行具體的介紹了。
http://hmyblog.vmmatrix.net/sdbwww/pub/books/Packt.Publishing.
OpenVPN.Building.And.Integrating.Virtual.Private.Networks.Mar.2006.pdf
http://hmyblog.vmmatrix.net/sdbwww/pub/books/Packt.Publishing.Building.And.
Integrating.Virtual.Private.Networks.With.Openswan.Jan.200620060628185701.rar
說到這里,baoz忍不住要打個(gè)岔,如果是剛接觸一個(gè)新領(lǐng)域新知識(shí)的話,最好少看中國大陸人寫的技術(shù)文檔,那信不過,一來說不清楚(比如本文,呵呵),二來很多地方忽悠人,說不定他自己也不清楚,亂寫一氣,要不就在關(guān)鍵的地方漏一點(diǎn)或者改一點(diǎn),照搬人家老外的東西連目錄文件名不改竟然還叫原創(chuàng)。具體大家在搜索swan +vpn的時(shí)候就有機(jī)會(huì)遇到了。反正不想被帶著瞎走就最好看英文文檔或者中國臺(tái)灣人寫的東西,比如那個(gè)叫鳥哥的人寫的文章還不錯(cuò),雖然很基礎(chǔ),但講的很清楚,他出了本書,叫《鳥哥的私房菜》來著,很適合linux的入門者閱讀。另外一些大點(diǎn)的程序在官方網(wǎng)站都有DOCUMENT或者HOWTO,F(xiàn)AQ什么之類的,認(rèn)真看看哪怕不去做也會(huì)收獲不少,起碼知道那軟件大概是怎么回事。
baozi大致的看了一下上面的兩個(gè)PDF,收益良多,再次推薦一下,對(duì)VPN和openswan,openvpn介紹的十分詳細(xì)。
目標(biāo)系統(tǒng) red hat linux 9默認(rèn)安裝
二:需求
說白了就是用肉雞做加密代理
1:對(duì)系統(tǒng)盡可能小的改變,包括添加文件和系統(tǒng)日志,因?yàn)槲覀冇玫氖侨怆u。
2:是client-->server的模式,而不是net-net的模式,瀏覽網(wǎng)頁而已。
3:無論server還是client都要配置方便,簡(jiǎn)單好用,我們要的是快速。
三:選型
1:*swan
A:ipsec vpn的代表,默認(rèn)端口tcp/udp 500
B:優(yōu)點(diǎn):加密強(qiáng),對(duì)網(wǎng)絡(luò)游戲什么的支持好(我們用不上)
C:缺點(diǎn):部署麻煩,配置麻煩,關(guān)鍵是他的nat-t,就是nat穿越功能需要打內(nèi)核補(bǔ)丁,重新編譯內(nèi)核才行,這事在肉雞做不得,呵呵。具體的可以看上面的那個(gè)openswan的rar,講的十分詳細(xì)。大概的說說swan系列吧,最開始是freeswan,然后貌似在2004年停止開發(fā)了,衍生出openswan和strongswan兩個(gè)分支,我看了一下,貌似openswan發(fā)展的不錯(cuò),strongswan連個(gè)rpm包都沒,當(dāng)然,那是貌似。因?yàn)槲也欢胏ode,說啥都得加貌似二字的,不過千萬別小看scriptkid哦,因?yàn)槟悴恢朗裁磿r(shí)候他就在你的系統(tǒng)里用uid0在script,雖然我還是多次被別人B4,呵呵。繞回來……swan系列分兩塊,一個(gè)是用戶空間程序,一個(gè)是內(nèi)核空間程序。用戶空間程序叫p什么來o來著,至于到底是p什么o,你裝裝就知道了,要不裝,知道了也沒啥意義。:)內(nèi)核空間的包括模塊和補(bǔ)丁,大概就那么回事。就是說,要做到nat-t,就需要用戶空間程序,lkm和內(nèi)核補(bǔ)丁,需要重新編譯內(nèi)核,這個(gè)我們?cè)谌怆u沒法做,drop之。還有他要用root運(yùn)行。
2:pptpd
A:pptp vpn的典型代表,默認(rèn)端口tcp 1723
B:優(yōu)點(diǎn):windows帶了他的client,安裝也方便,就幾個(gè)rpm,配置也不難
C:缺點(diǎn):一撥進(jìn)去他就會(huì)改缺省網(wǎng)關(guān),很煩,要么撥進(jìn)去自己route add/delete幾下改改,一直別斷開,看個(gè)網(wǎng)站犯得著那么麻煩嗎
3:openvpn
A:SSL VPN的典型代表,默認(rèn)端口tcp/udp 1194
B:優(yōu)點(diǎn):簡(jiǎn)單好裝,一個(gè)rpm搞定,要壓縮的話多一個(gè)lzo的rpm包。配置也是簡(jiǎn)單的很,就生成一個(gè)static.key,還可以chroot,并且可以以nobody運(yùn)行,肉雞的安全也是很重要的,保管不好就被搶了,不過chroot就沒必要了,有興趣的朋友可以自己搞搞:) ldd一下把要的東西都丟到一個(gè)地方然后加上配置文件就差不多了,再改改啟動(dòng)腳本。
還有就是撥進(jìn)VPN之后,他不會(huì)改你默認(rèn)網(wǎng)關(guān),免去了折騰的煩惱,我們可以把sf.net的地址加到靜態(tài)路由去。
在server那邊只需要開一個(gè)udp or tcp端口就可以了,不怎么需要去動(dòng)別人的iptables。
貌似好象還有負(fù)載均衡什么的,這個(gè)和我們的目的差距有點(diǎn)大了,ignore之。
C:缺點(diǎn):除了要額外裝一個(gè)client之外,相對(duì)我們的需求來說貌似沒什么缺點(diǎn)了。
#p#四:開搞
1:安裝client and server程序
http://dag.wieers.com/packages/openvpn/openvpn-2.0.7-1.rh9.rf.i386.rpm
[root@RH9 root]# rpm -ivh lzo-1.08-2_2.RHL9.at.i386.rpm
warning: lzo-1.08-2_2.RHL9.at.i386.rpm: V3 DSA signatur    E: NOKEY, key ID 66534c2b
Preparing...                ########################################### [100%]
  1:lzo                    ########################################### [100%]
[root@RH9 root]# rpm -ivh openvpn-2.0.7-1.rh9.rf.i386.rpm
warning: openvpn-2.0.7-1.rh9.rf.i386.rpm: V3 DSA signatur    E: NOKEY, key ID 6b8d79e6
Preparing...                ########################################### [100%]
  1:openvpn                ########################################### [100%]
2:服務(wù)端配置
[root@RH9 root]# cat > /etc/openvpn/server.conf
dev tun
ifconfig 10.8.0.1 10.8.0.2
secret static.key ;天王蓋地虎,寶塔鎮(zhèn)河妖
user nobody ;降權(quán)限,保安全
group nobody
port 3389 ;改端口,忽啊悠-->不過別改1024以下的端口,那需要root權(quán)限,就得把上面兩行nobody的刪除。
comp-lzo ;起壓縮,加速度
;keep alive
keepalive 10 60 ;推連接,不掉線
ping-timer-rem
persist-tun
persist-key
;no-log ;不記錄啊不日志
verb 0
status /dev/null
log         /dev/null
log-append  /dev/null
server配置完畢。
3:客戶端配置
安裝這個(gè)http://www.openvpn.se/files/install_packages/openvpn-2.0.9-gui-1.0.3-install.exe
然后打開開始--程序--openvpn--Generate a static OpenVPN key,這會(huì)在C:\Program Files\OpenVPN\config下生成一個(gè)叫key.txt的文件,把他重命名為static.key。
然后把這個(gè)文件復(fù)制到linux肉雞的/etc/openvpn/static.key去
最后在C:\Program Files\OpenVPN\config目錄下創(chuàng)建一個(gè)叫client.ovpn的文件,內(nèi)容如下
remote 肉雞的IP
dev tun
ifconfig 10.8.0.2 10.8.0.1
secret static.key
port 3389
verb 3
comp-lzo
keepalive 10 60
ping-timer-rem
persist-tun
persist-key
client配置完畢。
注意,無論是服務(wù)端還是客戶端的IP,都不要和系統(tǒng)有的IP段沖突,另外改了端口需要在client and server都改一致。
#p#4:?jiǎn)?dòng)并連接
A:?jiǎn)?dòng)服務(wù)端

[root@RH9 root]# /etc/init.d/openvpn start
Starting openvpn:                                          [  OK  ]
這個(gè)時(shí)候理論上會(huì)發(fā)現(xiàn)多了一個(gè)接口,等會(huì)我們要收拾這個(gè)口子。
[root@RH9 root]# ifconfig tun0
tun0      Link encap:Point-to-Point Protocol  
          inet addr:10.8.0.1  P-t-P:10.8.0.2  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

[root@RH9 root]# netstat -an | grep 3389
udp        0      0 0.0.0.0:3389            0.0.0.0:*  
這個(gè)時(shí)候理論上會(huì)起了一個(gè)3389的udp口,如果這兩個(gè)事情都有了,那就OK了,一般除了RP有WT之外,這里基本都不怎么可能出現(xiàn)錯(cuò)誤。:)
如果有錯(cuò)誤的話,就把上面的
verb 0
status /dev/null
log         /dev/null
log-append  /dev/null
改成
verb 9
status /usr/lib/0
log         /usr/lib/1
log-append  /usr/lib/1
然后重新啟動(dòng)openvpn服務(wù)并查看日志,注意,這個(gè)時(shí)候messages會(huì)有日志,調(diào)試完畢記得刪除/usr/lib/0 /usr/lib/1。 B:?jiǎn)?dòng)客戶端
開始--程序--openvpn--OpenVPN GUI
連接服務(wù)端
點(diǎn)右下角紅色的圖標(biāo)--connect
圖標(biāo)變綠,就是成功連接并分配到地址了,注意讓你的防火墻通過。
如果沒變綠色,從那個(gè)圖標(biāo)那view log,如果發(fā)現(xiàn)不到問題,就把client的配置文件的verb設(shè)置為9,重新連接,再看日志,再google。
C:檢查連接:
在client里看到有這么個(gè)信息
Ethernet adapter 本地連接   4:
Connection-specific DNS Suffix  . : 
IP Address. . . . . . . . . . . . : 10.8.0.2
Subnet Mask . . . . . . . . . . . : 255.255.255.252 
Default Gateway . . . . . . . . . :
C:\>ping 10.8.0.1
Pinging 10.8.0.1 with 32 bytes of data:
Reply from 10.8.0.1: bytes=32 time=7ms TTL=64
連接木有問題,這個(gè)時(shí)候就根據(jù)個(gè)人的喜好,是改默認(rèn)網(wǎng)關(guān)還是只根據(jù)目的地址route add一下了
如果肉雞速度快的話改默認(rèn)網(wǎng)關(guān)吧。
C:\>route delete 0.0.0.0
C:\>route add 0.0.0.0 mask 0.0.0.0 10.8.0.1 -->注意啊,是vpn server的tun0的地址。
如果DNS服務(wù)器不在內(nèi)網(wǎng)的話,自己再route add一次DNS的地址就OK,如果想長(zhǎng)期生效,可在route add語句最后加-p參數(shù)。
D:服務(wù)端打開轉(zhuǎn)發(fā)
做個(gè)nat,但注意一下eth0需要是可以去外網(wǎng)的接口啊,否則等會(huì)數(shù)據(jù)走不出去,如果肉雞是單接口的話就不需要擔(dān)心。
[root@RH9 root]# iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
再看看轉(zhuǎn)發(fā)開了沒
[root@RH9 root]# sysctl -a | grep net.ipv4.ip_forward
net.ipv4.ip_forward = 0
我們把他打開
[root@RH9 root]# sysctl -w net.ipv4.ip_forward=1
5:找錯(cuò)
VPN一般出問題就只有三個(gè)地方,client的防火墻,server的防火墻,和轉(zhuǎn)發(fā)開關(guān)是否打開,所以我們?cè)诜?wù)端抓抓包就完全可以找到出問題的地方。ipsec pptp都可以這么找錯(cuò)。
A:在server的tun0口抓一切包,以檢測(cè)client-->server是否連通,廢話,肯定連通的,否則那圖標(biāo)怎么會(huì)是綠色....
[root@RH9 root]# tcpdump -n -i tun0                  
tcpdump: listening on tun0
B:在server的eth0口抓目標(biāo)地址包,以檢測(cè)轉(zhuǎn)發(fā)是否有問題。
[root@RH9 root]# tcpdump -n -i eth0 dst host baoz.net
tcpdump: listening on eth0
C:
這個(gè)時(shí)候我們telnet一下baoz.net看看
C:\>telnet baoz.net
兩邊都看到有包就對(duì)了。如果有一邊看不到包,就自己折騰一下好了??纯匆宦愤^來是不是都沒搞錯(cuò)。
到此為止,我們已經(jīng)可以
#p#五:肉雞中的隱藏
1:肉雞哪來?
A:web app漏洞,awstat什么的,沒事就留意一下milw0rm.com的webapp部分,出新漏洞了就google hacking一把。 B:ssh or telnet弱口令 沒事就找?guī)讉€(gè)A BLOCK掃掃看。推薦xfocus冰河的X-Scan。 C:0day exp ? 這個(gè)我就不清楚了。 D:蜜罐,上面三種情況都可能是蜜罐,不過沒關(guān)系,就做個(gè)代理上上網(wǎng)嘛,蜜罐就蜜罐了,只要網(wǎng)速快就行。
2:日志
日志的處理上面在服務(wù)端配置部分已經(jīng)提到了的,小心處理就是,只要你比系統(tǒng)(安全)管理員更XX你就可以玩的下去,其中XX可以用細(xì)心,堅(jiān)韌,不拔等形容詞代替。
3:進(jìn)程、端口和連接
A:sk2一裝,用sk2的client進(jìn)去啟動(dòng)openvpn,動(dòng)態(tài)隱藏進(jìn)程端口和網(wǎng)絡(luò)連接 B:adore,貌似要改改才行,不過我暫時(shí)沒這個(gè)需求,sk2已經(jīng)很爽了。 C:shv5,最近抓到的一個(gè)rootkit,替換ELF文件的,很容易被查出來,沒啥意思,他的特征是默認(rèn)有個(gè)/usr/lib/libsh目錄。
4:ifconfig
這個(gè)是最關(guān)鍵的也是最麻煩的,因?yàn)橐话愕娜硕紩?huì)ifconfig敲著玩玩的,一不小心就會(huì)被發(fā)現(xiàn)多了個(gè)tun0。。。。呵呵,我想了想辦法有兩: A:使用awk or sed腳本替換/sbin/ifconfig,過濾掉tun0相關(guān)的輸出,但這個(gè)比較容易被chkrootkit這樣的東西發(fā)現(xiàn),不過即使被人家用chkrootkit發(fā)現(xiàn)了也挺光榮的,至少用chkrootkit的人還稍微比較專業(yè)點(diǎn),總比被人家ifconfig發(fā)現(xiàn)了好吧…… B:修改ifconfig的源程序,讓他輸出的時(shí)候不顯示tunX設(shè)備,這個(gè)相對(duì)穩(wěn)妥,因?yàn)橐话銠z查ifconfig都是對(duì)比那混雜模式而已的,當(dāng)然還有文件類型。
[root@RH9 root]# rpm -q --whatprovides /sbin/ifconfig
net-tools-1.60-12
查了一下,在這個(gè)軟件包里,想改的自己可以改改,不想改的就去找找有沒人改好的現(xiàn)成的了,就當(dāng)留給我和各位有興趣的朋友的家庭作業(yè)好了:) 
六:TODO
tunX的穩(wěn)妥隱藏
chroot openvpn
七:參考
http://openvpn.net/howto.html
http://www.securityfocus.com/infocus/1821
Packt.Publishing.OpenVPN.Building.And.Integrating.Virtual.Private.Networks.pdf
Packt.Publishing.Building.And.Integrating.Virtual.Private.Networks.With.Openswan.pdf
八:寫在最后
信息安全是一把雙刃劍,自己知道了可以盡可能怎么攻擊,該怎么攻擊,其中會(huì)有什么地方可以被發(fā)現(xiàn),才有可能知道了人家想怎么攻擊,會(huì)怎么攻擊,也才有機(jī)會(huì)發(fā)現(xiàn)入侵企圖或入侵者,進(jìn)而把入侵者趕出去或攔在門外,否則被人家root了幾年還不知道怎么回事。呵呵,我是不是做XX還立牌坊了?無論怎樣那卻是不爭(zhēng)的事實(shí)。

責(zé)任編輯 趙毅 zhaoyi# TEL:(010)68476636-8001


新聞名稱:快速建立linux下的vpn服務(wù)器做加密代理
本文路徑:http://www.5511xx.com/article/codgsdp.html