두 호스트(클라이언트 192.168.4.107 및 서버 192.168.4.106)를 연결하기 위한 SSH 키를 만들었습니다. 클라이언트 컴퓨터에서 다음 명령을 실행했는데 SSH 연결이 작동했습니다.
ssh-keygen
ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected]
ssh-keygen -lf /root/.ssh/id_rsa.pub -E md5
MD5:9a:3d:f7:c9:38:91:41:c7:8e:ca:a0:75:a2:51:b5:fm
ssh-keygen -lf /root/.ssh/id_rsa.pub -E sha256
2048 SHA256:9V6hDnLdq7heMYT2S54AHamAo9Bi8eQVa5oNa1dyHuo
서버에서 감사 시스템을 활성화했으며 보고서(aureport -i)를 실행하면 다음과 같은 메시지가 나타납니다.
type=CRYPTO_KEY_USER msg=audit(19/02/2019 12:35:42.590:1145) : pid=12444 uid=root auid=unset ses=unset subj=system_u:system_r:sshd_t:s0-s0:c0.c1023 msg='op=destroy kind=server fp=SHA256:8a:99:38:f8:db:fd:02:52:76:ce:f8:c5:9a:ef:ef:47:98:23:fb:49:bf:c6:4b:de:e3:76:08:9c:f7:33:01:16 direction=? spid=12444 suid=root exe=/usr/sbin/sshd hostname=? addr=? terminal=? res=success'
활동의 목적은 SSH 키 덕분에 감사 시스템을 통해 사용자 로그인을 감지하는 것입니다. 문제는 두 개의 지문 키가 일치하지 않는다는 것입니다(IP 추적이 작동하지 않고 클라우드에서 작업하며 IP는 공개이고 항상 모든 사용자에게 동일합니다)).
SHA256의 지문 키 형식은 실제로 audit.log 파일의 Fp와 다릅니다. fp 키의 형식은 무엇입니까? 내가 어디서 잘못됐나요? 감사해요!
답변1
클라우드 서버에서 사용자의 활동 변화를 감지하는 솔루션을 설명했습니다. 다음 요구 사항을 충족하십시오.
- 클라이언트에는 SHA256 xxxxx 지문이 포함된 개인 키가 있고 SSH 연결이 활성화되어 있습니다.
- 서버에서 감사 시스템을 활성화합니다.
- /home/oracle/과 같은 지정된 폴더에 대한 모니터링 규칙을 활성화합니다.
파일 수정을 감지하기 위해 다음 단계를 따랐습니다. 예는 다음과 같습니다.
ausearch -f
------------
20/02/2019 16:37:00 /home/oracle/.bash_history 2 yes /usr/bin/bash 54321 770
770은 이벤트 번호입니다. 감사합니다. 미팅 번호를 찾을 수 있습니다.
ausearch -p | grep 770
----------------------
type=SYSCALL msg=audit(20/02/2019 16:37:00.868:770) : arch=x86_64 syscall=open
success=yes exit=3 a0=0x10bd080 a1=O_WRONLY|O_APPEND a2=0x180 a3=0x0 items=1
ppid=8649 pid=8650 auid=oracle uid=oracle gid=oinstall euid=oracle suid=oracle
fsuid=oracle egid=oinstall sgid=oinstall fsgid=oinstall tty=pts1 ses=58
comm=bash exe=/usr/bin/bash subj=unconfined_u:unconfined_r:unconfined_t:s0-
s0:c0.c1023 key=modifica_fil
세션 번호는 58입니다. 감사합니다. 로그인 세션의 pid를 찾을 수 있습니다
ausearch -i | grep ses=58
---------------------------
type=LOGIN msg=audit(20/02/2019 16:34:37.366:747) : pid=8646 uid=root
subj=system_u:system_r:sshd_t:s0-s0:c0.c1023 old-auid=unset auid=oracle tty=
(none) old-ses=4294967295 ses=58 res=yes
로그인 PID는 8646입니다. var/log/secure에서 지정된 사용자가 사용하는 지문 키를 볼 수 있습니다.
cat secure | grep 8646
----------------------
sshd[8646]: Accepted publickey for oracle from 192.168.4.107 port 58892 ssh2:
RSA SHA256:x.x.x.x.x