RHCSA 8일차
Chapter 6. Networking
Jun Noh
RHEL 9에서 네트워크 관리의 핵심은 NetworkManager다.
이제 더 이상 구식 스크립트를 만지지 않는다. nmcli는 이 데몬을 제어하는 가장 강력한 무기다.
nmcli의 계층 구조 (Device vs Connection)
device: 실제 눈에 보이는 물리적 랜카드(NIC). (예:ens160,eth0)connection: 해당 장치에 입힐 ‘설정 프로필’. 장치 하나에 여러 프로필을 만들고 상황에 따라 갈아끼울 수 있다.
2. nmcli connection add 옵션 파헤치기
고정 IP를 할당할 때 사용하는 nmcli connection add 명령어의 인자들은 실무에서 매우 중요하다. 하나라도 틀리면 통신이 안 된다.
| 인자 (Arguments) | 상세 설명 |
|---|---|
con-name | 프로필의 별칭. 관리자가 식별하기 좋은 이름을 쓴다. |
type ethernet | 유선 이더넷 환경임을 명시한다. |
ifname | 이 설정을 적용할 실제 물리 장치 이름. |
ipv4.addresses | 할당할 IP 주소와 CIDR 표기법 서브넷(예: 10.0.2.100/24). |
ipv4.gateway | 외부망으로 나가는 게이트웨이 주소. |
ipv4.dns | 도메인 해석용 DNS 서버 서버 주소 (예: 8.8.8.8). |
ipv4.method manual | 핵심! 이걸 manual로 해야 고정 IP가 할당된다. (기본값은 auto/dhcp) |
autoconnect yes | 부팅 시 자동으로 이 연결을 활성화한다. 서버 환경에선 필수다. |
- 설정 변경 시:
nmcli con mod <프로필명> +ipv4.dns 1.1.1.1처럼+기호를 쓰면 기존 설정을 유지하면서 추가할 수 있다. - 적용: 수정 후엔 반드시
nmcli con up <프로필명>을 해줘야 실제 장치에 반영된다.
3. 방화벽(firewalld) 상세 관리
리눅스 서버 보안의 첫 관문이다. RHEL 9은 내부적으로 nftables를 쓰지만, 우리는 firewall-cmd라는 편리한 도구로 제어한다.
Zones (방화벽 구역)
public: 신뢰할 수 없는 네트워크용 기본 설정.internal/home: 내부망용.public보다 좀 더 많은 서비스가 기본적으로 열려 있다.
실무 필수 옵션
--permanent: 설정을 파일에 기록한다. 이거 안 붙이면 재부팅 시 초기화된다.--reload:--permanent로 저장된 설정을 현재 실행 중인 런타임에 즉시 반영한다. (반드시 세트로 써야 함)--add-service=<name>:http,https,ssh등 미리 정의된 서비스 이름을 허용한다.--add-port=<port/protocol>: 특정 포트를 직접 열 때 쓴다 (예:8080/tcp).
4. 네트워크 검증 루틴 (Connectivity Test)
설정을 마쳤다면 아래 순서대로 통신을 체크하는 습관을 들여야 한다.
ip addr: IP가 의도한 장치에 제대로 붙었는지 확인.ping -c 3 8.8.8.8: 게이트웨이를 넘어 외부망까지 패킷이 나가는지 확인.ping -c 3 google.com: DNS 서버가 도메인 이름을 IP로 제대로 바꿔주는지 확인.tracepath google.com: 패킷이 목적지까지 가는 경로 중 어디서 막히는지 추적.ss -tulpn: 내 서버에서 특정 서비스(예:http)가 포트를 열고 기다리고 있는지(LISTEN) 확인.
5. 실습 미션: production-net 구축 결과
운영 서버 환경을 가정한 고정 IP 설정 미션을 수행했다.
[미션 시나리오]
- 물리 장치
ens160에production-net프로필 생성. - IP
10.0.2.100/24, Gateway10.0.2.2, DNS8.8.8.8. - 자동 연결 설정 및 방화벽
http서비스 영구 허용.
[수행 답안]
# 1. 고정 IP 네트워크 프로필 생성 및 자동 연결 활성화
nmcli connection add con-name production-net type ethernet ifname ens160 \
ipv4.addresses 10.0.2.100/24 ipv4.gateway 10.0.2.2 \
ipv4.dns 8.8.8.8 connection.autoconnect yes ipv4.method manual
# 2. 프로필 즉시 활성화
nmcli connection up production-net
# 3. 방화벽 서비스 개방 및 리로드
firewall-cmd --add-service=http --permanent
firewall-cmd --reload
# 4. 설정 지속성(Persistence) 검증
nmcli connection show production-net | grep -E 'method|address|dns'
firewall-cmd --list-all
네트워크는 단순히 명령어 한두 개 외우는 게 아니라, NetworkManager가 설정을 /etc/NetworkManager/system-connections/에 keyfile로 저장하고 이를 nmcli로 불러오는 구조를 이해하는 게 핵심인 것 같다.
마침.
다른 글 보기
💼
쇼핑몰? 그까짓거 그냥 하지~ 라고 할 뻔;
쇼핑몰 페이지, 개발 이외의 것들
#E-Commerce
#Side Project
#PL
💼
초기창업패키지 사업 지원.
실패한 건 실패한거고, 다음으로 넘어가야지. 이번엔 진짜 제대로.
#초기창업패키지
#정부지원사업
#창업지원금
🌱
RHCSA 7일차
Chapter 5. Securing Systems with Users, Groups, and Permissions
#RHCSA
#Linux
#RHEL9
☕
애니메이션이라는 이름의 지옥
Rive는 왜 Auto rigging을 지원해주지 않는걸까..?
#Rive
#AI Agent
#Zuzoo