2017.01.16 추가 - Ubuntu 16.04 LTS xl2tpd + strongswan 설치


아래 글은 Ubuntu 12.04 에서 작성 및 테스트하였다.


-------------------------------------------


vpn 의 목적이

1. 학교에서 막힌 곳 뚫기

2. 컴퓨터나 서버와 간단히 연결하기


였는데 openvpn 의 불편함으로 l2tp 뚫어봤음...

3g 에서 l2tp 연결해두고 학교 와이파이 잡으면 정상 사용가능한게 미스터리..ㅋㅋ

와이파이는 연결되있고 인터넷은 3g 이용함...ㅠㅠ



openvpn 은 워낙 헤매서 기억을 더듬어 어느정도 써놨는데

l2tp 는 전혀 기억이 안나므로 과정 대충 베끼다가 설정 파일들은 그냥 다 첨부하겠음 ㅋㅋ


우선 ipsec 설치 / 설정

apt-get install openswan

cp /etc/ipsec.d/examples/l2tp-psk.conf /etc/ipsec.d/l2tp-psk.conf

그리고 저 파일 수정이지만 내 설정을 올리겠으


다음은 /etc/ipsec.conf


virtual_private 는 특정 서브넷을 허용하고, 거부한단건데 사실 잘 모르겠음. 난 그냥 대충 해놨고, 잘 작동함. ㅋ


그리고 /etc/ipsec.secrets 을 열어서

서버주소 %any: PSK "공용 암호키"

를 넣어준다.


그 다음 service ipsec restart



드디어 본론! l2tp 설치/설정


sudo apt-get install xl2tpd ppp


설치 후

/etc/xl2tpd/xl2tpd.conf 를 수정해준다



아이피 주소 같은건 알아서 수정하자.

참고로 10.~~ 를 사용하지 않고 다른 대역을 사용하려면 ipsec.conf 파일에 virtual_private 를 수정해야할 필요가 있을수도 있음.


다음은 /etc/ppp/options.xl2tpd



이것 역시 dns 정도는 알아서 바꿔주자.


다음으로 /etc/ppp/chap-secrets 파일을 수정해주자.

로그인 정보 파일이며 이거 수정후에 재시작해 줄 필요는 없다.


(아이디        서버이름   비밀번호            할당할 아이피)


이 정보들을 쓰면 된다. 간격은 탭으로 적당히 띄우면 됨.

서버 이름과 할당할 아이피에는 * 을 써도 됨.

ex)

id            l2tpd    password            *



xl2tpd 재시작 해주면 된다. ( service xl2tpd restart )



아 iptables 설정을 해줘야 한다.


iptables -A FORWARD -s 10.7.0.0/24 -j ACCEPT

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


그리고 네트워크 포워드까지..


echo 1 > /proc/sys/net/ipv4/ip_forward


마지막 iptables 설정이랑 ip_forward 이건 재부팅시 초기화 된다. 매번 재시작시 다시 해주거나 재시작시 자동으로 되게 알아서 하면 됨.



ps. 혹시 안되면 재부팅 해보셔요.. 안되던거 재부팅으로 해결 ㅡㅡ

ps2. 몇번 나눠쓰고 대충 써서 글이 이상하거나 빼먹은거 있을 수 있음.

어차피 나보라고 쓰는거니까 나를 위해 태클걸어주면 감사히 수정하겠습니다~(?) ㅋ

'Linux, Server, Web' 카테고리의 다른 글

phpmyadmin 에러  (2) 2012.11.18
사용해 본 VPS 비교  (2) 2012.11.14
우분투 openVPN 설치/설정법  (0) 2012.09.29
ftp / samba  (0) 2012.01.01
Ubuntu apache2/php5/mysql/mariadb  (0) 2012.01.01

포트 변경의 메리트로 사용하게된 openvpn.

내가 사용할 일 없는 443(원래는 https용)을 vpn 용으로 지정해놓으면 막힐일 거의 없다 ㅋ


단점이라면, 컴퓨터라면 클라이언트를 따로 설치해야 하고,

모바일 기기라면 루팅/탈옥이 꼭 필요하다는 점..ㅠㅠ

안드로이드엔 openvpn 에서 만든 프로그램이 있고

iOS에서는 GuizmOVPN 이라는 유료앱이 있음. 앱스토어에 OpenVPN 앱이 있다. 이거 쓰면 됨.



1. 설치

sudo apt-get install openvpn


2. 키 폴더 만들기

mkdir /etc/openvpn/easy-rsa/

cp -r /usr/share/doc/openvpn/examples/easy-rsa/2.0/* /etc/openvpn/easy-rsa/


3. /etc/openvpn/easy-rsa/vars 수정

사실 안해도 되지만 그러면 키 하나 만들때 마다 귀찮음 ㅋ

export KEY_COUNTRY="KR"

export KEY_PROVINCE="NA"

export KEY_CITY="Daegu"

export KEY_ORG="iolate"

export KEY_EMAIL="iolate@me.com"


4. 서버 키 만들기

cd /etc/openvpn/easy-rsa/

source ./vars                        #위에 설정한거 적용

./clean-all                             #키 폴더 비움

./build-dh

./pkitool --initca                     #ca 키 생성

./pkitool --server server         #서버 키 생성


cd keys

#만들어진 키 이동

sudo cp server.crt server.key ca.crt dh1024.pem ../../


하다가 openssl 오류나 2.0 어쩌구 에러나면 easy-ssl 폴더 안에

openssl-1.0.0.cnf -> openssl.cnf 링크 만들어 주면 된다.


5. 서버 설정 (/etc/openvpn/server.conf)

뭐 설정 skel 파일이 있긴한데....



대충 이렇게 쓰면 됨.

길이가 너무 길어져서 주석들은 전부 뺏음 ㅋ


6. vpn 재시작

service openvpn restart



7. 클라이언트 정보 파일 생성

cd /etc/openvpn/easy-rsa/

source ./vars 

./pkitool client


8. 클라이언트 설정 파일 (이름.ovpn 혹은 이름.conf)



난 키 파일을 설정 파일에 다 집어넣는걸 선호해서 저렇게 해놨는데

싫다면  <~> </~> 부분을 제거 후

cert client.crt

key client.key

ca ca.crt

이렇게 각각 적어주고 설정파일(conf 혹은 ovpn)과 함께 배포하면 된다.


9. iptables 설정




openvpn이 다 좋긴 한데 위에 적었듯이 서드파티 앱이 반드시 필요하고

한번 배포한 인증서의 차단이 조금 쉽지 않다는 것이 흠..

'Linux, Server, Web' 카테고리의 다른 글

사용해 본 VPS 비교  (2) 2012.11.14
우분투 L2TP VPN 설치/설정법  (2) 2012.09.29
ftp / samba  (0) 2012.01.01
Ubuntu apache2/php5/mysql/mariadb  (0) 2012.01.01
Ubuntu 초기 LAN 설정 건너뛴 후 인터넷 연결이 안될때  (0) 2011.07.06

+ Recent posts