yeonghoon.kim

  • 게시판
  • 갤러리
  • aws

iptables ip 포워딩

김영훈 2023.08.17 17:48 조회 수 : 318

iptables -t nat -A PREROUTING -m set --match-set KR_ZONE src -p tcp --dport 80 -j ACCEPT
iptables -t nat -A PREROUTING -m set --match-set JP_ZONE src -p tcp --dport 80 -j ACCEPT
iptables -t nat -A PREROUTING -m set --match-set US_ZONE src -p tcp --dport 80 -j ACCEPT
iptables -t nat -A PREROUTING -m set --match-set KR_ZONE src -p tcp --dport 443 -j ACCEPT
iptables -t nat -A PREROUTING -m set --match-set JP_ZONE src -p tcp --dport 443 -j ACCEPT
iptables -t nat -A PREROUTING -m set --match-set US_ZONE src -p tcp --dport 443 -j ACCEPT
iptables -t nat -A PREROUTING --source 0/0 -p tcp --dport 80 -j DNAT --to-destination 10.0.0.1:80
iptables -t nat -A PREROUTING --source 0/0 -p tcp --dport 443 -j DNAT --to-destination 10.0.0.1:443
iptables -t nat -A POSTROUTING -j MASQUERADE


  • 추천 0

  • 비추천 0
이 게시물을
목록

댓글 1

  • 김영훈

    2023.08.17 17:49

    위의 iptables 룰셋은 Linux 시스템에서 네트워크 패킷을 다루는 규칙들을 설정하는 것으로, 주로 네트워크 트래픽을 제어하거나 변경하기 위해 사용됩니다. 주어진 룰셋은 네트워크 주소 변환(NAT)과 관련된 규칙들로 구성되어 있습니다. 각 규칙이 하는 일에 대해 하나씩 설명해보겠습니다.

     

    1. KR_ZONE, JP_ZONE, US_ZONE이라는 세트(set)들로부터 특정 소스 주소의 TCP 80 포트로 들어오는 트래픽을 허용하는 규칙입니다.
       - `-t nat -A PREROUTING`: PREROUTING 체인에서 동작하는 규칙으로, 들어오는 트래픽이 라우팅되기 전에 실행됩니다.
       - `-m set --match-set ZONE src`: 특정 세트에 속하는 소스 주소를 가진 패킷을 매치합니다.
       - `-p tcp --dport 80`: TCP 프로토콜의 80번 포트(웹 서버의 기본 포트)로 들어오는 패킷을 매치합니다.
       - `-j ACCEPT`: 매치되는 패킷을 ACCEPT하며, 허용합니다.

     

    2. 위의 1번 규칙과 비슷하게, JP_ZONE, US_ZONE 세트로부터 오는 트래픽도 TCP 80 포트에서 허용합니다.

     

    3. KR_ZONE, JP_ZONE, US_ZONE 세트로부터 특정 소스 주소의 TCP 443 포트로 들어오는 트래픽을 허용하는 규칙입니다. (HTTPS 트래픽을 위한 것입니다.)

     

    4. 위의 3번 규칙과 비슷하게, JP_ZONE, US_ZONE 세트로부터 오는 트래픽도 TCP 443 포트에서 허용합니다.

     

    5. 모든 소스 주소로부터 TCP 80 포트로 들어오는 트래픽을 DNAT를 통해 특정 내부 주소와 포트로 리디렉션합니다.
       - `-t nat -A PREROUTING`: PREROUTING 체인에서 동작하는 규칙입니다.
       - `--source 0/0`: 모든 소스 주소를 의미합니다.
       - `-p tcp --dport 80`: TCP 80 포트로 들어오는 패킷을 매치합니다.
       - `-j DNAT --to-destination 10.0.0.1:80`: DNAT를 통해 패킷의 대상 주소와 포트를 내부 주소 10.0.0.1의 80번 포트로 변경합니다.

     

    6. 위의 5번 규칙과 비슷하게, 모든 소스 주소로부터 TCP 443 포트로 들어오는 트래픽도 10.0.0.1의 443번 포트로 리디렉션합니다.

     

    7. POSTROUTING 체인에서 MASQUERADE를 통해 내부 네트워크에서 나가는 패킷의 소스 주소를 외부 인터페이스의 주소로 변환합니다.
       - `-t nat -A POSTROUTING`: POSTROUTING 체인에서 동작하는 규칙입니다.
       - `-j MASQUERADE`: 패킷의 소스 주소를 외부 인터페이스의 주소로 변환하여 인터넷에 나가는 패킷을 처리합니다.

     

    이러한 룰셋은 주로 방화벽과 NAT 기능을 통해 내부 네트워크에서 외부로 나가는 트래픽을 관리하고 허용하는 데 사용됩니다.

    추천0 비추천0 댓글

사진 및 파일 첨부

여기에 파일을 끌어 놓거나 왼쪽의 버튼을 클릭하세요.

파일 용량 제한 : 0MB (허용 확장자 : *.*)

업로드 중... (0%)

0개 첨부 됨 ( / )
 
번호 제목 글쓴이 날짜 조회 수
공지 2025 일본 여행 계획 김영훈 2024.10.10 1108
공지 현금, 저축, 투자, 지출, 예산, 보험 내역(2024-05-30) 김영훈 2024.03.10 765
45 파이썬 디스크 용량 체크 김영훈 2023.01.04 468
44 paramiko 일괄 명령 테스트 김영훈 2023.01.05 342
43 아이맥 화면 동영상 캡처 - 커맨드 + 쉬프트 + 5 김영훈 2023.02.28 245
42 Python cx_Oracle 모듈 샘플코드 김영훈 2023.03.03 348
41 시스템프로그래밍 2주차 - 사용명령 김영훈 2023.03.08 294
40 데이터베이스 2주차 - 실습 김영훈 2023.03.08 332
39 python csv 파일 읽은 후 엑셀 파일로 저장 샘플 김영훈 2023.03.16 380
38 데이터베이스 3주차 실습 김영훈 2023.03.19 345
37 Sectigo PositiveSSL 신청 시 파일 - 20230512 기준 [1] file 김영훈 2023.05.12 337
36 [Bard] node.js forever 사용법 알려줘 김영훈 2023.05.18 317
35 SAP_1. Identity & Federation Section 김영훈 2023.06.13 283
34 rockylinux kvm [1] 김영훈 2023.07.12 342
33 FCM 푸시 보내기 - pyfcm 김영훈 2023.07.20 355
32 FCM 푸시보내기 - firebase_admin 김영훈 2023.07.20 311
31 let's encrypt 와일드카드 인증서 발급 (CentOS7) [2] 김영훈 2023.07.26 590
30 2학기 수강신청 김영훈 2023.08.01 304
29 pyapns_client 동시에 여러 기기로 푸시 보내기 김영훈 2023.08.03 401
28 geoip2 python [1] 김영훈 2023.08.10 343
27 삼성 스마트태그 배터리 - CR2032 김영훈 2023.08.15 286
» iptables ip 포워딩 [1] 김영훈 2023.08.17 318
쓰기 태그
 첫 페이지 5 6 7 8 9 10 11 12 13 14 끝 페이지