Ubuntu PPTP VPN Server
pptpd 설치
다음 명령어를 실행한다.
sudo apt-get install pptpd
~
ip 설정
/etc/pptpd.conf 파일의 맨 마지막에 다음을 추가한다.
localip 192.168.0.1 remoteip 192.168.0.100-200
~
DNS 설정
/etc/ppp/pptpd-options 파일의 ms-dns 항목을 주석해제하고 수정한다.
ms-dns 8.8.8.8 ms-dns 8.8.4.4
~
사용자 추가
/etc/ppp/chap-secrets 파일에 사용자를 추가한다. "(아이디) pptpd (비밀번호) (IP)" 형식으로 한 줄에 하나씩 적으면 된다.
cubelover pptpd p4ssw0rd 192.168.0.123 guest pptpd guest *
~
interface 이름 알아내기
다음 명령어를 실행하면 interface가 여러 개 나오는데, 이 중 vpn에 routing할 interface의 이름을 찾는다. 유선랜을 사용하는 경우 보통 eth0지만 아닌 경우도 있다.
ifconfig -a
~
iptables 설정
앞에서 알아낸 interface의 이름을 (interface)에 넣고 실행한다.
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o (interface) -j MASQUERADE
~
ip forwarding 설정
/etc/sysctl.conf 파일에서 net.ipv4.ip_forward=1 항목을 주석해제한다. 그리고 다음 명령어를 실행한다.
sudo sysctl -p
~
pptpd 재시작
다음 명령어를 실행한다.
sudo pptpd restart
~
UFW 설정 (UFW를 사용하는 경우)
/etc/default/ufw 파일에서 DEFAULT_FORWARD_POLICY를 ACCEPT로 고쳐준다.
DEFAULT_FORWARD_POLICY="ACCEPT"
/etc/ufw/before.rules 파일에서 *filter 앞 부분에 다음을 추가한다.
# nat Table rules *nat :POSTROUTING ACCEPT [0:0] # Allow traffic from clients to eth0 -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE # commit to apply changes COMMIT
그리고 # drop INVALID packets 바로 다음에 다음을 추가한다.
-A ufw-before-input -p 47 -i $iface -j ACCEPT
다음 명령어를 실행한다.
sudo ufw allow 1723 sudo ufw disable sudo ufw enable
~
여기까지 잘 동작하는 지 확인한다. 잘 동작한다면 재부팅할 때 iptable이 날아가는 것을 방지하기 위해서 저장해뒀다가 부팅할 때 불러오도록 해야 한다.
다음 명령어를 실행한다.
sudo su iptables-save > /etc/iptables.rules exit
/etc/rc.local 파일의 exit 0 이전에 다음을 추가한다.
/sbin/iptables-restore < /etc/iptables.rules
'...' 카테고리의 다른 글
ONTAK 2010 Day 7 Generator (0) | 2018.07.17 |
---|---|
BOJ Achievements (0) | 2018.05.17 |
Baekjoon Online Judge 13538 (3) | 2016.11.03 |
Baekjoon Online Judge 1659 (0) | 2016.02.02 |
1 이상 N 이하의 정수에서 i의 빈도수 (0) | 2016.01.27 |