본문 바로가기

컴퓨터&인터넷

원격데스크탑 연결과 공유기 설정 - 간단한 기본 포트 개념과 방화벽 설정


공유기로 연결된 PC나 노트북, 스마트폰 들 간에 원격데스크탑으로 연결하기 위한 간단한 기본 개념과 설정법을 정리 해둠.



+ 공유기는 가입한 인터넷 회선의 ip주소인 「공인ip/유동ip/고정ip」 를 받아서, 공유기 내부에서 공유기와 연결된 각 기기들로 「사설 ip」 를 분배한다.


+ 「공인 ip」는 가입한 인터넷 회선별로 고유한 주소를 갖고 있지만, 「사설 ip」는 공유기 제조 업체별로 고유주소가 있거나 공유기 표준 ip 주소를 가지고 있다.

- 공유기 표준 ip 주소 : 192.168.***.***


+ 공유기는 랜케이블로 직접 연결되어 있거나 무선 와이파이로 연결된 각 기기로 '사설 ip'를 부여해 하나의 인터넷 회선을 동시에 사용할 수 있게 할 뿐만 아니라 방화벽 기능도 하게 된다.

그래서 외부에서 접속하려면 윈도우 같은 운영 체제에 설치된 방화벽 설정 뿐만 아니라 공유기 자체 설정도 해야된다. 


+ 공유기에 연결된 모든 기기들의 ip 주소나 포트들을 「내부 ip주소 / 내부 포트」 라고 한다.

- 192.168.0.3:8080 같은 형식의 주소에서 콜론(:)뒤에 붙는 숫자가 포트 번호


+ 「외부 ip주소」나 「외부 포트」는 공유기로 연결되어 있지 않은 기기에서 공유기에 연결된 기기로 접속할 때 사용되는 통로다.


- 예를 들어 공유기 와이파이 무선 신호로 사용하는 스마트폰에서 같은 공유기에 연결된 데스크탑이나 노트북 같은 기기들로 접속하려면 내부 주소와 내부 포트를 통해 접속하게 된다.

LTE 데이터망을 통해 접속한다면 외부 주소와 외부 포트를 통해 접속해야 한다.

스마트폰 와이파이 주소는 공유기의 사설 ip주소인 192.168.*** 로 되어있고

LTE 망 ip 주소는 기기마다 다르게 부여된 고유한 공인 ip 주소.

- 내부 ip 주소와 내부 포트를 통한 접속은 별도의 방화벽 설정이나 공유기 설정이 필요없다.

- 외부 ip 주소와 외부 포트를 통해 접속하려면 운영체제의 방화벽 뿐만 아니라, 공유기 자체 설정도 해줘야한다(포트포워딩, DMZ 등).


+ 공유기의 자체 방화벽 기능으로 인해 외부에서 내부로 접속하려면 공유기에서 접속하는 문을 열어줘야하는데, 이 문이 되는 경로를 포트라고 한다.


+ 내부에서 내부로 접속하려고 할때는 (같은 공유기에 연결된 기기들 간 접속) 경로가 되는 특정 내부 포트를 설정해주지 않아도 된다.

하지만 윈도우 방화벽이나 따로 설치한 사설 방화벽에서 포트나 접속 프로그램을 막고 있는 경우가 있어서 방화벽 소프트웨어 설정에서 포트를 열어줘야 할 때도 있다.


예를 들어 윈도우 원격 데스크탑(RDP) 같은 경우, 사설 방화벽을 사용하면 RDP 원격 접속 포트인 3389번을 막아둔 경우가 있다.

그럴때는 사설 방화벽 설정에서 시스템 파일인 svchost 설정으로 들어가 tcp in에 3389 포트만 허용해주면 된다.


+ 외부 포트는 공유기 기본값으로 보안상 모두 막혀있다.

내/외부 포트를 일일히 지정해서 접속하는게 귀찮으면 DMZ같은 설정으로 아예 모든 포트를 개방해버리면 되지만 보안상 안좋다.


+ 특정 포트 번호를 지정해서 개방하는걸 포트포워딩이라고 한다.


+ 포트포워딩할 때 내부 포트는 공유기에 연결된 각 기기들의 포트를 말한다.

