歡迎您光臨本站 註冊首頁

關於vpn伺服器的架設

←手機掃碼閱讀     火星人 @ 2014-03-04 , reply:0

關於vpn伺服器的架設

方法一:

站點:http://www.poptop.org/
  需要下載的軟體:
  dkms-2.0.5-1.noarch.rpm
  kernel_ppp_mppe-0.0.5-2dkms.noarch.rpm
  ppp-2.4.3-4.rhel3.i386.rpm(下載自己的相應的系統就可以了,我用的是rhel3)
  pptpd-1.2.3-1.i386.rpm

  檢查自己系統內是否有相應的軟體包已經安裝,沒有的話安裝,有的話使用升級.
  分別使用命令:
  安裝 : rpm -ivh xxx.rpm
  升級 : rpm -Uvh xxx.rpm

  安裝完成.

  編輯/etc/pptp.conf
  只需要在最後輸入兩行:
  localip 192.168.100.1 //定義伺服器上的IP.(也就是連上后的ppp0的ip)
  remoteip 192.168.1.1-30 //定義客戶端的IP.
  保存.

  編輯/etc/ppp/chap-secrets
  只需要加入:
  「user」 pptpd 「password」 * //將user,password 修改為你的用戶名和密碼就可以了.
  或者如下:
  「user」 pptpd 「password」 192.168.1.1 //將 * 用ip代替后,就是指定客戶端連上后的ip.
  保存.

  編輯/etc/ppp/options.pptpd
  只需要加入:
  ms-dns 202.101.172.35 //將ip換為你的dns ip 即可.
  保存.

  啟動服務.

  /etc/rc.d/init.d/pptpd start

  使用win系統,建立一個新的vpn連接,輸入伺服器ip,用戶名和密碼.即可.

方法二:


Server: Red Hat Linux 9 Kernel 2.6.10


Client: Win2000 Pro/Server SP4,WinXP SP2


Server所需要:


www.kernel.org

kernel: linux-2.6.10.tar.bz2


http://www.polbox.com/h/hs001/

kernel_patch: linux-2.6.10-mppe-mppc-1.2.patch.gz

pppd: ppp-2.4.3.tar.gz

pppd_patch: ppp-2.4.3-mppe-mppc-1.1.patch.gz

pptpd: pptpd-1.2.3.tar.gz


為了方便起見,可以把它們放在同一個目錄下


我不喜歡用RPM方式安裝,所以都是用的源碼方式編譯安裝


一、先給內核打補丁



# tar zjvf linux-2.6.10.tar.bz2

# gunzip linux-2.6.10-mppe-mppc-1.2.patch.gz

# patch -p0 -i linux-2.6.10-mppe-mppc-1.2.patch

# ln –s linux-2.6.10 linux

# cd linux

# make menuconfig

Device Drivers -> Networking Support->



把 "PPP support" 編進內核,你也可作為模塊編譯。



PPP Support for async serial ports

PPP Support for sync tty ports

PPP Deflate compression

Microsoft PPP compression/encryption (MPPC/MPPE)"

Cryptographic options



把 "Cryptographic API" 編進內核,你也可作為模塊編譯。確保SHA1 和 ARC4 支持已經選上:



SHA1 digest algorithm

ARC4 cipher algorithm



保存配置文件,退出


編譯內核


make all modules modules_install install


修改/etc/modprobe.conf (2.4的Kernel請修改/etc/modules.conf)


重啟,進入2.6.10


二、安裝PPP


安裝之前先用 rpm -qa |grep ppp 看一下是否系統有安裝RH9自帶的ppp-2.4.1-10


如果有的話, 用 rpm -e 卸載先,可能還有依賴關係,依次卸載,如:



#rpm -e rp-pppoe-3.5-2

#rpm -e wvdial-1.53-9

#rpm -e ppp-2.4.1-10


# tar xzvf ppp-2.4.3.tar.gz

