iptable-nft 환경에서 VPN 서버 구축하기 (feat. WireGuard)

2025. 12. 12. 14:06·Infra/DevOps

증오한다 nft!!!!

진짜로!

아 저번에 iptalbes → nft → iptables-nft 도르마무 하고 나서부터 VPN이 안된다..

https://ratatou2.tistory.com/303

 

Fail2Ban, 다시 iptables-nft 체제로 전환하기 (feat. 최최최종ver)

결국.. 다시 여기로저번에 Fail2Ban이 iptable vs nft 문제로 터지고 나서 2번의 시도 이후에 다시 iptables로 돌아왔다그 뒤로도 nft가 문제가 많았음...서버가 네트워크가 안되는걸 해결하면 컨테이너가

ratatou2.tistory.com

확인해보니 원인은 iptables-nft 체제로 변경되었기 때문이었고 오늘은 이것을 수정해볼 예정이다 ㅠ

일단 기본적인 세팅은 아래 포스팅 이후에 이어진다

https://ratatou2.tistory.com/287

 

나만의 VPN 서버 만들기 (feat. 홈서버 + WireGuard)

쉴 틈이 없는 나의 서버..주말에 친구랑 같이 카페에서 각자 일하고 있는데 핫스팟을 켜달라는 것이다...아니 갑자기...??회사 일을 지금 해야할 것 같은데 카페라 공개 IP로는 작업하기 어렵다는

ratatou2.tistory.com

 


1. 실제 네트워크 인터페이스 이름 확인

ip route get 1.1.1.1

내 서버의 NIC 이름은 enpls0이다!

- 여기서 네트워크 인터페이스 이름을 잘 기억하자 (e.g. enp1s0)


2. nft NAT 테이블 생성

sudo nft add table ip nat

3. postrouting 체인 생성

sudo nft add chain ip nat postrouting \
  { type nat hook postrouting priority 100 \; }

4. WireGuard NAT 규칙 추가

sudo nft add rule ip nat postrouting \
  oifname "enp1s0" ip saddr 10.8.0.0/24 masquerade

5. 규칙 확인

- 아래 명령어로 잘 생성됐는지 확인한다

sudo nft list ruleset | sed -n '1,200p'

6. WireGuard PostUp에서 iptables-nft 사용

# 이 명령은 nft 규칙으로 변환되어 안전하게 삽입됨
PostUp   = iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o <<서버 NIC 이름>> -j MASQUERADE
PostDown = iptables -t nat -D POSTROUTING -s 10.8.0.0/24 -o <<서버 NIC 이름>> -j MASQUERADE

- 위 코드는 VPN 구축 포스팅의 1-4, 설정 세팅 파일의 두줄만 수정하면 된다

기존의 PostUp, PostDown을 대체하도록 하자!


7. wireGuard 재시작

sudo wg-quick down wg0
sudo wg-quick up wg0

번외

확실히 기술이나 체제의 과도기, 변환점에서는 다양한 오류와 에러들이 쏟아져 나오는 것 같다

내 홈서버가 하루 빨리 안정화 되길 바랄뿐...

반응형

'Infra > DevOps' 카테고리의 다른 글

쿠버네티스(Kubernetes, K8s) 실험 일지 (feat. 튜닝 및 방향성에 대한 고찰)  (1) 2025.12.25
맥북에서 VPN 사용 시 주의할 점 (feat. WireGuard)  (0) 2025.12.12
Flannel이란? (feat. 쿠버네티스, Kubernetes, K8s)  (2) 2025.12.07
쿠버네티스(Kubernetes, K8s) 실험과 배운 것들에 대한 회고록  (0) 2025.12.06
쿠버네티스(Kubernetes, K8s) 구축 과정에 마주한 에러들  (0) 2025.12.03
'Infra/DevOps' 카테고리의 다른 글
  • 쿠버네티스(Kubernetes, K8s) 실험 일지 (feat. 튜닝 및 방향성에 대한 고찰)
  • 맥북에서 VPN 사용 시 주의할 점 (feat. WireGuard)
  • Flannel이란? (feat. 쿠버네티스, Kubernetes, K8s)
  • 쿠버네티스(Kubernetes, K8s) 실험과 배운 것들에 대한 회고록
Ratatou2
Ratatou2
온갖 정보들을 기록해두는 메모보드 블로그
  • Ratatou2
    nak-z
    · Ratatou2 ·
  • 전체
    오늘
    어제
  • 공지사항

    • 블로그 이전 진행 중 (24.11.25 ~)
    • 분류 전체보기 (303) N
      • OS (89) N
        • Linux (39)
        • Window (24)
        • Mac (21) N
        • Android (5)
      • Infra (83) N
        • DevOps (38) N
        • Docker (14)
        • Jenkins (9)
        • n8n (13)
        • Nextcloud (8)
        • Rasberry Pi (1)
      • Dev (17)
        • JAVA (7)
        • Python (1)
        • DB (3)
        • Vue (2)
        • AI (4)
        • Git (0)
      • Tools (10)
      • Study (69)
        • Algorithm (66)
        • CS (3)
      • Game (10)
        • Project Zomboid (9)
        • Don't Starve Together (1)
      • etc (24)
        • Temp (0)
      • 개발 외 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 인기 글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.5
Ratatou2
iptable-nft 환경에서 VPN 서버 구축하기 (feat. WireGuard)
상단으로

티스토리툴바