외부포트는 공유기에 연결되어있지 않은 외부 기기에서 접속할 때 공유기에서 받아들이는 포트다.


예를 들어 외부 기기에서 특정 포트를 설정해서 공유기에 연결된 내부 기기로 접속하는 상황이라면

외부 기기에 있는 접속 프로그램(클라이언트)에서 입력하는 주소는 192.168.0.3:3389 (내부 기기의 ip 주소와 포트 통로)가 된다.

내부 기기의 프로그램(서버)과 운영체제의 방화벽은 접속을 시도하는 클라이언트 프로그램에서 요청하는 포트를 열어줘야 한다.


뿐만 아니라 공유기 자체 설정에서도 외부포트인 3389 와 내부포트인 3389를 모두 지정해서 열어주면 된다.

공유기 자체 설정(포트포워딩)에서 외부 기기의 외부 포트 번호는 보안상 변경해주는게 좋다.

만일 자주 사용되지 않는 번호인 뒷자리 23456 을 외부포트로 해서 접속하려고 한다면 공유기 포트포워딩 설정은

외부포트=23456 / 내부 포트=3389 로 해줘야 한다.

내부포트는 서버나 클라이언트 같은 접속 프로그램이 사용하는 고유 통신 프로토콜이 있을수도 있어서 변경하지 못하게 되어있는게 많다. 윈도우 원격데스크탑의 통신프로토콜인 RDP가 사용하는 3389번이 그렇다.

TCP나 HTTP 같은 형식으로 접속하는건 그런 제약이 없어서 내/외부 포트 번호를 변경할 수 있다.


그리고 나서 외부 기기에서 192.168.0.3:23456 을 입력하면, 공유기에서 23456 포트로 접속하는 클라이언트 프로그램에 접속을 허용하고 내부 기기인 192.168.0.3 주소를 가진 내부기기의 서버 포트인 3389으로 포트를 포워딩해주게 된다.


+ 공유기에 연결된 내부 ip주소를 가진 기기들 간에 원격 접속하려면 내부 포트를 사용하게 되는데, 따로 공유기 설정에서 포트를 설정해주지 않아도 된다.

원격데스크탑의 경우 기본 포트는 3389다. 이 포트값은 변경하지 못하게 되있는데 레지스트리 수정으로 기본값 변경이 가능하다. (위 더보기 링크 참조)


기본 포트값으로 한 공유기에 연결된 내부 기기들간에 접속하려면 원격데스크탑 접속 프로그램을 실행해서 주소에 192.168.***.*** 같은 주소만 입력하면된다.

원격데스크탑 포트를 수정했다면 접속 주소를 192.168.***.***:12345(변경한포트번호) 로 입력해야 한다.


+ 윈도우 원격데스크탑을 외부 기기에서 내부 기기로 접속하려면, 일반적으로 공유기 포트포워딩 설정에서 외부 포트를 3389로 지정해주면 된다.

윈도우에서 원격데스크탑(RDP/mstsc.exe) 포트 번호를 수정했다면 외부 기기에서 원격데스크탑 접속 시 "192.168.***.***:포트번호" 를 입력하면 된다.


+ 특정 프로그램이 사용하는 기본 포트는 정해져 있는 경우가 많다.

개인적으로 사용하려고 바꿀려고하면 원격데스크톱처럼 복잡하게 수정해야 하고, 프로그램 제작사 서버(게임 제작사의 멀티플레이어 서버 등)와 연계되어 있으면 변경이 안되는 경우도 있다.

그래서 내부 포트는 일반적으로 기본값 그대로가 가장 안정적이고 좋다.


+ 보안상 외부포트만 변경하면 된다.

외부포트 변경 시 웹같은 다른 프로그램이 많이 사용하는 낮은 포트번호를 피해 5자리 정도의 아무 숫자나 입력하면 된다.


+ 정리

내부 - 랜케이블이나 와이파이로 공유기에 연결된 '내부 기기'들 간의 접속에 사용되는 ip나 포트.

외부 - 다른 인터넷 회선에 연결된 '외부 기기'에서 공유기에 연결된 기기들로 접속할 때 사용되는 ip나 포트.