WSL 도커 커맨드 실행 시 permission denied 발생

유호빈·2024년 4월 19일
0

문제 발생

docker 설치 후 docker 관련 커맨드를 실행 했을 때 permission denied에 관한 에러가 발생합니다.

permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock

해결 방법

1. sudo usermod -aG docker $USER

docker 그룹에 사용자를 등록합니다.

2. sudo chmod 666 /var/run/docker.sock

도커 /var/run/docker.sock의 다른 사용자 권한을 변경합니다.

chmod의 문제점

chmod 해결 방법을 사용하게 되면 파일의 권한을 변경하기 때문에 좋은 방법은 아니라고 생각해 문제점을 찾아보게 되었습니다.

  1. 보안 문제

권한 변경 시 다른 사용자도 파일에 쓰기, 읽기 권한 변경이 됨으로 보안적으로 취약해집니다.

  1. 일시적인 해결책

시스템 재시작이나 Docker 업데이트 시 설정이 변경될 수 있습니다.

  1. Docker Daemon 보안 문제

/var/run/docker.sock 은 Docker Daemon과 Docker 클라이언트간 통신을 담당하는 Unix 도메인 소켓 파일로, Docker 클라이언트가 이 파일을 통해 Docker APi를 호출하고 Docker 데몬이 이를 수신해 컨테이너 생성, 실행, 관리 등 작업을 수행합니다.

이러한 파일의 권한을 건들게 되면 Docker Daemon에 대한 공격을 증가 시킬 수 있다고 합니다.


따라서 직접적인 파일 권한을 변경하기 보다 리눅스의 사용자를 그룹에 등록하는 방법이 보안적으로 더 안전한 방법이라 생각했습니다.

profile
시작하자

0개의 댓글