본문 바로가기
정보보안/Server(NAS,VM)

시놀로지 나스 서버에서 도커를 이용해 칼리 리눅스 설치하고 사용해보기

by 우동이 2022. 10. 1.
300x250

시놀로지 - 패키지센터 - 도커

 

시놀로지에서는 도커 패키지를 지원하여 도커를 통해 다양한 컨테이너를 사용해볼 수 있습니다.

 

도커 애드온 지원

 

 

Docker - 애드온 패키지 | Synology Inc.

애드온 패키지 강력한 공동 작업, 백업, 통신 및 관리 도구를 사용하여 장치에 기능을 추가합니다. 패키지 센터에서 직접 Synology에서 개발한 패키지와 타사 패키지를 다운로드하여 설치할 수 있

www.synology.com

 

시놀로지 나스 제품별 도커 패키지를 지원하는 지에 대한 여부를 확인해볼수 있습니다.

 


컨테이너 이미지 : kalilinux/kali-rolling

 

칼리 리눅스의 이미지 파일입니다.

도커 패키지에서 레지스트리 항목에서 검색해 찾을 수 있습니다.

 

kalilinux/kali-rolling

 

이미지는 칼리에서 제공하는 공식 이미지 입니다.

도커 컨테이너를 사용할때에는 공식 이미지 사용을 추천합니다.

Docker Pull Command

 

도커 패키지를 통해 GUI로 설정할 수 있지만

제 경험상 시놀로지에 CLI로 접속해 명령어를 통해 설치하는 게 훨씬 편리한 듯 합니다.

설정도 대부분 자동이고 호환도 더 잘되고 말이죠

 

그럼 시놀로지에 SSH로 접속해 Docker를 사용해서 이미지를 설치해보도록 하겠습니다.

 


1. 도커 이미지 불러오기

docker pull kalilinux/kali-rolling

저희는 이미 설치할 이미지의 이름을 알고 있습니다.

 

docker pull kalilinux/kali-rolling

 

 

이미지를 pull 명령어를 통해 불러들였으면 해당 컨테이너를 실행해봅니다.


2. 도커 컨테이너 실행

docker run --tty --interactive kalilinux/kali-rolling

docker run --tty --interactive kalilinux/kali-rolling

 

[run] 명령어로 해당 컨테이너를 실행해주면 

칼리리눅스 컨테이너로 세션이 전환 됩니다.

 


3. 도커 컨테이너 초기설정

apt update && apt -y install kali-linux-headless

 

이미지의 도커 허브 페이지에 들어가 정보를 확인해보면 해당 컨테이너는 "기본 메타패키지"가 포함되어 있지 않다고 합니다.

그러므로 명령어를 통해 추가로 설치를 해주어야 합니다.

 

패키지의 추가 설치가 요구됨을 알려주는 문구

 

apt update && apt -y install kali-linux-headless

 

명령어를 입력해 추가 설치를 진행합니다.

소요시간은 약 5-10분 입니다.

 

root 설정 : YES

설치를 진행하다 보면 옵션 지정을 해줄게 몇가지 있는데 

먼저 Kismet 설치시 root를 지정해줄거냐 물어보는데 저는 YES라고 넣었습니다.

 

뭔지 몰랐는데 알아보니 kismet이란 침입 탐지 시스템이라고 합니다.

네트워크 인터페이스를 탐지하기 위해서는 root 권한이 필요해서 물어본 듯 합니다.

 

 

root 계정 외 일반유저의 패킷을 캡처할것인가?

 

이번 옵션은 root이외의 일반 계정들의 패킷을 전부 캡처할것이냐에 대한 옵션 지정입니다.

모의해킹용 서버를 설치하는 것이기 때문에 패킷을 쓸 일이 있을것같아서 YES로 지정했습니다.

 

콘솔 인코딩 옵션 지정

 

이건 콘솔의 인코딩 옵션 지정입니다.

가장 범용성 있게 쓰이는 UTF-8을 지정해줍시다.

 

 

Character Set 지정

 

이게 폰트 지정 옵션인데 보통 Terminus등 일반적인 글꼴 옵션을 많이 선택한다는데

제 옵션 지정창에는 보이지 않더라구요 사실 저는 폰트에는 신경을 쓰지 않는 편이라 23번 옵션을 지정했습니다.

 

SSLH 서비스 지정

칼리 리눅스에 설치되는 SSLH 서버를 Inetd 서버로 설치할것이냐 독립실행형 서버로 설치할것이냐에 대한 옵션 지정인듯 한데

이 두 서비스의 차이에 대해 잘 몰라서 익숙한 inetd를 지정했는데 

서칭을 조금 해보니 inted나 standalone이나 개인 서버 단위에서는 그리 크게 신경쓸만한 차이가 존재하지는 않을 듯 합니다.

약간 성능과 운영방식의 차이가 있는듯 합니다.

 


4. 컨테이너 메타 패키지 설치 완료 

패키지 설치 완료

 

모든 옵션을 지정하고 설치가 정상적으로 완료되었습니다.

 

GUI에서도 정상적으로 확인 가능

 

패키지의 설치가 완료되면 도커 패키지에서도 컨테이너가 정상적으로 올라가 있는걸 확인할 수 있습니다.

 

exit

exit명령어를 통해 기존의 SSH 접속으로 돌아갈 수 있습니다.

 


5. 기초적인 도커 명령어 숙지

1. 실행중인 컨테이너 확인

docker container list --all

 

SSH 접속 세션에서 현재 실행중인 도커 컨테이너 리스트를 확인할 수 있습니다.

GUI에서도 확인가능하지만 명령어로도 가능합니다.

 

docker container list --all

 

 

2. 컨테이너 실행과 접속

docker start / docker attach

[start] 명령은 해당 컨테이너를 시작시키는 것

[attach] 명령은 컨테이너에 접속하는 명령어입니다.

 

docker start [container_ID]
docker attach [container_ID]

 


nmap 실행

 

칼리 리눅스 세션에서 nmap을 실행해봤습니다.

정상적으로 기본 패키지가 구성되었음을 확인했습니다.

 

 

 


참고자료

 

Using Kali Linux Docker Images | Kali Linux Documentation

To use the Kali Linux Docker image, we will do the following commands: kali@kali:~$ docker pull docker.io/kalilinux/kali-rolling kali@kali:~$ kali@kali:~$ docker run --tty --interactive kalilinux/kali-rolling ┌──(root㉿e4ae79503654)-[/] └─# ┌

www.kali.org

 

300x250

댓글