[리눅스마스터1급] 3.2.2 대비 및 대처방안

cateto·2022년 3월 1일
0

li-master1

목록 보기
1/27

3.네트워크 및 서비스의 활용 / 2.네트워크 보안 / 3.2.2 대비 및 대처방안

기본적인 대응책

DDoS 공격에 대한 대응책

  1. 패킷 및 포트 필터링을 통한 진입 차단을 위해 방화벽(Firewall) 을 이용
  2. 공격 탐지를 위해 침입 탐지 시스템(IDS, Intrusion Detection System) 이용
  3. 공격 탐지+방지를 위해 침입 방지 시스템(IPS, Intrusion Prevention System) 이용
  4. 시스템 패치를 하여 취약점 및 버그를 이용한 악성코드 및 침임 방지
  5. 안정적인 네트워크 설계
  • 그게 몬디?
  1. 로드밸런싱 을 통해 대용량 트래픽 분산 처리
  2. 서비스 별 대역폭 제한
  • 최대-최소 안에서 잘 조절.
  1. 불필요한 서비스 제거

방화벽 이 뭔데?

  1. 뭐냐면 : 원래는 불 났을 때 불이 다른 곳으로 번지지 않도록 해주는 구조물이래
  2. 컴퓨터에서는 : 외부의 불법적인 트래픽 유입을 막고 허가된 트래픽만 허용하는 기능을 가진 하드웨어와 소프트웨어를 이루는 말이래
  • 하드웨어 방화벽도 있구나;;;
  1. 기능을 정리하면 : 접근제어(Access Control, 접근 허용해줄지 거부할지 대상을 정함 패킷필터링이나 프록시 설정해서 한대), 로깅과 추적(Logging and Auditing), 인증(Authentication, 메시지 인증-사용자 인증-클라이언트 인증 등), 데이터 암호화(VPN을 이용해서 전송 데이터를 암호화)

방화벽 종류가 있어?

  • 배스천 호스트, 스크린 라우터, 단일 홈 게이트 웨이, 이중 홈 게이트 웨이, 스크린 호스트 게이트웨이, 스크린 서브넷 게이트웨이 등이 있대.
  • 관심있으면 구글 검색 ㄱㄱ

침입 탐지 시스템(IDS) 아까 말한거 이건 뭔디?

  • 서버나 네트워크에 대한 공격을 실시간으로 탐지하는 시스템이다.
  • 평균치에서 이상을 탐지하거나, 미리 발견된 공격 패턴을 입력해서 감지하기도 하고..
  • 요새는 인공지능을 활용한 탐지 시스템도 있대

침입 방지 시스템(IPS) 는?

  • 네트워크에서 공격 서명을 찾아내어 비정상적인 트래픽을 중단시키는 보안시스템.

리눅스 기반 IDS나 IPS는 뭐야?

  • Snort
  • Suricata
  • 등이 있대

가상 사설망(VPN) 은?

  • 인터넷은 공중망인데 이거를 사설망처럼 사용할 수 있도록 해주는 서비스!
  • 암호화기법으로 기업 본사와 지사 간에 전용망을 설치한 것 같은 효과를 내준다내.
  • 리눅스에서는 FreeSWAN, OpenVPN, Poptop, Openswan 등을 활용해서 VPN을 구축할 수 있대.

iptables ★★★

iptables 뭐야? 방화벽 포트 열어줄때 겁나 많이 써봤는데.

  • 리눅스의 패킷필터링 도구로 방화벽 구성이나, NAT(Network Address Translation)에 사용돼.
  • 커널 2.4 버전 이후로 리눅스에서 사용되는 명령이야.
  • iptables라는 명령으로 정책을 설정하는건데, OSI 참조 모델로 보면 데이터링크, 네트워크, 전송 계층에서 수행해.
  • iptables가 직접 수행하는 건 아니고 커널에 있는 netfilter라는 모듈이 수행해.
  • http://www.netfilter.org 에 들어가보면 자세히 알 수 있어.

사용법

# iptables  [-t 테이블] [액션] [체인] [매치] [-j 타겟]

