안녕하세요! mj입니다.
오늘은 60일차 보안 스크립트 실습에 대해 알아보겠습니다. 보안 스크립트는 시스템의 보안을 강화하고, 다양한 보안 위협으로부터 보호하기 위해 매우 중요합니다. 이번 포스팅에서는 여러 가지 보안 관련 스크립트를 작성하고, 그 결과를 함께 살펴보겠습니다.
1. 보안 스크립트란?
보안 스크립트는 시스템의 보안을 강화하기 위해 작성되는 코드입니다. 이러한 스크립트는 자동화된 작업을 통해 보안 위협을 탐지하고 대응하는 데 도움을 줍니다.
2. 실습할 보안 스크립트 예시
다양한 보안 스크립트를 작성해보겠습니다. 각 스크립트의 목적과 출력 결과를 확인해 보세요.
예시 1: 시스템 로그 검사 스크립트
#!/bin/bash
cat /var/log/syslog | grep -i error
이 스크립트는 시스템 로그에서 “error”라는 단어가 포함된 모든 행을 출력합니다. 이를 통해 시스템의 문제를 조기에 발견할 수 있습니다.
출력 결과:
Apr 02 12:00:00 hostname kernel: [ERROR] Something went wrong
Apr 02 12:05:00 hostname application: [ERROR] Application crashed
예시 2: 비밀번호 복잡성 검사 스크립트
#!/bin/bash
read -sp "비밀번호를 입력하세요: " password
if [[ ${#password} -lt 8 ]]; then
echo "비밀번호는 8자 이상이어야 합니다."
else
echo "비밀번호가 안전합니다."
fi
이 스크립트는 사용자에게 비밀번호를 입력받아 길이를 검사하고, 적절한 메시지를 출력합니다.
출력 결과:
비밀번호를 입력하세요: ********
비밀번호가 안전합니다.
예시 3: 포트 스캔 스크립트
#!/bin/bash
for port in {1..65535}; do
(echo > /dev/tcp/localhost/$port) &>/dev/null && echo "포트 $port가 열려 있습니다."
done
이 스크립트는 지정한 포트 범위 내에서 열린 포트를 확인합니다.
출력 결과:
포트 22가 열려 있습니다.
포트 80가 열려 있습니다.
예시 4: 파일 무결성 검사 스크립트
#!/bin/bash
sha256sum /path/to/file > checksum.txt
echo "파일 무결성 검사가 완료되었습니다."
이 스크립트는 특정 파일의 SHA-256 해시를 생성하여 무결성을 검사합니다.
출력 결과:
파일 무결성 검사가 완료되었습니다.
예시 5: 사용자 로그인 모니터링 스크립트
#!/bin/bash
last | head -n 10
이 스크립트는 최근 10명의 사용자 로그인 기록을 출력합니다.
출력 결과:
username pts/0 :0 Tue Apr 2 12:00 - 12:05 (00:05)
3. 결론
이와 같이 다양한 보안 스크립트를 작성하여 보안을 강화할 수 있습니다. 각 스크립트는 특정한 목적을 가지고 있으며, 이를 통해 시스템의 안전성을 높일 수 있습니다. 보안 스크립트 실습을 통해 여러분도 보안에 대한 이해를 높이고, 실력을 키워보세요.