본문 바로가기
컴퓨터/네트워크

[리눅스] 가상 OS-웹 개발💻3 | VirtualBox 6 + CentOS 8 | linux _외부/내부망 네트워크 설정

by 버니케이 2024. 5. 28.
반응형

 

 

 

이전글 목록

CentOS Stream과 미러 사이트 의미, iso 파일 종류설명 https://gallery-k.tistory.com/454
Java 프로젝트 개발에 맞는 CentOS 설정 https://gallery-k.tistory.com/455

 

 

 

네트워크 초기 설정

 

 

금융권 개발은 보안이 중요하기 때문에 (금융권이 아니더라도 보안이 중요한 회사라면은)

외부망/내부망 네트워크가 나눠져있다.

내부망에서 개발을 진행하고, 개발이 완료된다면 외부망의 깃이나 타 서버와 연동해서 프로젝트 배포하는 식이다.

 

 

 

그래서 개발용 리눅스 서버에 외부망 네트워크, 내부망 네트워크를 각각 세팅해줘야 한다.

NAT 호스트 전용 어댑터
외부 인터넷 연결용 SSH 접속용 어댑터(내부)

 

 

 

세팅할 OS 를 우측클릭 후 설정 클릭

(OS 이름 바뀐거는 무시....)

 

 

 

네트워크 탭으로 이동해주면 어댑터 1~4까지 있는 탭을 볼 수 있다.

첫번째 탭은 NAT 연결이고, 외부망 연결용 네트워크 어댑터이다.

 

 

 

 

 

 

어댑터 2 로 이동해서

연결방법을 호스트 전용 어댑터

이름을  VirtualBox Host-Only Ethernet Adapter

를 선택해준다.

이 어댑터는 내부망 연결용 어댑터이다.

 

 

 

 

 

확인을 눌러 적용시켜준 후 매인 화면으로 나가 광학드라이브를 제거해준다.

 

 

 

 

 

 

여기까지 완료되었으면 os 를 실행해준다.

root 계정으로 로그인해준 후 다음 명령어를 입력한다.

다음과 같이 enp0s3, enp0s8 두 어댑터를 확인할 수 있다.

네트워크 설정 디렉토리로 이동 후에 두 어댑터 상세설정을 해줘야 한다.

(system config network tui 를 이용해 GUI 환경에서 작업해도 되지만 콘솔로 하는게 더 낫다.)

 

 

 


네트워크 세부 설정

 

 

/etc/sysconfig 경로로 이동한다.

cd /etc/sysconfig

sysconfig  경로의 주요 항목들이다.

network-scripts - 네트워크 인터페이스 구성 파일들이 포함된 디렉토리
network - 전체 시스템 네트워크 설정을 위한 파일
iptables - 방화벽 설정 파일
selinux - SELinux 보안 정책 관련 파일(링크)

 

 

 

 

network-scripts 로 들어가서 파일을 확인해준다.

cd network-scripts
ls -al

ifcfg-enp0s3 하나밖에 없는 것을 볼 수 있다.

아까 nmtui 명령어로 확인한 대로 ifcfg-enp0s8 파일도 만들어서 어댑터 설정을 해줘야 한다.

밑의 명령어들은 그대로 긁어서 사용이 가능하다.

 

 

 

 

우선 ifcfg-enp0s3 어댑터 파을 vi 명령어를 통해 수정해준다.

vi ifcfg-enp0s3

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
NAME=enp0s3
DEVICE=enp0s3
ONBOOT=yes

 

다 입력했으면 :wq! 저장후 종료를 해준다.

 

 

enp0s3 을 복사해서 enp0s8 파일을 만들어준 후 마찬가지로 수정해준다.

cp ifcfg-enp0s3 ifcfg-enp0s8

vi ifcfg-enp0s8

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
PREFIX=24
IPADDR=192.168.56.111
GATEWAY=192.168.56.1
DNS1=8.8.8.8
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
NAME=enp0s8
DEVICE=enp0s8
ONBOOT=yes

(ip, gateway는 회사 환경이나 자신 환경에 맞게 세팅해도 되고 그냥 따라쳐도 된다.)

 

 

 

여기까지 세팅이 완료되었으면 시스템을 재부팅해서 적용을 시켜줘야 하는데

근데 여기서 보안 설정을 해줘야 하는 경우도 있다.

(보통 내부망은 selinux 정책을 사용안함 설정 후 방화벽을 끈다.)

 

 

 


 

selinux 정책 사용안함 설정

중간에 언급했던 /etc/sysconfig 경로로 이동한다.

selinux는 리눅스 시스템의 보안을 강화하기 위해 사용되는 보안 아키텍처이다.

이걸 끄면 selinux 에 의한 어떠한 엑세스 제어도 수행하지 않게 된다.

 

 

cd /etc/sysconfig

vi selinux

 

중간의 SELINUX= disabled 로 변경해준다.

:wq!

 

 


정책 사용안함 변경처리 한 김에 방화벽도 꺼준다.

회사 정책에 따라 다르니 패스해도 된다.

 

sudo systemctl stop firewalld
sudo systemctl disable firewalld

 

참고로 방화벽 상태 확인하는 명령어는 다음과 같다.

sudo systemctl status firewalld

 

 


 

연결 테스트

 

 

네트워크 설정, selinux 설정, 방화벽 설정이 다 완료되었다면

다음 명령어를 통해 서비스를 재시작한다.

systemctl restart NetworkManager
reboot

 

 

 

외부망 테스트

 

reboot 까지 하면 os 전원이 껐다 켜진다.

root 계정으로 재로그인 후 ping을 보내 외부 통신을 확인한다.

ping 8.8.8.8

 

(8.8.8.8은 구글에서 제공하는 DNS 서버이다.)

이렇게 핑 전송 정보가 찍히면 정상적으로 연결된 것이다.

 

 

 

 

내부망 테스트

SSH 프로그램 하나를 설치한다.

푸티를 깔아도 되고 xshell을 깔아도되고...

(개인적으로 작업할때는 xshell이 편함)

 

xshell 로 작업한다고 가정하고

처음 켰을 때 새로만들기 버튼을 눌러준다.

 

 

이름은 원하는대로 입력해주고

프로토콜은 SSH

호스트는 상단 enp0s8 에서 입력한 ipaddr 의 값을 입력해준다.

입력 프로토컬 버전은 IPV4 를 선택해도 되고 자동을 선택해도 된다.

 

 

 

입력완료 후 연결버튼을 누르면

사용자 정보를 입력하라는 화면이 나온다.

 

 

 

root 계정과 비번을 입력하면 접속이 되는 것을 알 수 있다.

 

 

 

연결이 안되는 분들은 네트워크 설정(vi 로 수정해준 부분)에

오타때문일 수도 있어서 다시한번 확인해준다.

 

반응형

댓글