bridge를 활용해서 ssh를 사용하려고 하면 기본 포트로 바로 접속할 수 있다. 그런데 nat로 접속하는 법이 검색해도 잘 나오지 않아서 내가 써본다.
우선 네트워크를 nat으로 구성했을 때 ssh를 사용하기 위한 포트포워딩 방법!
nat는 vmware에 깔려 있는 우분투가 vmware가 설치되어 있는 기기의 Ip를 사용하는 방식이라고 이해하면 된다. (나의 경우 맥 위에 vmware을 깔았다. 앞으로는 호스트 머신이라고 지칭하겠음)
그래서 nat을 이용하면 호스트 머신의 ip와 포트를 이용해야하는데 이 부분을 설정해주는걸 포트포워딩이라고 이해하면 될 거 같다.
호스트머신의 ip : 호스트머신의 특정 포트를 사용하면 vmware 안에 있는 우분투 ip: 우분투의 특정 포트로 연결하겠다!! 를 설정하는 것이다.
- host port: 호스트 머신의 어떤 포트를 사용해서 우분투에 접속할지 적으면 된다. 나는 9999로 설정했다.
- virtual machin IP: 우분투에서 ip addr를 쳤을 때 나오는 ip 주소 입력하자
- virtual machine port: 우분투 ssh에서 사용하고 있는 포트 번호 입력하자. 나는 sshd_config에서 222로 설정해줬다. (기본이 22)
- descriptsion: 이건 그냥 설명이니까 마음대로 입력하자.
여기서 만약 호스트 머신의 ip가 111.111.111.111이고 우분투의 ip가 0.0.0.0이라고 가정하면
호스트 머신에서 우분투로 접속하기 위해서는
$ userid@111.111.111.111 -p 9999
를 입력해주면 된다.
그럼 내가 잡은 설정에 의해서 111.111.111.111의 포트 9999로 들어온 연결은 0.0.0.0의 포트 222로 연결되기에 우분투의 ssh로 연결된다!!! 헉헉.... 어렵다 ㄱ-
다음으로 apache를 외부에서 접속하는 법에 대해 alaboza
아파치의 기본 포트 번호는 80이다.
다시 한 번 반복해보겠다
우리는 호스트머신의 ip : 호스트머신의 특정 포트를 사용하면 vmware 안에 있는 우분투 ip: 우분투의 특정 포트로 연결하겠다!! 를 설정해야한다. 그러니 이 부분을 네트워크 설정에 추가해주자
- host port: 호스트 머신의 어떤 포트를 사용해서 우분투에 접속할지 적으면 된다. 나는 8888로 설정했다.
- virtual machin IP: 우분투에서 ip addr를 쳤을 때 나오는 ip 주소 입력하자
- virtual machine port: 우분투 apache에서 사용하고 있는 포트 번호 입력하자. 나는 기본 그대로 놔뒀기에 80을 입력했다.
- descriptsion: 이건 그냥 설명이니까 마음대로 입력하자.
그 다음!!!! 우리는 외부에서 우리 아파치 서버에 접속하게 해줘야하기 때문에 공유기(라우터)도 포트포워딩 설정을 해줘야 한다.
(여기가 좀 헷갈린다)
우선 공유기에 들어가서 포트포워드 설정에 들어가준다
그 다음 규칙을 추가해줄 수 있는데
우리 컴퓨터의 ip는 사설 ip로 외부에서 접속해줄 수 없다. 근데 우리가 sk같은 회사랑 계약한 회선은 다른 사람들이 들어올 수 있는데 그게 공유기(라우터)이기 때문에 공유기로 들어온 사람들 중 특정 포트로 들어온 사람은 A라는 ip의 특정 포트로 가시오~를 설정해 줄 수 있다. 이게 지금부터 우리가 할 공유기에서의 포트포워딩 설정이다
- 규칙이름 : 아무거나 해주자
- 내부 ip주소 : 공유기로 들어온 사람에게 안내할 ip주소. 우리는 호스트 기기의 ip를 입력해주면 된다. (맥이면 ifconfig 사용 윈도우는 ipconfig사용?? 윈도우는 잘 모름ㅜ, 호스트 기기에서 설정하고 있는거라면 현재 접속된 ip 주소 체크해주면 된다 그럼 알아서 ip 잡힘)
- 외부포트 : 공유기의 특정 포트로 들어온 사람들!!!! 어디로 가세요~ <- 에서 특정 포트를 담당한다. 나는 7777으로 설정해줬다.
- 내부포트 : 호스트 기기의 특정 포트로 가세요!! <- 에서 호스트 기기의 특정 포트를 담당한다. 이 부분이 좀 헷갈릴 수 있는데 vmware에서 네트워크 설정할 때 잡아준 8888로 설정하면된다.
자 잘 생각해보자. 공유기에서 하는 일은 공유기로 들어온 사람들아~ 특정 Ip의 특정 포트로 가세요~~ 를 가이드 해주는거다. 그런데 생각해보면 우리가 vmware를 nat로 잡았기 때문에 vmware의 ip를 개별적으로 인식하지 못한다. 그래서 우리가 위에서 호스트 기기 Ip의 특정포트로 들어오면 이걸 바로 vmware 우분투로 연결해주게끔 설정을 했다.
그래서 공유기ip,포트 -> 호스트ip, 포트 -> vmware ip,포트 를 설정해줘야 했는데 공유기에서는 첫번째 화살표를 설정해주는거고 vmware에서 네트워크 설정은 두번째 화살표를 설정해주는거다. 이게 다 vmware ip를 개별적으로 인식하지 못하기 때문... (이니 나처럼 개고생하지 말고 브릿지를 사용하면 훨씬 간단해진다...ㅠㅠ)
여기까지 왔다면 다 했다!!
이제 시스템 정보에서 외부 ip 주소를 알아보자 (다른 사람들이 인식할 수 있는 공유기 주소인데 네이버에 쳐도 나온다)
내꺼는 122.0.0.0이어서 웹 브라우저에 122.0.0.0:7777 이거 딱 누르면
웹이 내 공유기의 7777 포트로 들어오고 --> 공유기는 7777로 들어온걸 호스트 기기의 8888로 --> 내 컴퓨터는 8888로 들어온걸 vmware의 80포트로 이어줘서 html 바로 뜬다!
다했다~~~~~~~~~~~~~~!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
여기까지 읽으신 분들 모두 수고하셨슴다ㅎㅎ
'CS공부 > 리눅스' 카테고리의 다른 글
맥에서 가상머신 우분투로 ssh 연결 안될 때, operation timed out 뜰때 (0) | 2023.03.05 |
---|---|
m1 맥북에 우분투 데스크탑 설치하는 법 (0) | 2023.02.28 |
iso파일 vmware fusion에서 인식, 설치 안됨 (pxe e16 no offer received, start pxe over ipv4 에러) (0) | 2023.02.26 |
맥에서 vmware fusion ip 확인하고 서브넷 ip 설정하는 법 (0) | 2023.02.25 |
댓글