AoiAWD 설치 문제 해결 가이드

서버 준비

네트워크 구성은 다음을 참고하세요: [네트워크 구성 참고 자료]

cd 명령어는 지정된 디렉토리로 이동하는 데 사용됩니다. 실제 환경에 맞게 조정하여 사용하세요.

cd 명령어에 익숙하지 않으신가요? [cd 명령어 사용법]

설치 절차 및 문제 해결

1. 서버 업데이트

sudo apt-get update
sudo apt-get upgrade

apt-get 사용 시 문제가 발생하면 소스를 변경하고 자주 업데이트하세요.

2. 프로젝트 로컬에 클론

서버에 git이 설치되어 있지 않다면 먼저 git을 설치하세요.

apt install -y git
git clone https://github.com.cnpmjs.org/DasSecurity-HatLab/AoiAWD.git

네트워크 문제로 github와 연결이 안 되나요? 호스트 파일을 수정하세요!

리소스: [호스트 파일]

작업에 익숙하지 않으신가요? 자세한 단계:

  1. sudo vim /etc/hosts 명령으로 파일을 엽니다.
  2. vim이 설치되어 있지 않다면 sudo apt install vim으로 설치하세요.
  3. Shift + : 키를 눌러 명령 모드로 들어갑니다.
  4. Enter 키를 누른 후 i 키를 눌러 삽입 모드로 전환합니다.
  5. 방향키로 원하는 위치로 이동하고 리소스의 텍스트를 복사하여 붙여넣습니다.
  6. sudo /etc/init.d/networking restart 명령으로 새 설정을 적용합니다.

3. MongoDB 및 기타 AoiAWD 필수 의존성 설치

sudo apt install mongodb-server
sudo pecl install mongodb

MongoDB 설치가 성공하면 다음과 같은 메시지가 나타납니다: "You should add "extension=mongodb.so" to php.ini"

설치 중 문제가 발생하면 다음 명령어를 시도해보세요:

sudo apt-get install -y mongodb-org

여전히 문제가 있다면? [MongoDB 설치 상세 가이드]

sudo apt-get install php7.2-dev php-pear

설치에 실패하면 다음 명령어를 사용하세요:

  1. 국내 소스 추가
  2. sudo apt-get install software-properties-common
    sudo add-apt-repository ppa:ondrej/php
    
  3. 설치
  4. sudo apt-get install php7.2-dev php-pear
    

여전히 문제가 있다면? [PHP 설치 상세 참조]

php.ini 설정

cd /etc/php/7.2/cli/php.ini

extension=mongodb.so를 추가하고 다음 두 항목을 Off로 설정하세요(phar.readonly = Off, phar.require_hash = Off). 앞에 있는 세미콜론을 잊지 마세요.

PHP 활성 버전을 확인하여 오류가 없고 설정이 올바른지 확인하세요. PHP 환경이 7.2 이상이어야 합니다.

php -v

vim에 익숙하지 않으신가요? 자세한 단계:

  1. sudo vim /etc/php/7.2/cli/php.ini 명령으로 파일을 엽니다.
  2. vim이 설치되어 있지 않다면 sudo apt install vim으로 설치하세요.
  3. Shift + : 키를 눌러 명령 모드로 들어갑니다.
  4. /;extension 명령으로 수정할 위치를 찾습니다.
  5. Enter 키를 누른 후 i 키를 눌러 삽입 모드로 전환합니다.
  6. 방향키로 원하는 위치로 이동하고 새로운 줄에 extension=mongodb.so를 추가합니다.
  7. 앞에 세미콜론(;)이 없는지 확인하세요. 그렇지 않으면 수정이 적용되지 않습니다.

여전히 오류가 발생하나요? sudo update-alternatives --config php 명령으로 PHP 버전을 전환한 후 다시 설정하세요.

4. 프로젝트 빌드

프론트엔드 프로젝트 빌드

apt install npm

npm 설치

npm config set registry https://registry.npm.taobao.org

다운로드 소스를 국내로 변경(일부 오류 방지에 도움이 됨, 필수는 아님)

npm cache clean --force
cd AoiAWD
cd Frontend
npm install
npm run build

명령 실행 시 오류가 발생하면 node-sass 모듈을 설치하세요: npm install node-sass 또는 cnpm install node-sass@latest

명령이 성공적으로 실행되면 dist/ 디렉토리에 index.html과 static 디렉토리가 생성됩니다.

AoiAWDcore 빌드

cd AoiAWD
rm -rf src/public/*
cp -r ../Frontend/dist/* src/public/
php compile.php

성공적으로 실행되면 aoiawd.phar 파일이 생성됩니다.

inotifywait 설치

위에서 언급한 도구입니다. 왜 이 단계에서 설치해야 하는지는 모르지만, 이 단계에서 설치하면 성공률이 높습니다.

mkdir inotifywait
cd inotifywait
wget http://github.com/downloads/rvoicilas/inotify-tools/inotify-tools-3.14.tar.gz
tar zxf inotify-tools-3.14.tar.gz
cd inotify-tools-3.14/
./configure && make && make install

오류가 발생하거나 설치가 실패하면 명령을 분할해보세요:

make
make install

TapeWorm 빌드

cd TapeWorm
php compile.php

성공적으로 빌드되면 tapeworm.phar 파일이 생성됩니다.

RoundWorm 빌드

cd RoundWorm
make

빌드에 실패하면 inotifywait 설치를 다시 실행하세요.

성공적으로 빌드되면 roundworm 파일이 생성됩니다.

Guardian 빌드

cd Guardian
php compile.php

성공적으로 빌드되면 guardian.phar 파일이 생성됩니다.

5. AoiAWD 활성화

cd AoiAWD
./aoiawd.phar

시작 후 할당된 포트: 1337은 웹 접속 포트, 8023은 프로브 수신 포트입니다. IP:1337을 통해 활성화된 AoiAWD 인터페이스에 접속하세요.

AoiAWD 인터페이스에 접속하면 무작위로 생성된 토큰을 입력하여 진입하세요.

6. AoiAWD 사용

설치가 완료되면 생성된 폴더의 xxx.phar 등 파일을 제공된 표적 머신으로 보내고 권한을 부여하는 것을 잊지 마세요. IP는 클라우드 서버 IP이고 포트는 기본값인 8023입니다.

chmod +x tapeworm.phar
chmod +x roundworm
chmod +x guardian.phar
./tapeworm.phar -d 디렉토리 -s IP:포트
./roundworm -w 디렉토리 -s IP -p 포트
./guardian.phar -i 디렉토리 -s IP:포트

기타 문제 해결 방법

오류 메시지를 복사하여 키워드를 추출하고 Google(국내에서는 Bing)에서 검색하세요.

잠재적인 오류 방향

  • 필수 리소스 부족, 필요한 패키지 다운로드 및 설치 필요
  • 버전 불일치, 업그레이드 또는 다운그레이드 필요
  • 국내 네트워크 환경 문제, 다운로드 소스 업데이트 필요
  • 단계 순서 오류
  • 가상 머신 초기 구성 불완전
  • 명령어 사용 문제

일반적인 문제 해결 방법

  • 명령어 상세 정보 조회
  • 패키지 제거 후 재설치
  • 가상 머신 재시작
  • 물리 머신 재시작
  • 다른 물리 머신으로 변경
  • 마지막 수단: 시스템 재설치

관련 자료 링크

태그: AoiAWD 보안테스트 PHP MongoDB linux

5월 24일 18:30에 게시됨