반응형

1. 시작전에~!

저번 포스팅 자료에서도 한번 언급드린것과 같이 아래 두 가지에 대한 조치가 필요합니다.

 

 1) HTTP 통신을 함에따른 접속 암호 및 정보 유출

 2) 우분투 유저가 분리되지 않아 발생하는 강력한 권한

 

각각에 대해서, 조치하지 않을 경우 어떤 문제가 있는지어떻게 조치할 것인지를 다루겠습니다.

 

2. HTTP대신 HTTPS로 설정하기

흔히 HTTP는 보안에 취약하다는 말이 많이있습니다. 먼저 왜, 취약한 것인지를 실제로 확인해보고 이 후 HTTPS로 Code-Server를 다시 구성한 후 차이점을 보겠습니다.

 

2.1 HTTP 통신 확인하기

HTTP 통신은 쉽게생각해서 평문전송이라고 생각하면됩니다. 웹브라우저에 입력되는 값을 별도의 암호화없이 전송하게됩니다.

만약 여러분이 카페에서 서버에 VS Code-Server에 접속하여 코딩을 하고있다고 가정해보겠습니다. 그리고 누군가가 카페에 설치된 공유기를 해킹한 상태라고 가정해보겠습니다.

(많은 카페들이 공유기 관리자 비밀번호를 수정하지 않은 상태로 사용하는 경우가 많기 때문에, 취약한 경우가 많습니다.)

 

해커는 공유기를 통해 연결된 모든 장비(노트북, 스마트폰 등)들의 통신데이터를 감시할 수 있습니다.

위 상황을 가정하고, 와이어샤크를 통하여 제 PC가 VS Code-Server가 설치된 오라클 클라우드와 통신하는 내용을 뽑아보겠습니다.

 

전송되는 패킷내용

위와같이 실제로 전송되는 피킷을 열어보면 친절하게 [패스워드는 ~~~~입니다.]라고 전송하고있는 것을 볼 수 있습니다. 내용을 보시면 아시겠지만, 접속 URL과 Port는 물론이며, Form 데이터에 Item name까지 친절하게 적혀서 전송되기때문에, 해커입장에서는 특정한 값들로만 필터링을 걸어두고 기다리고 있으면 사용자들이 전송하는 다양한 정보들을 쉬득할 수 있는 구조입니다.

 

만약 해커가 password 라는 값 하나로만 필터링을 걸어두고 기다리고 있었다고한다면, 여러분이 VS Code-Server에 접속하는 순간 해커가 서버의 IP와 Port, 그리고 패스워드까지 알게되고 손쉽게 접근할 수 있게됩니다.

 

2.2 HTTPS로 구성하기

위와같은 문제가있기 때문에, 대부분 이러한 서비스를 제공하는 프로그램들은 HTTPS를 이용하여 통신을 할 수 있도록 지원하고있습니다.

더보기

일반적으로 HTTPS를 사용하기 위해서는 먼저 '인증서'라는 것이 필요합니다.

여기서 조금 고민을 했습니다. CA(인증기관)를 통하여 저희서버에서 발급한 인증서가 맞다는 것을 공증받는 형태로 진행할지, 아니면 그냥 사설인증서를 통하여 구성할 것인지...

사용자 입장에서는 후자와 같이 사용할 경우, '신용할 수 없는 인증서입니다'와 같은 메시지가 브라우저 상단에 뜨게됩니다.

고민해봤는데, 일단은 목적이 '개인용'이기 때문에, 이부분은 별도 CA등록없이 진행하도록 하겠습니다. 이부분에 대해서 불편함이 있다면, 추후 내용을 추가하거나 수정하도록 하겠습니다.

VS Code-Server에서 HTTPS 통신을 하는 방법은 간단합니다.

code-server 환경설정 파일에 들어가서 "cert: true"로 변경해주면 자동으로 VS Code-Server가 실행될 때, 파일을 생성합니다.

