[1,2교시 - 데이터베이스 구축 보안]
/ 데이터베이스 보안 테스트 계획서 및 케이스 작성
/ 데이터베이스 보안 접근제어 적용 테스트
/ 데이터베이스 보안 작업결재 적용 테스트
/ 결함 관리
[3,4,5교시 - 시스템 보안 운영]
snmp
- 네트워크 장비의 성능과 핵심 기능의 현 상태, 기능 정보를 수집하고 관리, 저장할 수 있는 프로토콜
- 관리자는 SNMP를 통해 수집한 정보를 바탕으로 네트워크 장비의 현재 기능 상태와 성능 정보, 장애 발생 부분을 확인하고 대처할 수 있다.
- 162/udp 사용
- Agent는 161/udp 사용
- Manager와 Agent간 SNMP 버전이 일치해야 한다.
참고링크2
/ snmp가 설치되어 있는지 확인
# rpm -qa | grep net-snmp
/ ps -ef 확인
# ps -ef | grep snmpd
/ netstat 확인
# netstat -antup | grep snmpd
- udp쪽에는 LISTEN이 붙지 않는다.
/ SNMP 통신방식(polling)
- 161/udp
- agent랑 Manager랑 왔다갔다하는것
- 폴링의 반대말의 인터럽트이다. 근데 snmp에서는 폴링의 반대말을 trap으로 사용한다.
- 정기적으로 신호를 주고 받는다.
/ SNMP 통신방식(trap)
- 162/udp
- Event Reporting
- agent가 Manager한테 일방적으로 전달
- 요청이 없어도 이벤트가 발생하면 내용을 전달한다.
- polling때문에 간섭이 생기지 않도록 trap을 이용한다.
/ 신호를 주고 받는 체계
- 4가지 신호체계라고 한다.
- GET : 매니저가 요청을 하면 에이전트의 정보를 긁어오는데 요청을 하는것
- GET Next : 정보를 받아오는 것
- SET : 관리자가 에이전트한테 세팅을 하는것
- Trap : 비정기적인 이슈가 발생했을때 관리자에게 이벤트를 전달하기 위한 신호
/ 설정파일 찾기
# rpm -qc net-snmp
/ 설정파일 수정
# cp /etc/snmp/snmpd.conf /etc/snmp/snmpd_bk.conf : 복사
# vim snmpd.conf
- 크게 4부분으로 나뉘어져 있다.
- 문서구조를 어느정도 파악하는것이 필요하고, 실습에서는 63행을 넘어가지 않으니 유의하자.
/먼저 First
- com2sec : snmp 문법 중 일부. 항상 들어가 있어야 한다.
- sec name : 임의의 값. 이름
- source : 대역
- community : 문자열
- 밑에 복사해서 편집한다.
- sec name을 snmpsec준다.
- source : 192.168.111.0/24로 대역을 준다.
- community : monday로 문자열을 준다.
/ Second
- 이것도 위에꺼 복사해서 써보겠다.
- 퍼스트에서 지정했던 보안이름을 넣어 그룹이름을 지정한다.
- groupName : snmpsecGroup (위에서 지정한 sec name에 Group을 붙임)
- securityName : snmpsec(위에서 지정한 sec name으로 지정)
/ Third
- snmp과 관련한 가상의 뷰를 만든다.
- 읽을 수 있는 권한을 주는 가상의 뷰를 만든다.
- name : all (모두 읽기로 권한을 주겠다.)
- subree : .1 (모든것..? 맨위에 값만 사용을 하겠다.)
- mask : 80(그 뒤의 것들은 80으로 덮어버려)
/ Finally
- group : snmpsecGroup (위에 지정한 그룹 이름으로 설정)
- read : all (모두 읽기로 함)
- write : none
- notif : none
- 전체 코드
####
# First, map the community name "public" into a "security name"
# sec.name source community
com2sec notConfigUser default public
com2sec snmpsec 192.168.111.0/24 monday
####
# Second, map the security name into a group name:
# groupName securityModel securityName
group notConfigGroup v1 notConfigUser
group notConfigGroup v2c notConfigUser
group snmpsecGroup v2c snmpsec
####
# Third, create a view for us to let the group have rights to:
# Make at least snmpwalk -v 1 localhost -c public system fast again.
# name incl/excl subtree mask(optional)
view systemview included .1.3.6.1.2.1.1
view systemview included .1.3.6.1.2.1.25.1.1
view all included .1 80
####
# Finally, grant the group read-only access to the systemview view.
# group context sec.model sec.level prefix read write notif
access notConfigGroup "" any noauth exact systemview none none
access snmpsecGroup "" any noauth exact all none none
- 수정 후 시스템을 재시작한다.
# systemctl restart snmpd
# systemctl status snmpd
/ 방화벽 열기
# firewall-config
- 런타임을 영구적으로 변경
- 지금 현재 리눅스 버전에서는 서비스가 안보인다.
- 해서 포트로 추가해야 한다.
- 작업 후 옵션에서 파이어월d 다시 불러오기
- firewall-cmd로 하는 코드는 아래와 같다.
firewall-cmd --permanent --add-port=161/udp
firewall-cmd --permanent --add-port=162/udp
firewall-cmd --reload
firewall-cmd --list-all
/ snmp walk
- snmp utils를 설치하면서 같이 설치된 녀석
- 여기에서는 버전1을 사용한다고 했는데 우리는 버전2를 사용해야한다.
- 커뮤니티 스트링이 public으로 되어 있는데 우리는 monday로 지정했었다.
- 사용 명령어
# snmpwalk -v 2c 192.168.111.101 -c monday system
- 버전은 2c를 많이 쓴다. (3은 호환이 안된다.)
- 101 아이피는 111.0/24대역에 포함이 된다.
- 커뮤니티 스트링은 monday로 지정한다.
- 맨끝의 system은 그냥 문법이다.
/ MID, OID
- MID는 뽑아낼 수 있는 정보
- OID : MID에 포함되어 있는 오브젝트 정보, 구별된 개체값
/ 클라이언트에 net-snmp-utils 설치 후 snmpwalk 실행
# yum -y install net-snmp-utils
# snmpwalk -v 2c 192.168.111.101 -c monday system
- 버전을 1이나 3으로 주면 확인이 되지 않는것을 확인할 수 있다.
- 커뮤니티 이름을 monday로 넣지 않으면 확인이 되지 않는다.
- 만약 커뮤니티 스트링을 다른것도 쓰고 싶다면 서버에서 First부분에 항목을 추가해주면 된다.
# vim /etc/snmp/snmpd.conf
- 만약 버전도 특정 버전을 추가하고 싶다면 Second부분에 항목을 추가해주면 된다.
# vim /etc/snmp/snmpd.conf
- conf파일 수정 후 서버를 재시작해준다.
- 이후 커뮤니티 스트링을 추가로 설정했던 것으로 지정하거나 버전도 따로 지정했던것으로 호출하면 확인이 되는것을 확인할 수 있다.
/ snmptest프로그램 실습
- 버전을 바꿔가며 테스트 해본다.
- 커뮤니티 스트링을 바꿔가며 테스트해본다.
/ 모니터링 툴(리눅스서버, Windows서버)
- 추후 MRTG(무료), PRTG(유료) 프로그램으로 모니터링을 해볼것이다.
- MRTG : 무료, 트래픽 모니터링, linux/windows
- PRTG : 유료, 사용량, cpu, mem, disk, traffic, ping, port, Windows
- CACTI : 무료, httpd + mysql + php
- Zabbix : 무료, (C/S), httpd+mysql+php
- Nagios : httpd+mysql+php
'정보보안학원 > 과정평가형 일지' 카테고리의 다른 글
40일차 - 데이터베이스 보안 구축, 시스템 보안 구축 (0) | 2022.06.15 |
---|---|
39일차 - 데이터베이스 보안 구축, 시스템 보안 운영 (0) | 2022.06.14 |
37일차 - 네트워크 보안 운영 (0) | 2022.06.10 |
36일차 - 데이터베이스 보안 구축, 시스템 보안 운영 (0) | 2022.06.09 |
35일차 - 데이터베이스 구축 보안, 시스템 운영 보안 (0) | 2022.06.08 |