본문 바로가기
반응형

iptables3

iptables 활용하여 Connection timeout, Response timeout 테스트 하기 Linux 환경에서 iptables를 활용하여 방화벽 설정하는 방법에 대한 내용을 공유하고, connection timeout 과 response timeout(a.k.a. read timeout) 테스트에 활용하는 방법에 대해 소개합니다. 1. iptables Command 배워보기 1-1. Basic Command 구조 알아보기 1-2. INPUT / OUTPUT Chain 에 policy 추가 1-3. DOCKER-USER Chain 에 policy 추가 2. Connection timeout과 Response(=Read) timeout 테스트에 iptables 활용하기 2-1. TCP Protocol의 3-way handshake 이해하기 (배경 지식) 2-2. Connection t.. 2022. 4. 4.
iptables 로 일부 문자(string)가 포함된 packet만 차단하기 (string match) Application 구동 환경에서 특정 시점에 network 이슈가 발생으로 packet 전송이 늦어지는 경우를 대비하여 종종 response timeout을 두어 exception 처리를 해달라고 개발 요구사항을 내는 경우가 있다. 그런 경우 특정 설정값 또는 default 설정값대로 동작을 잘 하는지 확인을 해야하는데, 간단한 연동 구조인 경우 dummy server를 만들어서 특정 api의 response 전 sleep을 길게 주는 형태로 테스트를 한다. 하지만 dummy server를 만들기 좀 까다롭거나 좀 더 테스트를 빠르게 하기 위해서 iptables의 string pattern match filtering을 사용하면 어떨까? 하는 생각이 들어 string match에 대한 단위 테스트를 .. 2022. 3. 28.
docker 사용 시, iptables 로 방화벽 설정하기 (DOCKER-USER Chain) linux 환경에서 실행되는 application의 network 단절 상황에서의 예외 케이스 테스트를 위해 종종 iptables로 패킷 차단을 활용해왔다. 하지만 최근에는 host에서 application을 직접 실행하는 것 보다는 docker container 안에서 application을 실행하는 형상이 많아졌고, 동일하게 iptables의 INPUT packet 차단을 해보니 packet drop이 되지 않고 connect 성공이 되었다;; 엔지니어링 경험이 좀 더 많은 분께 tip을 얻어 INPUT이 아니라 DOCKER Chain에 drop 룰을 추가하니 그제서야 packet drop이 잘 되었다. 그 당시에는 추가 검색을 해볼 시간적 여유가 없이 그대로 테스트에 활용하고 넘어갔었는데, 이후 새.. 2021. 11. 29.
반응형