firewall
: 네트워크 침입 차단을 담당하는 기능
: 리눅스에서는 firewalld를 통해 제공
ㆍ접속 허용 포트 추가
: firewall-cmd --permanent --zone=public --add-port=[포트번호]/tcp
ㆍ접속 허용 포트 삭제
: firewall-cmd --permanent --zone=public --remove-port=[포트번호]/tcp
※ 6000-8000 식으로 포트번호의 대역 설정 가능
ㆍ방화벽 포트 정보 출력
: firewall-cmd --permanent --zone=public --list-all
ㆍ허용 서비스 추가
: firewall-cmd --permanent --add-service=[서비스 (ex: http, ssh, https)]
ㆍ허용 서비스 제거
: firewall-cmd --permanent --remove-service=[서비스 (ex: http, ssh, https)]
ㆍ특정 IP 허용
: firewall-cmd --permanent --add-source=[IP주소]
ㆍ특정 IP 차단
: firewall-cmd --permanent --remove-source=[IP주소]
ㆍ방화벽 재시작
: firewall-cmd --reload
※ --permanent : 영구적 적용
iptables
: 리눅스 상에서 방화벽을 설정하는 도구
: 커널 2.4 이전 버전에서 사용되던 ipchains를 대신하는 방화벽 도구
: 사용자 수준에서 패킷 필터링 제어
※ 패킷 필터링
: 패킷의 헤더를 확인하여 패킷의 접속 허용 여부 등을 결정
: 헤더에는 출발지 IP, 도착지 IP, check sum, 프로토콜 옵션 등이 기재
ㆍ체인 규칙 확인
: iptables --list
ㆍ포트열기
: iptables -I [사슬] -p [프로토콜] --dport [포트번호] -j [타겟]
ㆍ포트닫기
: iptables -D [사슬] -p [프로토콜] --dport [포트번호] -j [타겟]
※ 사슬<동작> (INPUT / OUTPUT / PREROUTING / POSTROUTING)
※ 타겟<규칙> (ACCEPT / DROP / REJECT / LOG)
iptables의 사슬
ㆍINPUT
: 패킷 필터링 및 방화벽 관련 정책 설정. 실제적인 접근통제
: 커널 내부에서 라우팅을 마친 후 로컬 소켓이 목적지인 패킷에 적용
ㆍFORWARD
: 리눅스 시스템을 통과하는 패킷 관리
: iptables 방화벽을 이용하여 두 네트워크 간 패킷이 통과되는 경우에 적용
: NAT 기반에 사용할 경우 사설 IP를 사용하는 시스템의 접근 제어 정책을 설정할 때 사용
ㆍOUTPUT
: 다른 시스템으로의 접근을 차단
: 리눅스 시스템 자체가 생성하는 패킷을 제어
ㆍPREROUTING / POSTROUTING : 커널 내부에서 IP 라우팅 계산을 수행하기 전 후 의 패킷 헤더 수정
SELinux (Security Enhanced Linux)
: 관리자가 시스템 액세스 권한을 효과적으로 제어할 수 있게 하는 리눅스용 보안 아키텍처
ㆍSELinux 모드 확인
: sestatus
: getenforce
ㆍSELinux 해제 / 설정
: setenforce 0 (해제)
: setenforce 1 (설정)
ㆍ모드 영구 설정 (CentOS 7 기준)
: vi /etc/selinux/config
: SELINUX=permissive (권장 / 제한되는 컨텐츠에 대한 액세스를 일시적으로 허용)
: SELINUX=enforcing (기본값 / 파일을 읽으려는 액세스 거부, 로그와 보호 수행)
: SELINUX=disabled (Selinux 비활성화)
ㆍSELinux 보호 방식 설정
: vi /etc/selinux/config
: SELINUXTYPE=targeted (대상 프로세스 보호)
: SELINUXTYPE=minimum (선택한 프로세스만 보호)
: SELINUXTYPE=mls (멀티 레벨 보호)
Refference
'Computer Science > Linux' 카테고리의 다른 글
리눅스 리다이렉트 설정 방법 (0) | 2021.09.08 |
---|---|
CentOS 7 SSL 설치 및 웹 서버 SSL 인증서 설치 (0) | 2021.09.08 |
CentOS7 npm 설치 방법 (0) | 2021.09.07 |
vi 전체 선택 / 복사 / 붙여넣기 (0) | 2021.09.07 |
CentOS와 CentOS Stream [레드햇 계열 리눅스의 미래] (0) | 2021.08.25 |