sudo vi ~/.config/code-server/config.yaml

위와같이 수정 후 code-server를 실행하면 crt파일과 key파일을 생성하면서, 알아서 https로 Code-Server를 실행합니다.

아래와 같이 말이죠.

앞서 말씀드린것 처럼, 인증받지 못한 사이트이기 때문에 웹브라이저에서 경고창이 먼저 뜰 수 있습니다. 무시하고 연결해주시면 됩니다~ㅎ

 

이렇게 해주시고, 다시 와이어샤크로 데이터를 확인해보면, 아래와같이 데이터가 암호화되어 전송되고있는 것을 볼 수 있습니다.

(모든 웹 데이터가 암호화되기 때문에 실제로 저 데이터가 Password를 암호화한 값인지도 확인이 불가능합니다.)

이런식으로 암호화해서 전송되기 때문에, 혹시라도 전송되는 패킷데이터가 제 3자에게 노출되어도 안전하게 통신이 가능합니다.

 

3. User 분리하기

처음 기본으로 제공되는 ubuntu라는 계정은 sudo 권한을 갖고있는, 강력한 유저입니다.

때문에, VS Code-Server에 접근하여, 터미널(메뉴>터미널>새터미널)을 실행하면 이 강력한 권한을 사용할 수 있습니다.

root 권한 획득

위 처럼, 간단하게 root 권한을 취득할 수도 있습니다. 서버의 주인이 바뀌는 순간이죠...

이러한 문제를 해결하기 위해서, sudo 권한이 없는! VSCode를 위한 유저를 만들어줍니다.

 

sudo adduser (유저명)

저는 위처럼 vsapp라는 유저를 만들었습니다. 유저정보는 공백으로 만들었고요. 그리고 해당 유저로 변경한 후 해당 유저의 홈 디렉토리에서 code-server 명령을 수행해보았습니다.

sudo su vsapp       # 유저 변경(ubuntu > vsapp)
cd                  # vsapp의 홈디렉토리로 이동(/home/vsapp)
code-server         # code-server 실행

결과는 아래와 같습니다.

보시는것처럼, 마치 Code-Server를 처음 실행한거 같은 상황입니다.

넵, 맞습니다. 해당 홈 디렉토리는 새로 만들어졌고, 여기에는 설정파일은 물론이고, 좀전에 만든 인증서 파일들도 없습니다 ㅎㅎ

 

저번 포스터에서 중간에 '여기까지만 따라해주시고, 이제부터는 다음 포스터까지 다 보시고 따라와주세요!' 라고한 이유입니다 ㅎㅎ...

 

혹시 그냥 따라오셨다면... 복습하는 마음으로 설정파일을 수정해주세요~ ㅎㅎ

vi ~/.config/code-server/config.yaml

######### 설정파일 내용 ##########
bind-addr: 0.0.0.0:2001
auth: password
password: (사용자 암호)
cert: true

그리고 다시 실행해준 후, 터미널에서 명령어를 실행하면~!

 

위와같이, sudo권한이 없기때문에, 실행할 수 없다는 결과가 뜨는것을 볼 수 있습니다.

 

물론 막 생성된 계정이고, 별도의 권한도 없기 때문에, 해당계정으로는 타 소유주의 파일을 수정/삭제는 물론 폴더에 임의로 파일을 생성하는 것도 불가능합니다.

 

이렇게한다면, 조금은 안전하게 저희 서버를 지킬 수 있을꺼에요... ㅎㅎ

 

여기까지해서 VS Code-Server 구축부분은 일단 마무리하겠습니다.

 

다음에는 슬슬 지루하니, 파이썬+Flask를 이용해서 홈페이지 띄우는 부분을 다뤄보겠습니다~!

 

감사합니다.

반응형
반응형

1. 시작전에

