본문 바로가기
서버/리눅스 서버

데비안 / 우분투 PPTP VPN 서버 설치하기

by ㅋㅋ잠자 2018. 3. 28.
반응형

## U5MINI / U5PVR 용으로는 설치가 불가능합니다.


안녕하세요. 이번에는 PPTP VPN 서버를 설치해 보겠습니다.





1. PPTP VPN 패키지 설치


root@AOL-Debian:~# apt-get install pptpd

Reading package lists... Done

Building dependency tree

Reading state information... Done

The following extra packages will be installed:

  bcrelay ppp

The following NEW packages will be installed:

  bcrelay ppp pptpd

0 upgraded, 3 newly installed, 0 to remove and 3 not upgraded.

Need to get 427 kB of archives.

After this operation, 1,125 kB of additional disk space will be used.

Do you want to continue? [Y/n]

Get:1 http://httpredir.debian.org/debian/ jessie/main bcrelay armhf 1.4.0-5 [27.1 kB]

Get:2 http://httpredir.debian.org/debian/ jessie/main ppp armhf 2.4.6-3.1 [310 kB]

Get:3 http://httpredir.debian.org/debian/ jessie/main pptpd armhf 1.4.0-5 [89.5 kB]

Fetched 427 kB in 4s (87.5 kB/s)

Selecting previously unselected package bcrelay.

(Reading database ... 25293 files and directories currently installed.)

Preparing to unpack .../bcrelay_1.4.0-5_armhf.deb ...

Unpacking bcrelay (1.4.0-5) ...

Selecting previously unselected package ppp.

Preparing to unpack .../ppp_2.4.6-3.1_armhf.deb ...

Unpacking ppp (2.4.6-3.1) ...

Selecting previously unselected package pptpd.

Preparing to unpack .../pptpd_1.4.0-5_armhf.deb ...

Unpacking pptpd (1.4.0-5) ...

Processing triggers for man-db (2.7.0.2-5) ...

Processing triggers for systemd (215-17+deb8u6) ...

Setting up bcrelay (1.4.0-5) ...

Setting up ppp (2.4.6-3.1) ...

Setting up pptpd (1.4.0-5) ...

Processing triggers for systemd (215-17+deb8u6) ...

root@AOL-Debian:~#





2. 설정 파일 수정하기 (/etc/pptpd.conf)


먼저 eth0 에 할당된 아이피를 확인합니다.


root@AOL-Debian:~# ifconfig

eth0      Link encap:Ethernet  HWaddr 00:11:ad:82:10:04

          inet addr:192.168.0.101  Bcast:192.168.0.255  Mask:255.255.255.0

          inet6 addr: fe80::211:adff:fe82:1004/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

          RX packets:251100 errors:0 dropped:0 overruns:0 frame:0

          TX packets:172568 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000

          RX bytes:233914644 (223.0 MiB)  TX bytes:105296811 (100.4 MiB)

          Interrupt:104


lo        Link encap:Local Loopback

          inet addr:127.0.0.1  Mask:255.0.0.0

          inet6 addr: ::1/128 Scope:Host

          UP LOOPBACK RUNNING  MTU:65536  Metric:1

          RX packets:54770 errors:0 dropped:0 overruns:0 frame:0

          TX packets:54770 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:0

          RX bytes:23234861 (22.1 MiB)  TX bytes:23234861 (22.1 MiB)


wlan0     Link encap:Ethernet  HWaddr 94:a1:a2:f7:e8:cf

          UP BROADCAST 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:1000

          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)


root@AOL-Debian:~#


다음으로 아래의 설정을 수정합니다.


내용은 맨 밑에 추가합니다.


localip 는 서버의 아이피 / remoteip 는 클라이언트에 할당될 아이피 범위입니다.


root@AOL-Debian:~# nano /etc/pptpd.conf


localip 192.168.0.101

remoteip 192.168.0.200-210





3. 설정파일 수정하기 (/etc/ppp/pptpd-options)


맨 밑에 dns 설정을 추가합니다.


root@AOL-Debian:~# nano /etc/ppp/pptpd-options


ms-dns 8.8.8.8

ms-dns 8.8.4.4





4. 설정파일 수정하기 (/etc/ppp/chap-secrets)


아이디 / 서버종류 / 비밀번호 / 할당될 아이피 이런식으로 설정을 합니다.


구분은 tap 키로 해주시면 됩니다. 추가적으로 서버의 경우 차후에 l2tp 를 사용하게 되면 조금 다르지만, 지금은 pptpd 를 사용하기 때문에 pptpd 로 입력합니다. IP 는 지정된 경로 내에 아무거나 사용할 수 있도록 설정합니다.


root@AOL-Debian:~# nano /etc/ppp/chap-secrets


# Secrets for authentication using CHAP

# client        server  secret                  IP addresses

djjproject      pptpd   djjproject      *





5. 커널 파라미터 수정 및 iptables 값 반영


root@AOL-Debian:~# sysctl -w net.ipv4.ip_forward=1

net.ipv4.ip_forward = 1


root@AOL-Debian:~# iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE

root@AOL-Debian:~# iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu


상기 설정에서 192.168.0.0/24 는 환경마다 다릅니다.





6. 작동 테스트


root@AOL-Debian:~# service pptpd restart

[ ok ] Restarting PoPToP Point to Point Tunneling Server: pptpd.

root@AOL-Debian:~# netstat -nlp | grep pptpd

tcp        0      0 0.0.0.0:1723            0.0.0.0:*               LISTEN      21037/pptpd





7. 재부팅 후 커널 파라미터 및 iptable 설정 반영


root@AOL-Debian:~# nano /etc/rc.local



#!/bin/sh -e

#

# rc.local

#

# This script is executed at the end of each multiuser runlevel.

# Make sure that the script will "exit 0" on success or any other

# value on error.

#

# In order to enable or disable this script just change the execution

# bits.

#

# By default this script does nothing.


/etc/init.d/hostname.sh start


su root -c "/home/init.sh"


exit 0



root@AOL-Debian:~# nano /home/init.sh



#!/bin/bash


# pptpd options

sysctl -w net.ipv4.ip_forward=1

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE




root@AOL-Debian:~# chmod a+x /home/init.sh





8. 포트포워딩


TCP 1723 을 열어주셔야 합니다.


혹은 U5PVR 전용 포트포워딩 패키지를 통해서 아래와 같이 설정이 가능합니다.


root@AOL-Debian:/usr/lib/aolwebgui# port 1723 1723 TCP

22:17:17.738 [main] INFO  org.chris.portmapper.PortMapperCli - Creating router factory for class org.chris.portmapper.router.cling.ClingRouterFactory

22:17:17.758 [main] DEBUG org.chris.portmapper.PortMapperCli - Creating a new instance of the router factory class class org.chris.portmapper.router.cling.ClingRouterFactory

22:17:17.866 [main] INFO  org.chris.portmapper.PortMapperCli - Searching for routers...


-----중략-----


TCP :1723 -> 192.168.0.101:1723 enabled PortMapper TCP/192.168.0.101:1723

22:17:26.144 [main] DEBUG o.c.p.router.cling.ClingRouter - Shutdown registry





8. 윈도우에서 연결




데비안8 가상화 상태인 I5-4350U 제품에서 속도 테스트 입니다. 그냥 저냥 속도가 나오네요.




반응형

댓글