OpenVPN으로 Mikrotik 관리하기
요약
MikroTik 및 VPS에서 OpenVPN 사용법 실무 가이드: OpenVPN 작동 원리, 우분투 서버 설정, MikroTik 클라이언트 구성, 접속 방식, 최신 솔루션 비교 및 보안 최적 관행.
OpenVPN을 활용한 원격 MikroTik 관리
OpenVPN은 라우터 및 장치를 원격으로 접속하는 데 여전히 강력하고 검증된 방법입니다.
WireGuard와 Tailscale보다 오래되었지만, 그 유연성과 호환성 덕분에 오늘날에도 유효합니다.
이 글은 작동 원리와 이유를 설명하며 VPS 서버와 MikroTik 클라이언트를 위한 복사-붙여넣기 명령어도 제공합니다.
OpenVPN이란?
OpenVPN은 2001년부터 개발된 오픈소스 VPN 구현체로 TCP 또는 UDP 위에 암호화된 터널을 구축합니다.
암호화와 TLS 기반 인증을 위해 OpenSSL에 의존합니다.
주요 특징:
- 강력한 암호화 (AES-256, SHA256, TLS)
- IPv4 및 IPv6 지원
- 라우팅 모드(TUN) 및 브리지 모드(TAP) 지원
- 폭넓은 OS 및 장치 호환성 — RouterOS 포함
참고: OpenVPN 생태계와 도구는 명시적 인증서 제어와 레거시 장치 지원이 필요한 환경에 매우 적합합니다.
OpenVPN 작동 방식 (간단 개요)
OpenVPN은 서버(대개 공용 VPS)와 하나 이상의 클라이언트(MikroTik 라우터, 노트북 등) 사이에 암호화된 터널을 만듭니다.
인증은 CA, 인증서 및 선택적 TLS 인증(ta.key)를 사용합니다.
주요 모드:
- TUN (라우팅): 네트워크 간 IP 라우팅 (가장 일반적)
- TAP (브리지): 2계층 브리징 — 브로드캐스트에 의존하는 앱에 유용하나 무겁습니다.
장단점
장점
- 검증된 보안 모델 (TLS + OpenSSL)
- 매우 유연한 구성 가능 (TCP/UDP, 포트, 라우트, 푸시 옵션)
- 폭넓은 호환성 — 다양한 장비 혼용에 적합
- RouterOS 기본 지원 (제한적이나 있음)
단점
- 제한된 하드웨어에서는 WireGuard보다 무거움
- PKI(CA, 인증서) 및 수동 작업 필요
- RouterOS는 OpenVPN을 TCP에서만 지원(서버는 주로 UDP 사용)
Ubuntu (VPS)에서 OpenVPN 서버 구축
아래는 간략하면서 실용적인 설정입니다. 환경에 맞게 이름, IP, DNS를 조정하세요.
1) 패키지 설치
apt update && apt install -y openvpn easy-rsa2) PKI 및 서버 키 생성
make-cadir ~/openvpn-cacd ~/openvpn-casource vars./clean-all./build-ca # CA 생성./build-key-server server./build-dhopenvpn --genkey --secret keys/ta.key팁: CA는 비공개로 엄격히 관리 및 백업하세요. CA 키는 생산 비밀처럼 다루세요.
3) 서버 설정 (/etc/openvpn/server.conf)
최소한의 내용으로 파일 생성:
port 1194proto udpdev tunca ca.crtcert server.crtkey server.keydh dh.pemserver 10.8.0.0 255.255.255.0push "redirect-gateway def1 bypass-dhcp"push "dhcp-option DNS 8.8.8.8"keepalive 10 120cipher AES-256-CBCuser nobodygroup nogrouppersist-keypersist-tunstatus openvpn-status.logverb 34) 서비스 활성화 및 시작
systemctl enable openvpn@serversystemctl start openvpn@server5) 방화벽: 포트 허용
ufw allow 1194/udp경고: 1194 포트를 인터넷 전체에 공개하는 경우, 서버 보안(fail2ban, 엄격한 SSH 키, IP 제한 방화벽 규칙)을 강화하세요.
클라이언트 인증서 및 설정 생성
easy-rsa 스크립트로 클라이언트 인증서 생성 (예: build-key client1) 후, 다음 파일을 클라이언트용으로 묶으세요:
- ca.crt
- client1.crt
- client1.key
- ta.key (사용 시)
- client.ovpn (설정 파일)
최소 클라이언트.ovpn 예시 (서버 IP는 VPS 주소로 교체):
clientdev tunproto udpremote YOUR.VPS.IP 1194resolv-retry infinitenobindpersist-keypersist-tunca ca.crtcert client1.crtkey client1.keyremote-cert-tls servercipher AES-256-CBCverb 3MikroTik을 OpenVPN 클라이언트로 설정
RouterOS는 몇 가지 제약이 있으나 OpenVPN 클라이언트 연결을 지원합니다.
클라이언트 키 및 인증서(ca.crt, client.crt, client.key)를 MikroTik에 업로드.
OVPN 클라이언트 프로필 생성 후 연결 시작.
/interface ovpn-client add name=ovpn-out1 \ connect-to=YOUR.VPS.IP port=1194 \ user=vpnuser password="yourpassword" \ profile=default-encryption add-default-route=no
/interface ovpn-client print예상 상태 출력:
status: connecteduptime: 00:01:03remote-address: 10.8.0.1local-address: 10.8.0.6참고: RouterOS는 일부 버전에서 TCP만 OpenVPN을 제한적으로 지원합니다 — 릴리스 노트를 확인하세요. 라우터에서 UDP가 필요하면 중간 리눅스 호스트나 인근 장치의 소프트웨어 클라이언트 사용을 고려하세요.
터널을 통해 내부 장치 접속하기
내부 장비(예: IP 카메라 192.168.88.100)에 접근하려면 MikroTik에서 NAT로 터널의 로컬 포트를 노출시킬 수 있습니다.
- MikroTik에 dst-nat 규칙 추가:
/ip firewall nat add chain=dstnat protocol=tcp dst-port=8081 \ action=dst-nat to-addresses=192.168.88.100 to-ports=80- 서버나 다른 클라이언트에서 라우팅 주소와 포트로 접속:
http://10.8.0.6:8081트래픽은 OpenVPN 터널을 거쳐 내부 장치에 도달합니다.
보안 및 최적 관행
- 클라이언트별 고유 인증서 사용
- 이중 인증 유사 제어 필요 시 TLS 클라이언트 인증서와 사용자/비밀번호 결합
- 정기적으로 키와 인증서 갱신
- 가능한 VPS 방화벽에서 출발 IP 제한
- 성능을 위해 UDP 선호하되 RouterOS 호환성 확인
- 연결 상태와 로그(syslog, openvpn-status.log) 모니터링
팁: 다수 장치 인증서 발급은 스크립트 자동화 가능하나 CA는 오프라인 상태 유지 권장.
최신 대안과 간단 비교
| 솔루션 | 강점 | 선택 이유 |
|---|---|---|
| OpenVPN | 호환성, 세분화된 인증서 제어 | 혼합/레거시 환경, ISP 구간, 기업용 장비 |
| WireGuard | 속도, 간단함 | 최신 장비, 소형 라우터 |
| Tailscale/ZeroTier | 메시, 신원 관리, 쉬운 배포 | 노트북, 서버, 팀 협업 |
OpenVPN 사용 적합 상황
- 세밀한 인증서 통제가 필요할 때
- 레거시 장비나 최신 에이전트가 없는 장비가 포함된 경우
- 기존 방화벽 규칙 및 기업 PKI와 통합 필요 시
최소 오버헤드와 최신 암호화가 중요하면 WireGuard(또는 사용자 친화적 제어plane용 Tailscale)가 우수하나, 범용 호환성에서는 OpenVPN이 여전히 우위입니다.
MKController 도움: 수동 터널링과 인증서 관리를 피하고자 하면, MKController 원격 도구(NATCloud)가 NAT/CGNAT 뒤 장치에 중앙 집중식 관리, 모니터링, 자동 재접속 기능을 제공해 개별 PKI 관리 불필요하게 만듭니다.
결론
OpenVPN은 구식이 아닙니다.
호환성과 인증/라우팅 명확 제어가 필요할 때 신뢰할 수 있는 도구입니다.
VPS 및 MikroTik 클라이언트와 결합하면 카메라, 라우터, 내부 서비스에 대해 견고하고 감사 가능한 원격 접근 경로를 제공합니다.
MKController 소개
위 내용이 MikroTik과 인터넷 환경을 더 잘 이해하는 데 도움이 되었길 바랍니다! 🚀
구성을 세밀하게 조정하든 네트워크 복잡함을 정리하든, MKController가 당신의 삶을 더 쉽게 만들어드립니다.
중앙화된 클라우드 관리, 자동 보안 업데이트, 누구나 다룰 수 있는 대시보드로 운영 혁신을 지원합니다.
👉 지금 mkcontroller.com에서 3일 무료 체험 시작하기 — 진정한 네트워크 제어가 어떤 모습인지 경험해보세요.