Visual Studio Code Server는 MS에서 만든 VScode를 서버에 설치하여 어디서든, 무엇이든 웹 브라우저와 인터넷만 가능하다면 이를 통하여 접근하여 개발이 가능한 환경을 제공합니다.

다양한 확장 프로그램(플러그인)을 포함하고 있으면서도 나름대로 가벼운 프로그램이기 때문에, 이를 이용하여 서버에 직접붙어 프로그램을 개발하려고합니다.

 

물론 이러한 방식은 '보안'의 입장에서는 별로 좋지 못한 생각이라고 느껴집니다.

차후 운영할 서버에 직접붙어 개발을 하는만큼 악의적인 마음만 있다면, IDE를 통하여 얼마든지 서버를 마음대로 컨트롤 할 수 있기 때문입니다.

 

이는 VSCode 뿐만의 문제가 아니라, Jupyter Notebook Server도 동일합니다. 서버에서는 누가 접속했는지 판단할 수 없는데, 해당 프로그램의 소유자권한이 제한하지 않는 범위에서는 마음대로 터미널 명령들을 수행할 수 있고, 통제가 가능하기 때문입니다.

 

이러한 문제에 대해서도 차후 고민해보고 나름대로 해결방안을 가져가보도록 하겠습니다.

 

2. VSCodeServer 설치

VSCodeServer 설치는 정말 간단합니다.

친절한 개발자분께서 스크립트를 개발해주셨으니까요.

 - 관련된 내용은 다음 링크(https://github.com/cdr/code-server)를 참고해주세요.

 

서버에 code-server 설치는 아래 명령어 한줄이면 끝입니다.

curl -fsSL https://code-server.dev/install.sh | sh

Code-server 설치

위와같이 설치가 완료되면, 이제 설정파일을 수정해주겠습니다.

 

여기까지만 따라해주시고, 이제부터는 다음 포스터까지 다 보시고 따라와주세요!

 

설정파일 위치 :  ~/.config/code-server/config.yaml

( 만약 설정파일이 존재하지 않는다면, [code-server] 명령을 통하여 한번 프로그램일 실행 후 종료해주세요.)

bind-addr: 0.0.0.0:2001
auth: password
password: password_입력     << 실제 접속에 사용될 암호
cert: false

일단은 해당 설정파일을 열어, 위와같이 입력해주시고 저장해주세요. (password는 본인 스스로!)

 

그리고, 외부 접속을 위한 보안설정을 넣어줘야합니다.

 

보안설정은 이전에 말씀드린 것과 마찬가지로, 오라클 클라우드 홈페이지에서 1차적으로 진행해주시기 바랍니다.

(전 포스터 하단에 해당내용이 나와있습니다. 참고해주세용,,,, Link : https://youngq.tistory.com/95)

 

그.리.고!!!

 

우분투 자체에서도 iptables를 통한 보안설정이 필요합니다.

(ufw를 이용한 보안정책이 더 쉽고하긴한데, 오라클 클라우드에서 ufw로 정책을 지원하지 않는건지 적용을해도 잘 안되는것같아 iptables를 이용하게 되었습니다.)

 

iptables 설정과 관련된 부분은 내용이 많아 별도로 차후에 포스팅을 하겠습니다. 그렇기에 일단은 아래내용만 확인해주세요.

 

  ######### 2001번 Port를 목적지로하는 TCP INPUT을 허용하겠다는 내용 #########
sudo iptables -I INPUT 5 -i ens3 -p tcp --dport 2001 -m state --state NEW,ESTABLISHED -j ACCEPT
(NEW : 새로운 연결, ESTABLISHED : 기존 연결에 이어지는 데이터)

  ######### 변경내용 저장 #########
sudo cp /etc/iptables/rules.v4 /etc/iptables/rules.v4.bak        # 원본파일 백업

su -                                                             # root login(root만 수정가능)
iptables-save > /etc/iptables/rules.v4                           # 수정내용 덮어쓰기
exit                                                             # root logout

적용 후 [sudo iptables --list] 명령을 입력하면, INPUT 부분에 아래내용이 추가된 것을 볼 수 있습니다.

위와 같이 설정이 끝난다면, 외부에서도 해당 Port를 통해 접속이 가능한 상태가 됩니다.

 

code-server 명령을 통해 서비스를 실행하고 접속이 잘 되는지 테스트해보겠습니다.

code-server 명령으로 VSCodeServer 실행
정상적으로 연결되는 것을 확인
패스워드 입력시 접속되는 것을 확인

 

위와같이 정상적으로 서버에 설치된 VSCode를 웹브라우저를 통하여 접속할 수 있는 것을 확인했습니다~!

 

짝짝짝!

 

하.지.만~ 문제가 하나 있습니다.

 

이를 이용하여 코드를 구현하는것은 전혀 문제가 아니지만, 역시나 또 보안상에 문제가 조금 남아있습니다.

 

가장 큰 문제는 두 가지입니다.

 1) HTTP 통신을 함에따른 접속 암호 및 정보 유출

 2) 우분투 유저가 분리되지 않아 발생하는 강력한 권한

 

