#1 해킹방지
- rkhunter 다운로드 : rookit을 잡아( hunter )주는 도구
-> rookit : 공격자가 root권한을 확보하기 위해 사용하는 해킹 툴
#wget http://172.20.30.142/data/rkhunter-1.4.6.tar.gz // 안되는 사람은 밑에 참조
-> Firefox에서 구글에 접속하여 rkhunter download 검색
-> Sourceforger.net에 접속하여 Download 버튼 클릭
-> Save File을 클릭하여 Downloads에 저장
#cd /home/son/Downloads // Downloads에서 대문자 조심 -> 대소문자를 분간하기 때문
#ls -l // rkhunter-1.4.6.tar.gz 있는지 확인
#tar -zxvf rk<tab> // 압축해제, <tab>키를 활용하여 긴 문장을 한번에 해결
#cd rk<tab> // rkhunter의 디렉토리로 이동
#./install.sh --install
#rkhunter -c // rkhunter에서 대한 파일검사
#2 파일 갯수 및 분류, 출력
1. 갯수 파악 및 정렬
#find /usr/bin -size +10k -size -100k | wc -l // ' | ' 를 통해 동시 명령어 수행
// wc : word count의 약자로 숫자를 세는 것
// ' -ㅣ ' : line 의 약자로 행을 출력
#find /usr/bin -size +10k -size -100k | sort | sort -rn
// sort는 정렬, 분류하다는 의미
// -rn : 내림차순
// -n : 오름차순
// sort를 두번 씀으로 더 확실히 분류
#tail -10 /var/log/secure | awk '{print $1,$2,$3}'
// /var/log/secure 안에 있는 정보 중 맨 밑 10줄만 표기
// ' | ' : 동시 실행
// awk : 1번, 2번, 3번 열을 출력한다.# cat /var/log/secure | awk '{print $1,$2}' | sort | uniq -c( sort -u )
// 1번, 2번열을 보여준다.
// uniq -c : 중복을 제거하고 왼쪽에 개수를 표시
// sort -u : 중복만 제거하고 개수는 표시하지 않음.# echo "mina sana dahyun jeongyeon" > twice.txt // twice.txt에 "" 안의 내용 추가
# echo "momo tzuwi" >> twice.txt // 다음 줄에 "" 안의 내용 추가
#echo "no or no" > twice.txt // twice.txt의 내용을 "" 안의 내용으로 바꾼다.
# [명령문] | sort | sort < twice.txt // 알파벳 순서로 정령# sed -i 's/(old)/(new)/g' // sed : old를 new로 치환하여
#lastlog // 사용자들의 마지막 로그인 시간
// 접속한 적이 없으면 never logged in
2. MAC Time
- 누가 어떤 파일에 접근 / 수정 / 생성을 했는지 파악
-atime : access time(접근 시간) -> cat, less, vi 등을 접근했을 시
-> #find / -atime +100 // 접근한지 100일이 넘은 파일 찾기
-> #find -type f -atime +100 // 파일 형태가 f (file)인 것들을 찾는다.
-mtime : modift time(수정 시간)
-> #find / -mtime +100 // 수정한지 100일이 넘은 파일 찾기
-ctime : create time(생성 시간)
-> #find / -ctime -3 // 생성한지 3일 이내의 파일 찾기
#find / -name "*.txt" -exec rm {} \;
-> txt 파일들을 찾아 rm(remove) 제거한다.
-> *.txt를 {}에 넣어 찾는다.
-> \(Back slash); 로 명령문을 끝낸다.
#3 시스템 설정
1. IP 변경
# nmtui // IP를 변경하기 위한 시스템에 접속
-> edit a connection 클릭
-> ens160 클릭
-> IPv4 에서 <Automatic>으로 들어가 Manual로 바꿔준다.
-> IPv4의 show를 눌러 안의 내용을 펼친 뒤 Address, Gateway, DNS servers를 바꾼다.
-> OK를 누르고 quit 눌러 인터페이스를 나간다.
# ifdown ens160 // nmtui에서 변경 후 인터페이스를 껐다가 켜야 반영
# ifup ens160
# ifconfig // 바뀐 IP확인
더보기*GUI가 없는 버전
# cd /etc/sysconfig/network-scripts
# vi ifcfg-ens160
-> BOOTPROTO=none // dhcp : 주소 자동 부여를 none으로 바꿔준다.
-> IPADDR = [해당주소] // 맨밑에 아래의 4개를 입력
-> PREFIX = [Prefix의 숫자]
-> GATEWAY = [주소]
-> DNS1= [주소]
-> ESC를 누른다. / :wq
# ifconfig ens160 // 업데이트 전 IP주소를 확인
# ifdown ens160
# ifup end160
# ifconfig // 바뀐 IP 주소확인
2. IP변경 -> daum으로의 접속을 차단
# cd /etc/sysconfig/network-scripts
#vi /etc/hosts
-> i
-> x.x.x.x [tab] www.daum.net // 다음으로 접속을 작성한 ip로 강제접속
-> ESC를 누른다. / :wq
firewall에서 www.daum.net 검색하여 확인
3. 예약명령
- cron : 반복되는 작업 또는 특정 시점에 수행할 작업을 미리 등록
분 시 일 월 요일 사용자 실행명령
00 05 1 * * root cp -r /home /backup
-> * : 매월 한다는 의미
요일 : 0 ~ 6 or SUN ~ SAT
0 : 일요일 1 : 월요일
2 : 화요일 3 : 수요일
4 : 목요일 5 : 금요일
6 : 토요일 7 : 일요일
#cd /etc/cron.monthly
#touch myBackup.sh // myBackup.sh 생성
#chmod 755 myBackup.sh
#vi myBackup.sh
-> #!/bin/sh // shell script 선언
// shell script : 명령어를 여러개를 수행하는 파일 / 확장자 ( .sh )
-> set $(date)
-> fname="backup-$2$3tar.xz"
-> tar cfJ /backup/$fname /home
#mkdir /backup
#systemctl restart crond
#vi /etc/crontab // 백업할 내용 crontab에 저장
-> 05 19 2 * * root run-parts /etc/cron.monthy
# cd /bakcup // backup 디렉토리로 이동하여 ls를 통해 아무것도 없음을 확인
# ls // 설정 시간이 되었을 때 다시 ls로 파일을 확인하여 파일 생성됐음을 확인
- at : 일회성 작업 예약
# at [예약시간]
-> at> echo"Merry" >> /home/twice
-> at> <EOT> // [ctrl + D] 를 눌러 프롬포트를 나온다.
# date // 현재 시간 확인
# ls // 파일 확인을 통해 파일이 없고 예약시간 후 파일 생성을 확인
#4 기타 확인
#ps -ef | grep gdm // ps : ProcessID, grep : 원하는 문자열
// gdm이라는 문자열이 들어가 있는 프로세스번호들을 조회
#pstree [프로세스 번호] // 해당 프로세스번호와 얽혀있는 파일들을 트리모양으로 나열
#netstat -nap | less // n : number, a : all, p : process -> 프로세스에 대한 정보 확인
-> 아래의 화면을 통해 PID, ssh 실행여부, IP주소 등을 확인 가능
'LINUX' 카테고리의 다른 글
LINUX Server 만들기 (0) | 2023.06.02 |
---|---|
LINUX 사용자 관리, wordpress 만들기 (0) | 2023.05.29 |
LINUX의 설치와 기본 명령어 (0) | 2023.05.26 |