VPN 설정 구성 openvpn

SYSTEM/TECH / /
반응형

OpenVPN 활용하기

 



  • Ubuntu 14.04 + OpenVPN
  • SHA 256 비트 암호화 지원
  • 인증서 기반 통신 (Open SSL)
  • Two-Factor 인증 (Password + OTP)
 
Server 설정 Point
 
1. iptables 설정 중요
 
iptables -t nat -A POSTROUTING -s 10.10.10.0/24 -o eth0 -j MASQUERADE   <- openvpn client IP 할당 범위
iptables -A INPUT -i tun+ -j ACCEPT   
iptables -A FORWARD -i tun+ -j ACCEPT
iptables -A INPUT -p tcp --dport 12345 -j ACCEPT   <- openvpn service port
 
2. openvpn 환경설정 (암호화 통신 설정등)
 
cipher AES-128-CBC
auth SHA256
plugin /usr/lib64/openvpn/plugin/lib/openvpn-auth-pam.so openvpn
 
 
cat /etc/pam.d/openvpn       <- 로그인 방법 설정   ID /   PW + google OTP  조합
 
auth [user_unknown=ignore success=ok ignore=ignore default=bad] pam_securetty.so
auth       required     /usr/local/lib/security/pam_google_authenticator.so forward_pass
auth       include      system-auth
account    include      system-auth
password   include      system-auth
 
 
Client 설정 Point
 
1. Windows, Mac OS 둘다 지원  
    openvpn download -> https://openvpn.net/index.php/open-source/downloads.html
 
2. VPN IP를 DHCP 로 사용할시 PC(client) 에 DHCP 서비스가 시작되 있어야함(windows 기준)
 
3. client program install 이나 더블클릭하여 실행시 "관리자 권한"으로 가급적 실행해야함
 
4. config 파일 설정을 서버측에 맞게 잘 설정해야함
 
 
기타 생각나는 대로...
 
 
※ Google OTP 는 time base라 서버 시간이 정확한게 좋음 (cron에 등록하여 time server 측으로 동기화를 자주 해줘야함) 
 
 
상용 vpn 장비도 많이 있으나, 오픈소스로 구축해서 실무에 적용하여 사용하여도 크게 불편함은 없음
two factor 인증이라 보안적인 측면에서도 큰 문제는 없음
 
* 계정 탈취를 위해서는 아래모든 사항을 만족해야함 (뚫기 힘듬)
 
   ID / PASS 를 알아야하고 / 접속 인증서가 있어야하고 / OTP QR 코드가 있어야 하며/ OTP를 알아야 한다.
 
 
조금더 나아가 접속자 role base 기반도 가능 (짱구 굴리면 안될건 없음)
 
예: user01 계정은 AA,BB 서버군
     user02 계정은 CC 서버로만 접근
 
이외 접속 로그 이력 관리도 가능함 (elastic 으로 저장중)
언제, 어디서, 어떤 서버로, 몇번 포트로 접속했다...등
 
 
 
 

 

접속 화면

VPN 접속

  

 

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기