위 두가지 문제는 카페와같은 공용공간에서 악의적인 마음만 먹는다면 손쉽게 여러분의 서버의 IP를 확인하고, VSCodeServer에 접속할 수 있고, 안전한 SSH 접속을 우회하여 마음대로 터미널 명령을 수행 할 수 있습니다.

 

이러한 문제에대한 해결은 다음포스팅에서 다루겠습니다~ 감사합니다.

반응형
반응형

1. 개인용 클라우드 웹?

최근 AWS 뿐만아니라, 여러 기업들에서 퍼블릭 클라우드를 많이 서비스하고 있습니다. 여러 기업들의 경쟁 덕분에 개인도 부담없이 클라우드를 통해 원하는 서비스를 구축 할 수 있는 상황입니다.

 

본격적으로 포스팅을 시작하기 전에 타이틀을 어떤걸로 가져갈까 고민하다가 그냥 직관적으로 "개인용 클라우드 웹"이라는 타이틀을 걸었습니다. 즉, 누구나 쉽게 이해할 수 있는 수준의 웹서버 구축 프로젝트입니다.

 

다만, '개인용' 이라는 말은 붙인만큼 개인의 입장에서 편하게 사용할 수 있을 것이라고 생각되는 몇가지 특별한 기능들을 구현하는 부분이 중점이 된다고 봐주시면 좋겠습니다.

 

이번 프로젝트는 '무료'인 오라클 클라우드를 이용하기 때문에, 한정된 자원을 효율적으로 사용하기 위해 여러 편리한 미들웨어나 불필요하게 무거운 오픈소스들을 지양할 예정입니다~!

 

일단 현재 예상하는 구성은 아래와 같습니다.

 - 오라클 클라우드(웹서버)

 - Python3 + Flask (웹 프레임워크)

 - SFTP (보안 파일송수신)

 - SQLite (Lite DB)

 - ChromeDriver (웹 자동화)

 - VSCodeServer (개발 IDE)

 - Jupyter Notebook (파이썬 개발)

 

편리함과 서버부하 등을 고려하여 선택하였습니다. 프로젝트를 진행하며, 이부분은 변경이 될 수 있습니다.

 

 

2. 오라클 클라우드 Free Tier 소개

퍼블릭 클라우드라고하면 아마존의 AWS와 MS의 Azure 그리고... 국내는 네이버 NCP 정도가 대표적이라고 생각됩니다.

오라클 클라우드는 상대적으로 이러한 퍼블릭 클라우드에 비하면, 다소 생소한 면이 있습니다.

하지만, Free Tier 정책에서는 다른 퍼블릭클라우드와 비교해도 충분히 좋은 스팩을 제공하기 때문에 해당부분만 잠깐 살펴보고 본문으로 들가겠습니다.

 

