아이피타임(ipTIME) 공유기 DDNS(Dynamic DNS) 기능으로 내 PC에 도메인으로 접속하기
아주 싸구려가 아닌 이상 대부분 공유기에는 DDNS(Dynamic DNS) 기능이 내장되어 있습니다.
대부분의 공유기 회사가 자체 DDNS 서비스(서버)를 제공하고 있기 때문에 별도의 DDNS 서비스에 등록할 필요 없이 공유기에서 설정하는 것만으로로도 DDNS(Dynamic DNS) 이용이 가능합니다.
국내에서 가장 많이 사용되는 공유기는 아이피타임 공유기입니다.
아이피타임의 대중적인 제품부터 DDNS 기능이 내장되어 있기 때문에 잘 활용하면 외부에서 내 PC의 데이터에 급하게 접근해야 할 경우 유용하게 활용할 수 있습니다.
1. 공유기 DDNS 설정
아이피타임 공유기를 기준으로 간단하게 설명하면 공유기 고급 설정에 들어가면 고급설정-특수기능 메뉴에 DDNS 설정이 있습니다.
아이피타임은 자체 DDNS 서비스를 제공하고 있기 때문에 간편하게 설정 가능합니다.
사용할 호스트이름과 사용자ID(이메일 주소)를 입력한 후 "DDNS등록" 버튼을 누르면 바로 등록됩니다.
호스트는 1개만 등록되며, 이전 등록된 다른 호스트이름은 삭제됩니다.
2. DDNS 호스트 등록 확인
도스 커맨드 창, 또는 파워쉘 창을 하나 엽니다.
아래와 같은 명령어를 입력합니다. 호스트 이름은 자신이 등록한 것을 입력합니다.(DDNS 설정에서 확인)
ping 호스트이름.iptime.org
아래와 같이 핑 응답이 돌아오면 호스트이름.iptime.org 로 공유기까지 연결이 된 것입니다.
이제부터는 바뀌는 공유기 IP를 확인해서 원격접속을 할 필요없이 도메인으로 내 공유기/PC에 연결이 가능합니다.
핑 응답이 돌아오지 않고 타임아웃이 날 경우(요청시간이 만료되었습니다.) 공유기 설정에서 ICMP 를 차단해놓은 것입니다.
보안기능-공유기 접속/보안관리-고급보안설정, 또는 보안기능-기타보안설정 에서 ICMP 인바운드/아웃바운드 차단 설정을 켜거나 끌 수 있습니다.
3. 포트포워딩으로 공유기 원격 접속을 내 PC로 연결하기
공유기까지 도달한 원격 접속 연결, 또는 데이터를 내 PC의 특정 포트로 도달하도록 공유기 포트포워딩(*) 설정을 추가해야 합니다.
예를 들어, 외부에서 내 PC에 올려놓은 FTP 서비스(서버)로 FTP 접속을 하는 경우, 공유기에는 FTP 접속용으로 2121 포트를 열어놓고, 2121 포트로 들어오는 원격 연결과 데이터가 내 PC의 21번 포트로 오도록 하면됩니다.
공유기 단의 원격 FTP 포트를 기본 21번 포트가 아닌 임의의 포트를 사용하는 것은 어디까지나 보안을 위해서입니다.
보안이 왜 중요한지에 대해서는 5번에서 다시 설명합니다.
내 PC의 FTP서비스 기본 포트는 21번 그대로 사용합니다.
FTP 서버 포트 포워딩 설정
아이피타임 공유기 기준 고급설정-NAT/라우터관리-포트포워드 설정 을 열면 포트포워딩 규칙을 관리할 수 있는 화면이 표시됩니다.
하단 입력 폼에 규칙을 설정합니다.
규칙 이름은 "ftpforward", 순위는 "10", 내부 IP 주소는 내 컴퓨터 네트워크 정보를 봐도 되지만 "현재 접속된 IP 주소" 를 체크하면 현재 내 PC IP를 자동으로 입력해줍니다.
외부포트는 2121을 쓰기로 했으므로 "2121~2121로", 내부포트는 "21~21" 로 입력합니다.
이렇게 하면 공유기의 2121포트로 들어오는 연결과 데이터는 내 PC의 21번 포트로 모두 들어오게 됩니다.
"적용" 를 눌러 저장합니다.
원격 데스크탑 연결 포트 포워딩 설정
FTP 포트포워딩 방법과 동일합니다. 외부포트는 임의의 포트(관리상 편하게 33389~33389로 지정), 내부포트는 원격데스크톱 연결 서비스 기본 포트인 3389~3389를 입력하면 됩니다.
이렇게 설정하면 원격데스크톱 클라이언트로 내 PC에 연결할 때, 연결 대상으로 "호스트명.iptime.org:33389" 와 같이 접속 대상 도메인 뒤에 콜론으로 구분해 공유기에 설정한 포트포워딩 포트를 적어줘야 합니다.
일반적으로 널리 알려진 서비스 포트는 다음과 같습니다.
이 포트들은 공유기에서 접속을 허용하는 외부 포트로 사용하지 않는 것이 좋습니다.
포트 |
서비스 |
< 1024 |
20 - FTP Data 21 - FTP 22 - SSH 23 - Telnet 25 - SMPT 53 - DNS 80 - HTTP 110 - POP3 143 - IMAP4 443 - SSL HTTP 587 - SMTP 989 - FTP Data over TLS/SSL 990 - FTP over TLS/SSL 992 - Telnet over TLS/SSL 993 - IMAP4 over SSL 995 - POP3 over SSL |
1433 |
MSSQL |
3306 |
MySQL, MariaDB |
3389 |
원격데스크톱 연결 |
5900 |
VNC |
포트 포워딩 : 공유기, 또는 네트워크 장비단의 특정 포트로 접속하는 IP를 공유기 안쪽, 또는 네트워크 장비 안쪽의 PC의 지정된 포트로 데이터를 보내주는 기능을 말합니다.
잘알려진 서비스 포트로 접속을 시도하는 해킹을 조금이나마 피할 수 있는 방법으로 공유기로 DDNS 기능을 이용할 경우 반드시 사용해야 합니다.
또한 공유기로 접속하는 모든 포트를 1:1로 공유기 안쪽의 내 PC로 포워딩하는 것은 절대 피해야 합니다. 내 PC를 인터넷 상의 공격 대상으로 내놓는 것과 같은 위험한 방법입니다. 꼭 필요한 원격 접속 포트만 개별적으로 무작위 포트로 개방해야 합니다.
4. 내 PC의 방화벽 연결 허용
앞서 FTP와 원격데스크탑 연결을 설정했습니다.
이제 내 PC까지 도착한 원격 연결과 데이터를 문을 열어 받아들여야 합니다.
내 PC에서 실행되고 있는 이 두 서비스는 기본 서비스 포트로 실행되고 있다고 가정하고 방화벽 설정을 합니다.
연결 설정이 모두 되어 있어서, 원격 연결과 데이터가 내 PC까지는 도달하지만 내 PC의 방화벽에서 차단해버리면 접근할 방법이 없게 됩니다.
반드시 내 PC의 방화벽이 올라가 있는지 확인해야 하고, 올라가 있을 경우 공유기에서 내 PC로 들어오는 특정 포트(포트포워딩에서 설정한 내부 포트)의 데이터를 허용(방화벽 인바운드 룰 추가) 해주어야 합니다.
인바운드 방화벽 룰 추가
윈도우 검색 기능으로 "방화벽" 을 검색하면 "고급 보안이 포함된 Windows Defender 방화벽" 이 검색됩니다.
제어판에서 찾을 경우 Windows Defender 방화벽을 실행한 후 왼쪽 메뉴에서 "고급설정"을 선택하면 됩니다.
"고급 보안이 포함된 Windows Defender 방화벽" 설정 프로그램 왼쪽에서 "인바운드 규칙"을 선택한 후 오른쪽 "새 규칙" 을 클릭해 새 규칙을 추가합니다.
예를 든 FTP와 원격데스크톱 연결의 경우 인바운드 규칙으로 아래와 같이 설정을 해주면 됩니다.
서비스 |
포트(프로토콜별 각각 추가) |
연결 |
프로필 |
FTP |
TCP - 20,21 |
허용 |
도메인, 개인, 공용 체크 |
원격 데스크톱 연결 |
TCP - 3389 UDP - 3389 |
허용 |
도메인, 개인, 공용 체크 |
* 포트는 특정 로컬 포트 입력 항목에 쉼표로 구분해 여러개를 입력 가능합니다.
원격 데스크탑 방화벽 설정
다른 서비스의 방화벽 설정과 달리 원격 데스크톱은 조금 특별하게 설정을 해야합니다.
앞서 방화벽에 룰을 추가하는 방법과 달리 원격 데스크톱은 원격데스크톱 연결이 설치되면서 방화벽 룰이 이미 추가되어 있습니다.
따라서 사용 중지 되어있는 이 룰을 활성화만 시켜주면 됩니다.
TCP, UDP 룰 2개를 모두 활성화 시켜야 하고, 마우스 오른쪽 클릭을 해서 컨텐스트 메뉴의 "규칙 사용"을 선택해주면 됩니다.
방화벽 룰이 활성화된 경우 룰 목록 왼쪽에 초록색 체크표시가 표시됩니다.
또는, 제어판-시스템-왼쪽 원결 설정 - 원격 탭의 "이 컴퓨터에 대한 원격 지원 연결 허용" 체크를 해주면 방화벽 룰 2개가 활성화 됩니다.
5. 보안 설정
공유기를 이용해 DDNS 서비스를 이용할 경우 1024 미만 포트로의 연결 허용은 절대 사용하지 말아야 합니다.
반드시 공유기의 포트 포워딩(Port Forwarding) 기능을 이용해 1024 ~ 49151 사이의 알려진 서비스가 사용하지 않는 무작위 포트를 내 PC의 포트로 연결해야 합니다.
1024 미만 포트와 알려진 서비스용 포트, 특히 원격 접속을 위한 기본 포트들(예를 들어 원격데스크톱 연결용 3389 포트)은 공유기단의 포트를 개방해놓은 순간부터 포트 스캔(Port Scan)과 패스워드 무작위 대입과 같은 해킹 공격이 들어옵니다.
어느 특별한 네트워크나 IP 대역에만 해당되는 것이 아니라 24시간 항상 발생하는 현상입니다.
포트스캔 : 해당 포트가 원격 연결을 허용하는 서비스를 실행중인지 포트 연결을 시도하는 것으로, 자동화된 해킹툴은 1024 미만 포트와 알려진 서비스 포트들은 대부분 기본적으로 다 스캔을 한다고 보면 됩니다.