테이블(Table)

filter(패킷필터링),
nat(ip주소 변환),
mangle(패킷데이터를 변경하는 특수규칙 적용),
raw(넷필터의 연결추적 하위시스템과 독립적으로 동작해야하는 규칙 적용)

명시하지 않으면 기본적으로 filter야.

액션(Action)
-A : APPEND : 정책 추가
-I : INSERT : 정책 삽입
-D : DELETE : 정책 삭제
-R : REPLACE : 정책 교체
-F : FLUSH : 모든 정책 삭제
-P : POLICY : 기본 정책을 설정
-L : LIST : 정책 나열

체인(Chain)
INPUT
OUTPUT
FORWARD
PREROUTING
POSTROUTING

매치(Match)
-s : 출발지 매칭. 도메인, IP 주소, 넷마스크 값을 이용하여 표기(––source, ––src)
-d : 목적지 매칭. 도메인, IP 주소, 넷마스크 값을 이용하여 표기(––destination, ––dst)
-p : 프로토콜과 매칭. TCP, UDP, ICMP 와 같은 이름을 사용하고 대소문자는 구분하지 않음
-i : 입력 인터페이스와 매칭(––in-interface)
-o : 출력 인터페이스와 매칭(––out-interface)
-j : 매치되는 패킷을 어떻게 처리할지 지정 (--jump)

타겟(target)
패킷이 규칙과 일치할 때 취하는 동작을 지정한다.

ACCEPT : 패킷을 허용한다.
DROP : 패킷을 버린다(패킷이 전송된 적이 없던 것처럼)
REJECT : 패킷을 버리고 이와 동시에 적절한 응답 패킷을 전송한다.(icmp-port-unreachable)
LOG : 패킷을 syslog에 기록한다.
SNAT --to [주소] : 소스 IP를 [변환(NAT)|NAT]한다.
DNAT --to [주소] : 목적지 IP를 변환(NAT)한다.
RETURN : 호출 체인 내에서 패킷 처리를 계속한다.

정책 열람·저장·반영
보기
# iptables -L
또는
# cat /etc/sysconfig/iptables
저장
# service iptables save
저장 & 불러오기
# iptables-save > firewall.sh
# iptables-restore < firewall.sh
정책을 추가한 다음 재시작이나 다른 조치를 하지 않아도 바로 적용된다.

예시
192.168.10.22에서 들어오는 패킷을 차단하는 정책을 추가

iptables -A INPUT 192.168.10.22 -j DROP
또는
iptables -I INPUT 192.168.10.22 -j DROP

192.168.10. 대역으로부터 들어오는 패킷들은 차단하는 정책을 추가

iptables -A INPUT 192.168.10.0/24 -j DROP
또는
iptables -I INPUT 192.168.10.0/24 -j DROP

-D 옵션을 지정하여 특정 번호의 정책을 삭제한다.

iptables -D INPUT [번호]

NAT 사용예

firewalld

firewalld의 개요
D-BUS 인터페이스가 있는 호스트 기반 방화벽을 제공하는 서비스 데몬이다.
동적 관리 방화벽으로 규칙이 변경될 때마다 방화벽 데몬을 다시 시작할 필요 없이 규칙을 작성, 변경, 삭제할 수 있다.

iptables 기반 도구와 firewalld의 비교

  • 정적 방화벽과 동적 방화벽
    설정하고 다시시작하느냐의 여부
    firewall은 동적 방화벽! 다시시작 안해도됨.
  • 서비스, 응용 프로그램, 사용자의 쉬운 결정
    firewalld는 D-BUS 인터페이스를 통해 서비스나 응용프로그램에서 방화벽 설정을 조정할 수 있따.
  • 다양한 방화벽 구성 도구 기본 제공
    iptables는 명령어 외에는 특별한 설정도구가 없었지만
    firewall-cmd, GUI도구인 firewall-conifg 같은 도구를 제공한다.
  • 런타임 및 영구 설정 분할 지원
profile
Curious for Everything

0개의 댓글