가장 큰 장점인 "무제한 무료"인 Free Tier 정책입니다.

출처 : 오라클 클라우드 홈페이지

물론 무료로 제공되다보니 리소스가 풍족한 것은 아니지만, 개인용으로 사용하기에는 충분한(?) 스팩이라고 생각됩니다.

 

위에 무료 클라우드 서비스의 장점이 나와있는 것을 볼 수 있습니다. 제가 이것들 중에서 마음에 드는것을 뽑으면~

 - 200GB 스트로지 용량 (AWS Free Tier : 5GB)

 - 2VM 무제한 무료 (AWS Free Tier : 750Hours/Month)

 - 매월 10TB의 데이터 송신 (AWS Free Tier : 50GB)

 

아마존의 AWS와 비교해보면 오라클에서 제공해주는 리소스가 얼마나 훌륭한지 알 수 있으실거 같습니다.

 

3. VM 만들기

먼저 오라클 클라우드 가입이 선행되어야합니다. 가입은 오라클클라우드 홈페이지(https://cloud.oracle.com)에서 진행합니다.

 

Oracle Cloud Infrastructure

 

cloud.oracle.com

가입과 관련된 부분은 큰 어려움이 없을거라 생각하고, VM 생성 부분으로 바로 넘어가겠습니다.

로그인 후 왼쪽 상단에 메뉴바를 누른 후 [컴퓨트 > 인스턴스]로 들어가주세요. 그리고 [인스턴스 생성] 버튼을 눌러 인스턴스를 생성해보겠습니다.

 

3.1 이름 설정

인스턴스 이름과 구획을 설정해줍니다. 이름은 말 그대로 인스턴스를 구분해주는 값으로 원하는 이름으로 설정해주시면됩니다.

구획은 여러 네트워크와 VM들을 감싸고있는 구획이라고 생각하시면 될 것같습니다. 저는 루트에 만들어 서비스하겠습니다.

 

3.2 OS 이미지 설정

다른 부분은 특별히 건들이지 않고, OS만 Ubuntu로 변경해주었습니다. 처음에는 오라클 리눅스를 사용할까 했지만, 많은 분들이 우분투에 익숙하신거 같아, 해당환경으로 진행하겠습니다. (원하시면 다른 OS로 진행하셔도 무관합니다.)

 

3.3 네트워크 설정

신규로 인스턴스를 생성하게되면, VNC(가상 클라우드 네트워크)와 하위 서브넷을 생성해줘야합니다.

설정하는 이름 역시도 인스턴스 이름과 같이 구분하는 용도로 사용하는 것이기 때문에 적당히 만들어주세요.

 

네트워크별로 보안설정등이 들어가기 때문에, 추후 다른 서비스를 위한 VM 구성시 오인하지 않도록 이름을 정해주면 좋습니다.

 

3.4 SSH 키 추가하기

일반적으로 대부분의 클라우드 서비스 제공자들은 SSH를 통한 접속에는 보안상의 이유로 Key 파일을 사용하도록 하고있습니다.

더보기

SSH와 같은 보안통신에서는 주로 공개키(Public Key)와 개인키(Private Key)를 통해(=비대칭키를 이용한 통신) 대칭키를 교환하고, 이를 이용한 암호화 통신을 이용하게됩니다.

 

공개키는 원본데이터를 암호화 할 수 있고, 개인키는 해당 데이터를 복호화 할 수 있습니다.

또한 개인키는 원본데이터에 전자서명을 넣을 수 있고, 공개키는 해당 전자서명을 검증 할 수 있습니다.

 

이를 이용하여, 서버와 클라이언트는 서로가 믿을 수 있는 사용자인지 판단할 수 있고, 안전하게 대칭키(암호화와 복호화가 둘 다 가능한 키)를 교환하여, 이를 이용해 서로 데이터를 송수신하게됩니다.

 

공개키와 개인키만을 이용해도 안전한 통신이 가능하지만, 알고리즘이 복잡하여 대칭키통한 통신보다 매우 느리기 때문에, 비대칭키를 이용한 통신은 주로 대칭키를 안전하게 교환하기 위한 수단으로 사용됩니다.

일반적으로 '자동으로 키 쌍 생성' 또는 '공용 키 붙여넣기'를 통해 SSH 키를 생성/설정 하여 사용하게 되는데요.

 

저는 후자를 추천합니다. 이유는 비밀키를 생성하는 과정에서 사용자가 암호를 설정 할 수 있기때문에, 만약 비밀키가 노출된 경우에도 암호를 모르면 접속할 수 없기 때문입니다.

PuttyGen 을 이용하여 Generate하고 사용하실 암호를 입력해주시면됩니다.

[Save private key]를 통해 비밀키는 개인 PC에 안전하게 보관해주시고요.

빨간색으로 색칠된 부분이 공개키 부분이니 복사하여 주신 후 아래 부분에 넣어주시면 됩니다.

 

3.5 부트 볼륨 설정

얼마전까지는 볼륨 스토리지는 최대 2개에 100GB였는데, 최근 200GB로 늘어난거 같습니다.

앞으로 새로운 VM을 만들계획이 있기 때문에, 저는 150GB를 할당해주도록 하겠습니다.

 

이 후 완료해주시면 아래와같이 인스턴스가 자동으로 생성되고 실행되는 것을 보실 수 있습니다~

 

4. SSH 접속확인

SSH로 클라우드에 접속하는 방법은 간단합니다. 인스턴스가 생성된 후 보이는 [인스턴스 액세스] 부분에 나와있는 공용 IP주소와 사용자 이름, 그리고 이전에 만들어준 비밀키만 있으면 됩니다.

Putty 접속은 위와같이 넣어주시면 됩니다.

Host 정보이는 [사용자이름@IP주소] 그리고 Auth 부분에 비밀키를 넣어주시면 됩니다.

 

접속하시면 위와같이 비밀번호를 입력하라는 부분이 나오는데, 이전에 설정한 비밀키의 비밀번호를 넣어주면됩니다.

 

이 후 접속하게되면 위와같은 화면을 보실 수 있습니다.

보이시는데로, 일부 Boot 데이터를 제외한 145GB의 용량이 남아있는 것을 보실 수 있으며, 여기에 앞으로 여러가지를 넣어보도록 하겠습니다.

 

 

 

5. 네트워크 보안 설정

[컴퓨트 > 인스턴스 > 인스턴스 세부정보] 부분을 보게되면, '네트워크 보안그룹' 이라는 부분이 있습니다.

'없음'으로 되어있는 것을 확인하실 수 있는데요. 이는 해당 VCN의 보안목록상 Default Security List에 종속된다고 볼 수 있습니다.

 

Default Security

기본적으로는 위와같이 수신에 대해서는 22번(SSH)와 ICMP를 제외한 모든 프로토콜이 막혀있는 것을 볼 수 있습니다.

 

오라클에서는 크게 두 가지 보안방식이 존재합니다.

 1) VCN 보안 목록

 2) 네트워크 보안 그룹

 