# gunzip ppp-2.4.3-mppe-mppc-1.1.patch

# patch –p0 –i ppp-2.4.3-mppe-mppc-1.1.patch

# cd ppp-2.4.3

# ./configure

# make; make install



三、安裝 pptpd



#tar xzvf pptpd-1.2.3.tar.gz

# ./configure

# make; make install



相關的配置文件:



/etc/pptpd.conf

# pptpd的基本配置文件

/etc/ppp/options.pptpd

# VPN撥號選項

/etc/ppp/chap-secrets

# 用戶名和密碼信息

/etc/modules.conf

# 模塊載入信息

(2.4的Kernel請修改/etc/modules.conf)


vi /etc/pptpd.confppp /usr/local/sbin/pppd

#指定pppd的路徑

option /etc/ppp/options.pptpd

# 指定option 文件位置

localip 192.168.1.3

#同伺服器的LAN地址

remoteip 192.168.1.230-239

#分配給客戶端的ip



本例範圍從192.168.1.230到192.168.1.239。您也可以單獨指定某個地址或者多段地址,用逗號隔開,如在192.168.1.230-239,192.168.1.254



vi /etc/ppp/options.pptpd


name *

lock

mtu 1450

mru 1450

proxyarp

auth

ipcp-accept-local

ipcp-accept-remote

lcp-echo-failure 3

lcp-echo-interval 5

deflate 0

# Handshake Auth Method

- 加密協議類型

+chap

+mschap-v2

# Data Encryption Methods

mppe required,stateless

其它詳細說明請參見 man pppd

或者 man pptpd


vi /etc/ppp/chap-secrets

#client server Password IP Address

test * 12345 *



因為密碼是明文顯示的,最好能修改文件許可權,使root作為owner和chmod 700



vi /etc/modules.conf

alias char-major-108 ppp_generic

alias /dev/ppp ppp_generic

alias tty-ldisc-3 ppp_async

alias tty-ldisc-14 ppp_synctty

alias ppp-compress-18 ppp_mppe_mppc

alias ppp-compress-21 bsd_comp

alias ppp-compress-24 ppp_deflate

alias ppp-compress-26 ppp_deflate



重新啟動


# reboot



在我這裡 alias ppp-compress-18 ppp_mppe_mppc 好像沒用,只好手動載入:



# modprobe ppp_mppe_mppc



確認內核支持



strings `which pppd`|grep -i mppe|wc --lines

30

###大於等於30就行#####

