2장. Ansible을 사용하여 IDPS(Network Intrusion Detection and Prevention Systems) 자동화
Ansible을 사용하여 IDPS(Intrusion Detection and Prevention System)를 자동화할 수 있습니다. 이 가이드의 목적을 위해 IDPS로 Snort를 사용합니다. Ansible 자동화 허브를 사용하여 작업, 역할 및 모듈과 같은 콘텐츠 컬렉션을 사용하여 자동화된 워크플로를 생성합니다.
2.1. 요구 사항 및 사전 요구 사항 링크 복사링크가 클립보드에 복사되었습니다!
Ansible을 사용하여 IDPS 자동화를 시작하기 전에 IDPS를 성공적으로 관리하는 데 필요한 적절한 설치 및 구성이 있는지 확인합니다.
- Ansible-core 2.15 이상을 설치했습니다.
- SSH 연결 및 키가 구성됩니다.
- IDPS 소프트웨어(Snort)가 설치 및 구성되어 있습니다.
- 새 정책을 적용하기 위해 IDPS 서버(Snort)에 액세스할 수 있습니다.
2.1.1. IDPS 설치 확인 링크 복사링크가 클립보드에 복사되었습니다!
Snort가 성공적으로 구성되었는지 확인하려면 sudo 를 통해 호출하고 버전을 요청합니다.
$ sudo snort --version
,,_ -*> Snort! <*-
o" )~ Version 2.9.13 GRE (Build 15013)
"" By Martin Roesch & The Snort Team: http://www.snort.org/contact#team
Copyright (C) 2014-2019 Cisco and/or its affiliates. All rights reserved.
Copyright (C) 1998-2013 Sourcefire, Inc., et al.
Using libpcap version 1.5.3
Using PCRE version: 8.32 2012-11-30
Using ZLIB version: 1.2.7
sudo systemctl 을 통해 서비스가 적극적으로 실행되고 있는지 확인합니다.
$ sudo systemctl status snort
● snort.service - Snort service
Loaded: loaded (/etc/systemd/system/snort.service; enabled; vendor preset: disabled)
Active: active (running) since Mon 2019-08-26 17:06:10 UTC; 1s ago
Main PID: 17217 (snort)
CGroup: /system.slice/snort.service
└─17217 /usr/sbin/snort -u root -g root -c /etc/snort/snort.conf -i eth0 -p -R 1 --pid-path=/var/run/snort --no-interface-pidfile --nolock-pidfile
[...]
Snort 서비스가 실행 중이 아닌 경우 systemctl restart snort 를 사용하여 다시 시작하고 상태를 다시 확인합니다.
서비스가 적극적으로 실행 중인지 확인한 후 CTRL 및 D 를 동시에 누르거나 명령줄에서 exit 을 입력하여 Snort 서버를 종료합니다. 모든 추가 상호 작용은 Ansible 제어 호스트에서 Ansible을 통해 수행됩니다.