먼저 VCN 보안목록은 VCN에 속해있는 특정한 서브넷에 대한 보안정책을 설정합니다. 즉, 하나의 VCN에 두 개 이상의 서브넷이 존재할 경우, 각각의 서브넷별로 보안정책을 넣어줄 수 있다는 것을 의미합니다.

 

네트워크 보안 그룹은 특정한 인스턴스가 해당 보안그룹에 속하여 있는지 여부에 따라서 보안정책 적용여부가 판단됩니다. 때문에 소규모의 서버를 운영하고 각각의 인스턴스별로 보안정책을 적용하고 싶다고한다면, 네트워크 보안그룹을 통하여 보안정책을 설정하는편이 유리할 수 있습니다.

 

여기서 알아둬야할 부분은, VCN 보안목록이든 네트워크 보안그룹이든 가상방화벽이 네트워크에 존재하여 보안정책을 걸어준다는 개념과는 거리가 있습니다.

 

두 가지 경우 모두, 보안정책이 적용되는 대상의 VNIC에 보안정책이 걸리게됩니다. 따라서, 만약 특정한 인스턴스가 속해있는 네트워크 보안 그룹에서 SSH를 허용하지 않고 있다고 하여도, 해당 인스턴스가 속해있는 VCN 보안목록에서 해당 서브넷에 대하여 SSH를 허용하고 있다면, SSH 연결이 가능하게됩니다.

 

