13.13. AIDE를 사용한 침입 탐지
AIDE(Advanced Intrusion Detection Environment)는 파일 및 디렉터리 무결성 검사기입니다. 무단 파일 변조 또는 변경 사항을 감지하는 데 사용됩니다. 예를 들어 AIDE에서는 시스템 암호 파일이 변경되는 경우 이를 경고할 수 있습니다.
AIDE는 시스템 파일을 분석하고 파일 해시의 무결성 데이터베이스를 컴파일합니다. 이 데이터베이스는 파일 및 디렉터리의 무결성을 확인하고 변경 사항을 감지하는 데 사용됩니다. 자세한 내용은 AIDE 서비스에서 지원하는 Reporting options 및 AIDE 서비스가 시스템 업그레이드에 미치는 영향을 참조하십시오.
절차
director에는 AIDE 서비스가 포함되어 있습니다. AIDE 규칙을 추가하여 AIDE 서비스에서 무결성 데이터베이스를 생성하는 데 사용하는 디렉터리를 지정하거나 제외할 수 있습니다. 예를 들어 다음 파일을 생성할 수 있습니다.
참고이 예는 적극적으로 유지 관리되거나 벤치마킹되지 않으므로 요구 사항에 맞는 AIDE 값을 선택해야 합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이 예에서 첫 번째 AIDE 규칙은
TripleORules라는 별칭으로, 디렉터리가 사용하는 모든 규칙을 공통 속성을 지정합니다. 이 별칭을 생성하고 사용하면 각 규칙에 대해 이러한 속성을 반복할 필요가 없습니다.p+의 지정된 속성은 sha256의 무결성 체크섬을 사용하여 모든 파일 권한sha256p를 모니터링합니다. 복잡한 AIDE 규칙 생성에 대한 자세한 내용은 복잡한 AIDE 규칙 생성 을 참조하십시오.AIDE 속성의 전체 목록은 https://aide.github.io/ 의 AIDE MAN 페이지를 참조하십시오.
-
설정을
/home/stack/templates/디렉터리에aide.yaml이라는 환경 파일로 저장합니다. openstack overcloud deploy명령에 이/home/stack/templates/aide.yaml환경 파일을 환경에 특정한 기타 필요한 heat 템플릿 및 환경 파일과 함께 포함합니다.openstack overcloud deploy --templates ... -e /home/stack/templates/aide.yaml
openstack overcloud deploy --templates ... -e /home/stack/templates/aide.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
13.13.1. 복잡한 AIDE 규칙 생성 링크 복사링크가 클립보드에 복사되었습니다!
AIDE 규칙의 복잡성을 높이기 위해 복잡한 AIDE 별칭을 구현하거나 지원되는 AIDE 값을 사용할 수 있습니다.
복잡한 AIDE 별칭을 구현하여 복잡한 AIDE 명령 세트를 생성하는 모든 AIDE 규칙에 통합할 수 있습니다. 할 수 있습니다
예를 들어 다음 별칭은 다음 AIDE 지침으로 변환됩니다. 모니터 권한, inode, 링크 수, 사용자, 그룹, 크기, 블록 수, mtime, ctime을 사용하여 체크섬 생성에 sha512를 사용합니다.
MyAlias = p+i+n+u+g+s+b+m+c+sha512
MyAlias = p+i+n+u+g+s+b+m+c+sha512
별칭은 이를 구현하는 관련 규칙에 재귀적으로 적용되므로 생성하는 첫 번째 AIDE 규칙이어야 합니다.
별칭 후 AIDE 서비스에서 포함 및 제외할 디렉터리를 지정하는 규칙을 지정해야 합니다. 정규식을 사용할 수 있습니다. 예를 들어 ! 연산자는 이러한 하위 디렉터리를 제외하는 데 사용됩니다. !/var/log.* 및 !/var/spool.*.
AIDE 규칙에서 다음 AIDE 값을 사용할 수 있습니다.
-
AideConfPath: aide 구성 파일의 전체 POSIX 경로이며 기본값은/etc/aide.conf입니다. 파일 위치를 변경할 필요가 없는 경우 기본 경로를 사용하는 것이 좋습니다. -
AideDBPath: AIDE 무결성 데이터베이스의 전체 POSIX 경로입니다. AIDE 데이터베이스 파일은 노드에서 읽기 전용 파일 마운트에 저장되므로 Operator가 자체 전체 경로를 선언할 수 있도록 이 값을 구성할 수 있습니다. -
AideDBTempPath: AIDE 무결성 임시 데이터베이스의 전체 POSIX 경로입니다. 이 임시 파일은 AIDE에서 새 데이터베이스를 초기화할 때 생성됩니다. -
AideHour: 이 값은 hour 속성을 AIDE cron 구성의 일부로 설정하는 것입니다. -
AideMinute: 이 값은 minute 속성을 AIDE cron 구성의 일부로 설정하는 것입니다. -
AideCronUser: 이 값은 linux 사용자를 AIDE cron 구성의 일부로 설정하는 것입니다. -
AideEmail: 이 값은 cron 실행이 수행될 때마다 AIDE를 수신하는 이메일 주소를 설정합니다. -
AideMuaPath: 이 값은 AIDE 보고서를AideEmail내에 설정된 이메일 주소로 보내는 데 사용되는 메일 사용자 에이전트의 경로를 설정합니다.
13.13.2. AIDE 서비스에서 지원하는 보고 옵션 링크 복사링크가 클립보드에 복사되었습니다!
AIDE director 서비스를 사용하면 cron 작업을 구성할 수 있습니다. 기본적으로 보고서를 /var/log/audit/ 로 보냅니다.
이메일 경고를 사용하려는 경우 AideEmail 매개변수를 활성화하여 구성된 이메일 주소로 경고를 보냅니다.
이메일에 의존하는 경우 이 보고 방법은 시스템 중단 및 의도하지 않은 메시지 필터링에 취약할 수 있습니다.
13.13.3. AIDE 서비스가 시스템 업그레이드에 미치는 영향 링크 복사링크가 클립보드에 복사되었습니다!
업그레이드가 완료되면 AIDE 서비스가 새 무결성 데이터베이스를 자동으로 다시 생성하여 업그레이드된 모든 파일이 업데이트된 체크섬을 갖도록 올바르게 다시 계산되도록 합니다.
openstack overcloud deploy 를 초기 배포에 대한 후속 실행으로 호출하고 AIDE 구성 규칙이 변경되면 director AIDE 서비스에서 새 구성 속성이 무결성 데이터베이스에 캡슐화되도록 데이터베이스를 다시 빌드합니다.