[strings `which pppd`|grep -i mppc|wc --lines

7

#### 不為 0 #####

dmesg | grep MPPE

MPPE/MPPC encryption/compression module registered



啟動pptpd



# /usr/local/sbin/pptpd

Mar 17 23:07:32 localhost pptpd:

MGR: Manager process started

Mar 17 23:07:32 localhost pptpd:

MGR: Maximum of 10 connections available



設置客戶端連接,「安全」裡面選擇自定義,如圖所示,這裡取決於你在option.pptpd裡面的設置:



Mar 17 23:09:59 localhost pptpd:

CTRL: Client 192.168.1.136

control connection started

Mar 17 23:09:59 localhost pptpd:

CTRL: Starting call

(launching pppd, opening GRE)

Mar 17 23:09:59 localhost pppd:

pppd 2.4.3 started by root, uid 0

Mar 17 23:09:59 localhost pppd:

Using interface ppp0

Mar 17 23:09:59 localhost pppd:

Connect: ppp0 <--> /dev/pts/1

Mar 17 23:10:02 localhost pptpd:

CTRL: Ignored a SET LINK INFO

packet with real ACCMs!

Mar 17 23:10:02 localhost pppd:

MPPC/MPPE 128-bit stateless compression enabled

Mar 17 23:10:04 localhost pppd:

found interface eth0 for proxy arp

Mar 17 23:10:04 localhost pppd:

local IP address 192.168.1.3

Mar 17 23:10:04 localhost pppd:

remote IP address 192.168.1.230



成功!


除了那個紅色的一行外,不知是何原因?


註: 2.4.x的內核除了patch文件和modules.conf文件外,其它都類似。為什麼pppd的選項文件裡面會有不同?pptp客戶端是基於PPP協議的。PPP需要MPPE加密協議支持來支持某些PPTP伺服器。


早期的版本包含了OpenSSL授權的源碼,這一部分源碼是獨立於PPP項目的;這就是PPP-MPPE 2.4.0(紅色)。稍晚些的版本使用了BSD授權的源碼,這些源碼是PPP項目的一部分;這就PPP 2.4.2 及其更高版本了(綠色),第三個就是使用了Jan Dubiec的patch,加入MPPC 支持的版本(藍色)


對每個版本來說,PPP MPPE支持需要有兩個部分。其一是內核的支持,另外就是pppd程序的支持。這兩個部分必須是同一個版本,如果兩個的版本不一致,產生的結果就是pppd程序報告這樣的錯誤:內核不支持。兩個版本的詳細對比:



PPP-MPPE 2.4.0


no further development?

no response to problems

has known problems such

as kernel panics

OpenSSL license directly

conflicts with kernel license

when loaded, does not

indicate a license conflict

requires /etc/modules.conf changes

module file name mppe.o (or ppp_mppe.o)

+mppe-128 (inconsistent

with existing option names)

mppe-stateless

require-chapms-v2

(incorrect protocol name)



PPP 2.4.2 and later


ongoing development by PPP project

active response to problems by developers

has no known problems

at this time (stay tuned)

BSD license does not conflict

(as much) with kernel license

when loaded, indicates a license conflict

requires no /etc/modules.conf changes

module file name ppp_mppe.o

require-mppe-128

nomppe-stateful

require-mschap-v2



這兩個版本的pppd程序也有不同的命令行參數。

請問基於FC5 和 AS4 的環境下還有更簡單的方法嗎?
上面這兩種方法安裝的 VPN SERVER 用 webmin-1.290-1.noarch.rpm 都無法直接進行管理

PPTP VPN Server   



The PoPToP PPTP server pptpd was not found on your system, or is not the right program. Maybe it is not installed, or your module configuration is incorrect.
《解決方案》

原帖由 zhyiquan 於 2006-8-24 11:37 發表
方法一:

站點:http://www.poptop.org/
  需要下載的軟體:
  dkms-2.0.5-1.noarch.rpm
  kernel_ppp_mppe-0.0.5-2dkms.noarch.rpm
  ppp-2.4.3-4.rhel3.i386.rpm(下載自己的相應的系統就 ...
簡單問題複雜化
《解決方案》

回復 2樓 fish007 的帖子

用 webmin-1.290-1.noarch.rpm  能管理嗎??? 你有試過嗎?
《解決方案》

嗬嗬,正好有類似的需求,照著說得做了一個,成功了,不過就是不能上msn messenger   ,後來手工把ppp0 的mtu改了,就行了,

ip link set ppp0 mtu 1500

頂一下,還是可以用用的。不錯。
《解決方案》

原帖由 mobiletec 於 2006-8-29 17:45 發表 http://linux.chinaunix.net/bbs/images/common/back.gif
嗬嗬,正好有類似的需求,照著說得做了一個,成功了,不過就是不能上msn messenger   ,後來手工把ppp0 的mtu改了,就行了,

ip link set ppp0 mtu 1500

頂一下,還是可以用用的。不錯。


多個連接怎麼處理,會產生ppp0 ppp1 ppp2
自動控制每個ppp會話MTU為1500

我度過多次.包括轉發埠開啟,協議啟用,都無法做到,也可能是考慮到了MTU問題
iptables -I FORWARD -p tcp --syn -s 172.16.12.0/24 -j TCPMSS --set-mss 1356

[火星人 ] 關於vpn伺服器的架設已經有619次圍觀

http://coctec.com/docs/service/show-post-25356.html