IT/잡다구리

[Linux] 도커 방화벽 관련 메모, 방화벽이 무시되는 docker 컨테이너 --iptables=false

월공 2021. 11. 18. 09:33
728x90
300x250

환경은 Centos7

서버 방화벽 이것저것 싹다 막아놓았다.

해외 ip 차단 까지 ...

 

참고로 해외 ip 차단 되었는지 확인하는건 vpn 프로그램 깔아서 해당 국가로 전환해서 내꺼로 접속해보면 알수있다.

vpn 프로그램은 TikVPN 추천 (기간제 무료)

여튼 해당 서버엔 컨테이너가 여러개 돌아가고있는데 그중에 mssql 컨테이너가 하나있는데 어느날 로그를 살펴보니

미친듯이 해외에서 접속시도를 하고있는게 보였다. (1초에 대략 50건씩 쌓였다.)

프로그램 돌리면서 , 미친듯이 이것저것 다 쑤셔보는듯 하다.

아래 스샷엔 sa 로만 되있지만 admin super 뭐시기 다양하게 로그에 찍혀있었다.

 

참고로 로그찍는건 아래와 같이 찍는걸 추천, N줄씩 실시간으로 찍어준다.

docker logs --tail 10 -f [컨테이너명]

미친놈이세요?

애초에 방화벽 단에서 막혔으면 접속시도 로그 기록조차 남아있지 않을텐데, docker 컨테이너 에서는 방화벽을 무시하나? 라는 생각이 들었고 말이안된다 생각했다.

근데 그 말이 안되는게 현실이었고.. (실제로 멕시코, 핀란드 등등 VPN 이용하여 접속해서 mssql 접속해보니 잘되었다)

식겁했다.  그 외 docker 가 아닌 서버 자체 찐 sql 서버엔 접속이 안되는걸 확인할수 있었다.

무조건 docker 문제라고 단정 지었고 아래처럼 해결하였다.

 

#서버 마다 경로 다를수 있음
vi /etc/systemd/system/multi-user.target.wants/docker.service

#### 타서버 경우 위 경로에 위치해있지 않아서 찾아보니 아래와 같이 뜸 ####
find / -name "docker.service"

/sys/fs/cgroup/pids/system.slice/docker.service
/sys/fs/cgroup/blkio/system.slice/docker.service
/sys/fs/cgroup/cpu,cpuacct/system.slice/docker.service
/sys/fs/cgroup/devices/system.slice/docker.service
/sys/fs/cgroup/memory/system.slice/docker.service
/sys/fs/cgroup/systemd/system.slice/docker.service
usr/lib/systemd/system/docker.service
###################################################################




#ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

해당 부분 뒤에 --iptables=false

이렇게 추가 해주고, daemon.service 재시작 해주고, docker 자체도 재시작 하고나서 다시 시도해보니,

(systemctl restart docker, 하려해도 경고문으로 뜬다 daemon 재시작 부터 하라고)

내 docker 컨테이너들도 이제 방화벽 룰을 잘 따르는것을 확인 할 수 있었다

 

 

이번 일로 인해 docker 컨테이너 생성시 방화벽 옵션 잘 확인해야된다는걸 배웠고, (그냥 안일하게 무조건 방화벽 룰 따르겠지 라고 생각한 내 오판이었다.)

 

컨테이너 생성할때 포트도 신경써야겠다고 느꼈다.

728x90
300x250