FortiGate 방화벽의 SSL-VPN 기능을 이용하여 Remote에서 VPN 접속 가능하도록 설정해보겠습니다. 참고로 FortiGate의 SSL-VPN 기능은 추가 라이선스가 필요하지 않습니다.
먼저 SSL-VPN에 접속할 수 있는 계정을 생성합니다.(User & Device -> User Definition -> Create New)
계정의 Username, Password를 입력합니다.
Email Address를 통한 Two-Factor 인증을 사용할 경우 Email을 입력합니다. Two-Factor를 사용하지 않을 경우 빈칸으로 남기고 다음으로 넘어갑니다.
계정 설정을 완료합니다.
User Groups에서 Group을 설정하고 앞에서 생성한 계정을 멤버로 추가합니다.
VPN -> SSL-VPN Portals 매뉴에서 포탈을 설정합니다. 포탈은 SSL-VPN에 접속하기 위한 채널입니다.
full-access 포탈을 이용하여 설정해보겠습니다. full-access를 Edit 합니다.
Tunnel Mode를 Enable하고, Source IP Pools에 사용자가 할당받을 IP 범위(SSL-VPN 접속 시 할당받는 가상의 IP)를 선택합니다.
Split Tunneling 설정을 Enable할 경우 IP를 추가할 수 있습니다. 추가한 IP대역만 SSL-VPN 통신하게 됩니다.
ex) Split Tunneling IP에 192.168.1.0/24 설정 시 192.168.1.0/24 IP 대역에 대한 통신만 SSL-VPN이 적용되며, 나머지 통신은 SSL-VPN이 아닌 일반 인터넷 통신하게 됨
반대로 Split Tunneling을 Enable하지 않을 경우 모든 통신(외부 인터넷 포함)은 SSL-VPN 통신을 하게 됩니다.
VPN -> SSL-VPN Settings 메뉴에서 관련 설정을 추가합니다.
- Listen on Interface(s) : SSL-VPN 접속 요청을 수신하는 인터페이스 설정, 보통 외부에서 내부로 접속을 시도하므로 외부 인터페이스(wan1) 설정
- Listen on port : SSL-VPN 접속 포트
- Restrict Access : SSL-VPN 접속 허용 IP, 보통 모든 IP에서 접속 가능하도록 Allow access form any host 설정
- Address Range : SSL-VPN 접속 후 사용자가 할당받는 가상의 IP 범위
Authentication/Portal Mapping에서 앞에서 생성한 Group 1과 full-access portal을 맵핑합니다. Group 1의 멤버인 user1은 full-access portal을 통해 SSL-VPN 접속이 가능해집니다.
Policy & Objects -> IPv4 Policy 메뉴에서 SSL-VPN 관련 정책을 추가합니다.
SSL-VPN 사용자가 내부 시스템에 접근하기 위한 정책으로 Incoming Interface를 SSL-VPN tunnel interface로 선택합니다. 그리고 source에 앞에서 설정한 SSL-VPN 사용자가 할당받는 가상의 IP, 사용자 그룹을 추가합니다.
다음으로 SSL-VPN 사용자가 wan1(외부) 통신이 가능하도록 정책을 설정합니다. 앞에 Portals 설정에서 Split Tunneling을 Enable하지 않았으므로 모든 통신은 SSL-VPN 통신을 하게 됩니다. 따라서 SSL-VPN 사용자의 외부 통신 또한 SSL-VPN을 적용받게 됩니다.
SSL-VPN 접속할 PC에 FortiClient를 설치하고 원격 접속 -> 톱니바퀴 모양 -> 새 연결 추가 메뉴를 선택합니다.
원격 게이트웨이 항목에 연결할 FortiGate 방화벽의 IP주소 및 SSL-VPN 접속용 포트 10443을 입력합니다.
로그인 화면에서 사용자의 ID/PW를 입력하고 로그인하게 되면 SSL-VPN에 연결됩니다.
SSL-VPN 연결 상태에서 PC의 IP 주소가 방화벽 SSL-VPN에서 설정한 가상의 IP 주소로 변경된 것을 확인 할 수 있습니다.
또한 방화벽 내부 통신이 정상임을 확인할 수 있습니다.
마찬가지로 SSL-VPN 연결상태에서 PC의 외부 IP를 확인해보면 기존 PC의 IP가 아닌 방화벽 wan1 인터페이스 IP로 변경된 것을 확인할 수 있습니다. 앞에서 SSL-VPN -> wan1 정책을 생성했기 때문에 일반 인터넷 통신 또한 방화벽 SSL-VPN을 거치게 됩니다.(유동 IP 환경에서 SSL-VPN 연결 및 방화벽의 고정 IP를 이용한 인터넷 가능)