기본 네트워크 관리

hahic·2023년 3월 5일
0

RHCSA

목록 보기
6/10
post-thumbnail

network, hostname resolution 정적 또는 동적으로 구성

구성 파일 위치

/etc/hosts

: 호스트 이름과 IP 주소 간의 매핑을 제공하는 파일

/etc/resolv.conf

: linux 시스템에서 DNS(Domain Name System) 서버의 IP 주소와 검색 도메인을 지정하는 파일

nameserver [DNS 서버의 IP 주소]
search [검색 도메인]

명령어

: 현재 시스템에 설정된 네트워크 인터페이스와 관련된 정보를 보여주는 명령어

ip address show = ip a

: 현재 사용 가능한 ip 주소와 네트워크 인터페이스에 대한 정보를 보여주는 명령어

ip route = ip r

: 현재 시스템의 라우팅 테이블 정보를 보여주는 명령어 (라우팅 테이블 = 패킷 전달 경로를 결정하는데 사용되는 라우팅 정보를 저장하는 데이터베이스)

hostnamectl

  • sudo hostnamectl
  • sudo hostnamectl set-hostname <host-name>

부팅 시 자동으로 네트워크 서비스 구성

network manager

: linux 시스템에서 네트워크 연결 관리를 담당하는 서비스 중 하나

netwok manager 설치 방법

$ sudo dnf install NetworkManager -y
$ sudo systemctl enable --now NetworkManager.service
$ sudo systemctl status NetworkManager.service

nmcli - network manager command line interface

: 터미널에서 NetworkManager의 기능을 제어하는데 사용되는 명령어

기능

  • 네트워크 연결 관리: Wi-Fi, 이더넷 등의 네트워크 연결을 설정하고 관리할 수 있습니다.
  • DNS 설정: DNS 서버를 추가하거나 DNS 검색 도메인을 설정할 수 있습니다.
  • 라우팅 설정: 라우팅 테이블을 추가하거나 라우팅 규칙을 설정할 수 있습니다.
  • 연결 상태 모니터링: 현재 연결된 네트워크 상태를 모니터링하고 문제 해결을 위해 디버깅 정보를 수집할 수 있습니다.
  • VPN 설정: OpenVPN, IPsec 등의 VPN 연결을 설정할 수 있습니다.

명령어

  • nmcli connection show
  • sudo nmcli connection modify enp0s3 autocnnect yes

네트워크 서비스 시작, 중지 및 확인

ss

: 소켓과 네트워크 정보(네트워크 연결, 소켓 상태, 프로토콜 별 통계 등)를 보여주는 유틸리티

옵션

  • -l, --listening: listening socket만 출력
  • -t, --tcp: tcp socket만 출력
  • -u, --udp: udp socket만 출력
  • -p, --process: socket을 사용하는 프로세스 출력
  • -a, --all : 모든 socket 출력

명령어

  • sudo ss -tupln

netstat

: 네트워크 연결 정보(네트워크 연결 상태, 로컬 IP 주소, 원격 IP 주소 및 포트, 연결 유형 등)를 확인하는데 사용하는 유틸리티

명령어

  • sudo netstat -tupln

lsof - list open file

: linux 시스템에서 현재 열려있는 파일들을 리스트 형태로 출력해주는 명령어

  • sudo lsof -p <pid>
  • sudo lsof -i

패킷 필터링

firewall

기능

  • 네트워크에서 불필요한 접근을 차단하고, 인가되지 않는 액세스로부터 보호하는 네트워크 보안 시스템
  • iptables, nftables와 같은 방화벽 프로그램을 이용하여 방화벽 기능 구현
  • 패킷 필터링, NAT, 연결 추적 등 다양한 기능 제공

명령어

  • firewall-cmd --get-default-zone firewall-cmd --set-default-zone=public
  • firewall-cmd --list-all
  • firewall-cmd --info-service=cockpit
  • firewall-cmd --add-serivce=http firewall-cmd --add-port=80/tcp firewall-cmd --add-source=10.11.12.0/24 --zone=trusted
  • firewall-cmd --remove-service=http firewall-cmd --remove-port=80/tcp firewall-cmd --remove-source=10.11.12.0/24 --zone=trusted
  • firewall-cmd --add-port=1234/tcp firewall-cmd --add-port=1234/tcp --permanent
  • firewall-cmd --runtime-to-permanent

IP 트래픽 정적으로 라우팅하는 방법

  1. sudo ip r add 192.168.0.0/24 via 172.28.128.100
  2. sudo nmcli connection modify eth1 +ipv4.routes "192.168.0.0/24 172.28.128.100"
  3. sudo nmcli device reapply eth1

client server 시간 구성

chronyd.service

설치 방법

$ sudo dnf install chrony -y
$ sudo systemctl enable --now chronyd.service
$ sudo systemctl status chronyd.service

명령어

  • timedatectl
  • timedatectl list-timezones
  • sudo timedatectl set-timezone <timezone>
  • sudo timedatectl set-ntp true
  • sudo timedatectl set-local-rtc true sudo timedatectl set-local-rtc 1

추가 개념

DHCP (Dynamic Host Configuration Protocol)

  • 네트워크에서 사용되는 IP 주소, 서브넷 마스크, 기본 게이트웨이, DNS 서버등의 정보를 동적으로 제공하는 프로토콜
  • 쉽고 빠른 네트워크 구성과 유지보수를 위해 중요한 프로토콜
  • 라우터, 스위치, 모뎀 등에서 지원

DNS (Domain Namespace System)

  • 인터넷 상에서 도메인 이름과 IP 주소를 변환하는 시스템
  • 도메인 이름을 IP 주소로 변환하여 사용자가 쉽게 웹사이트나 이메일 서버 등에 접속할 수 있도록 지원

NAT (Network Address Translation)

  • 한 네트워크에서 다른 네트워크로 IP 패킷을 전송할 때, 패킷의 출발지 IP 주소와 목적지 IP 주소를 변경하여 전송하는 기술
  • 사설 IP 주소를 가진 호스트가 공인 IP 주소를 사용하여 인터넷에 접속 가능하게 함
  • 라우터, 게이트웨이 등에서 지원
profile
👩‍💻 Junior Backend Developer

0개의 댓글