본문으로 바로가기

과거에는 리눅스 운영체제에서 apt-get install openvas 명령어를 사용하여 설치하였지만, PostgreSQL 충돌 등 많은 오류가 따르게 되고 이를 해결하기 위해 많은 시간이 소요되었다. 최근에는 OpenVAS 공식 홈페이지에서 제공하는 도커를 이용한 설치방법이 오류도 적고 가장 간단하게 설치할 수 있기 때문에 본글에서는 도커를 이용한 설치방법을 설명하고자 한다.

 

가. 리눅스 환경 준비

1. 리눅스 환경 준비

- 데비안(Debian), 우분투(Ubuntu), 센트OS(CentOS), 페도라(fedora) 중 본인이 편한 운영체제를 준비한다.

 

나. 도커 설치

1. 설치에 필요한 패키지 설치

1.1. ca-certificates curl gnupg 패키지 설치

#데비안/우분투 환경 명령어
sudo apt install ca-certificates curl gnupg

#페도라/CentOS 환경 명령어
sudo dnf install ca-certificates curl gnupg

 

2. 도커 설치

2.1. 충돌하는 패키지 제거

#데비안/우분투 환경 명령어
for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do sudo apt remove $pkg; done

#페도라/CentOS 환경 명령어
sudo dnf remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine

 

2.2. 도커 저장소 설정

#데비안
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo \
  "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
  "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update

#우분투
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo \
  "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update

#페도라
sudo dnf -y install dnf-plugins-core
sudo dnf config-manager --add-repo https://download.docker.com/linux/fedora/docker-ce.repo
sudo dnf install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

#CentOS
sudo dnf -y install dnf-plugins-core
sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo dnf install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

 

2.3. 도커 관련 패키지 설치

#데비안/우분투
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin

#페도라/CentOS
sudo systemctl start docker

 

3. 도커 설정

3.1. 현재 사용자를 도커 그룹에 추가

- docker 실행 및 설정을 위해 현재 사용자를 도커 그룹에 추가한다.

- 최상위 관리자(root)로 설치를 진행하고 있을 경우 아래 명령어를 수행하지 않아도 된다.

sudo usermod -aG docker $USER && su $USER

 

3.2. 다운로드 경로 생성 및 환경변수 생성

- 앞으로 사용할 도커 저장경로를 환경변수에 저장한다. 해당 방식으로 저장한 환경변수는 재부팅하면 삭제된다.

#다운로드 경로 환경변수 등록
export DOWNLOAD_DIR=$HOME/greenbone-community-container

#다운로드 경로 생성
mkdir -p $DOWNLOAD_DIR

 

3.3. 도커 설정 파일

cd $DOWNLOAD_DIR && curl -f -L https://greenbone.github.io/docs/latest/_static/docker-compose-22.4.yml -o docker-compose.yml

 

3.4. 도커 설정 파일 수정

- 92번 라인의 127.0.0.1을 삭제하거나 아래와 같이 수정한다.

- 이렇게 수정하지 않을 경우 서버 내부의 브라우저에서만 접속할 수 있다. 외부에서도 접속할 수 있게 수정한다.

#기존 92번 라인을 주석처리하고 아래와 같은 새로운 라인 추가
vi $DOWNLOAD_DIR/docker-compose.yml

#- 127.0.0.1:9392:80
- 9392:80

 

다. OpenVAS 실행

1. 컨테이너 이미지 다운로드 및 실행

1.1. Greenbone 커뮤니티 컨테이너 다운로드

docker compose -f $DOWNLOAD_DIR/docker-compose.yml -p greenbone-community-edition pull

 

1.2. Greenbone 커뮤니티 컨테이너 시작

docker compose -f $DOWNLOAD_DIR/docker-compose.yml -p greenbone-community-edition up -d

 

2. OpenVAS 접속

2.1. 브라우저를 통해 접속

- 브라우저에서 OpenVAS가 설치된 *주소를 입력하여 접속한다

* 주소 예시: 127.0.0.1:9392, 192.168.12.22:9392

- 기본 아이디/패스워드 : admin/admin

 

라. 참고자료

1. Greenbone 홈페이지 설치 가이드

https://greenbone.github.io/docs/latest/22.4/container/index.html

 

Greenbone Community Containers 22.4

Running the Greenbone Community Edition from containers requires knowledge about: Using a terminal, Using docker, Running services via docker-compose. Additionally, a basic knowledge about the arch...

greenbone.github.io