자유게시판

와이어가드 사용시 라우팅설정법 정리

컨텐츠 정보

  • 1,177 조회

본문

먼저 ip a 명령을 이용해 네트워크 인터페이스의 이름을 확인합니다.

ens18은 실제 장치이고, wg0, wg1은 와이어가드로 만들어둔 가상 장치입니다.

아래 명령에서 wg1과 ens18을 여러분의 상황에 맞게 바꿔서 설정해주시면 됩니다.

 

iptables -A FORWARD -i wg1 -j ACCEPT;

- wg1 인터페이스로 들어오는 모든 패킷을 FORWARD 체인에서 허용합니다.

iptables -A FORWARD -o wg1 -j ACCEPT;

- wg1 인터페이스로 나가는 모든 패킷을 FORWARD 체인에서 허용합니다

iptables -t nat -A POSTROUTING -o ens18 -j MASQUERADE;

- ens18 인터페이스로 나가는 패킷에 대해 NAT 테이블의 POSTROUTING 체인에서 IP 마스커레이딩을 수행합니다. 이는 내부 네트워크의 사설 IP 주소를 외부 공인 IP 주소로 변환합니다.

iptables -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu;

- TCP SYN 패킷의 MSS(Maximum Segment Size)를 PMTU(Path Maximum Transmission Unit)에 맞게 조정합니다. 이는 VPN 등의 환경에서 패킷 분할 문제를 방지하는 데 도움이 됩니다.

 

iptables -D FORWARD -i wg1 -j ACCEPT;

- wg1 인터페이스로 들어오는 패킷을 허용하는 FORWARD 체인의 규칙을 삭제합니다

iptables -D FORWARD -o wg1 -j ACCEPT;

- wg1 인터페이스로 나가는 패킷을 허용하는 FORWARD 체인의 규칙을 삭제합니다

iptables -t nat -D POSTROUTING -o ens18 -j MASQUERADE;

- ens18 인터페이스에 대한 IP 마스커레이딩 규칙을 NAT 테이블의 POSTROUTING 체인에서 삭제합니다

 

 

다른건 기본적으로 다 했던거라 괜찮았는데 그럼에도 불구하고 몇몇 사이트나 카카오톡 같은게 접속이 안되는 문제가 뭔가 했더니 MSS클램핑 문제였습니다.

해당 설정을 해줬더니 마치 물흐르듯이 자연스럽게. 접속이 가능했습니다.

- 결론적으로 MTU가 문제.

프로젝트의 1일차는 와이어가드의 설정을 마무리하는것으로 할까합니다.ㅎ

 

사용의 편의를 위해 WGDashboard를 쓰고있어서 더 편하게 설정가능합니다.

 

 

Pre up

iptables -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu;

Post Up

iptables -A FORWARD -i wg1 -j ACCEPT; iptables -A FORWARD -o wg1 -j ACCEPT; iptables -t nat -A POSTROUTING -o ens18 -j MASQUERADE; 

 

Post Down

iptables -D FORWARD -i wg1 -j ACCEPT; iptables -D FORWARD -o wg1 -j ACCEPT; iptables -t nat -D POSTROUTING -o ens18 -j MASQUERADE;

 

넣어주시면 됩니다.

 

사실 iptables수정하고 나면 저장안되는거때문에 귀찮은부분이 많은데 이걸로 한방에 해결가능하네요.

서버 실행되고나면 자동으로 명령어를 수행해버리니 한결편합니다.

 

 

그럼 마무리

관련자료

댓글 0
등록된 댓글이 없습니다.
Member Rank