때문에, 저는 VCN은 기본적인 설정만 유지한 상태로 네트워크 보안그룹을 통해서 인스턴스의 보안정책을 설정하도록 하겠습니다.

 

다만, 이부분에 대해서는 여러 논쟁거리가 될 수 있기때문에, 어떤방식으로 보안설정을 할지에 대해서는 여러분의 선택에 맞기겠습니다~!

 

(위 내용은 오라클내 메뉴얼 및 작성자의 테스트를 기반으로 작성하였습니다. 일부 틀린내용이 있을 수 있으며 관련 댓글 부탁드리겠습니다. 감사합니다.)

 

5.1 네트워크 보안 그룹 추가

먼저 아래 화면으로 이동하여 [네트워크 보안 그룹 생성] 을 눌러주세요.

이 후 보안그룹 이름은 원하시는데로 설정하시고 보안정책을 넣으면 됩니다. 현재는 다음시간에 다룰 VSCode-Server에서 사용할 포트에 대하여 보안정책을 넣어주겠습니다.

 

일반적으로 VSCode Server와 같은 프로그램들을 사용자가 원하는 포트를 사용할 수 있도록 설정할 수 있습니다. 이때 주의할 부분은 설정하는 포트의 번호입니다.

 

여러 핵심적인 프로토콜들은 특정 포트를 독점적으로 사용하고 있기때문에, 이러한 포트를 임의로 사용자가 관리자권한을 통하여 점유해버리면 해당 프로토콜이 정상적으로 작동하지 못하는 문제가 발생합니다. 때문에 이러한문제를 방지하기 위하여 IANA에서 지정한 번호는 피해주도록 합시다.

 

일반적으로 아래 well-known port만 피해주면 큰 문제는 없습니다.

  • 0번 ~ 1023번: 잘 알려진 포트 (well-known port)
  • 1024번 ~ 49151번: 등록된 포트 (registered port)
  • 49152번 ~ 65535번: 동적 포트 (dynamic port)

Registered port 라고해서 약 4.8만개의 포트를 적어두었지만, 공식적으로 알려진 포트들은 두 자릿수에 불과하며 실제 서버단에서 이용할 경우 충돌이 발생할 수 있는 것은 mysql(3306) 정도이기 때문에 큰 고민없이 쓰셔도 괜찮을것 같습니다.

 

다시 본론으로 돌아와서 VSCode Server에는 2001번 Port를 할당해줄 예정입니다. 따라서 TCP 2001에 대해서 InBound 허용을 설정하겠습니다.

 

위와같이 설정하고 저장해주시면 해당 네트워크 보안그룹에 대해서 2001번 포트를 목적지로하는 요청은 허용한다는 의미가 됩니다.

 

이 후 인스턴스 부분으로 돌아와서 아래와같이 네트워크 보안 그룹에 대한하는 보안그룹을 넣어주면 설정이 끝이나게됩니다.

 

오늘은 여기까지~

 

특별히 어려운점은 없었을 것같습니다... 혹시 어려운 부분이 있었다면 댓글 부탁드리겠습니다.

 

감사합니다~

반응형

+ Recent posts