Day 14(2025.07.08.TUE) - rsync


header.php - Backup 추가


- 백업 경로 이동 -

backup.geumsol.kr(192.168.0.95)


- cat /etc/crontab4 -
@IP100:cd /backup> cat /etc/crontab


91번
- owncloud - 2021 - backup - geumsol
- rsync랑 합쳐서 백업 데이터를 가져가게 만듦(외부용)

94번 
-samba : 윈도우-리눅스 연결(내부에서 언제든기 확인 가능(백업 폴더))
- rsync(하드디스크) 접속 시 아직 동기화를 안 시킨 모습을 볼 수 있음.


access.log랑 같이 확인하기(해킹인지 아닌지 분류 가능)


95번 
- 복구 연습
- 후이즈 - backup.geumsol.kr 추가(8095 붙여주기)


100 > /backup/



● rsync ●


- Kali -

Web Scanning - dirbuster - http://st.geumsol.kr



- Ubuntu1 연결 GNS -

nano /etc/netplan/50-cloud-init-yaml

sudo nano /etc/hostname - BACKUP.geumsol.kr 


- Ubuntu2 -

df -h로 연결된 하드 확인
/dev/sdb1 > /backup(10G)
/dev/sdd1 > /home(5G)

nano backup.sh


연결한 하드디스크에 정상적으로 백업되는지 확인



[교재. 이것이 우분투 리눅스이다]

p.253


- Kali -

-위(U2)-

root@st:backup.sh 있는지 확인하기

내용 넣어주기(IP100:~$ cat backup.sh에 있음)

#!/bin/bash
set $(date)
tar -czpf /backup/master/master_`date +%Y%m%d%H%M%S`.tgz /home/master/public_html 1>/dev/null 2>/dev/null
mysqldump --extended-insert=FALSE -umaster -p123456 master > /backup/master/master_`date +%Y%m%d%H`.sql 
find /backup/ -type f -mtime +10 | sort | xargs rm -f


show databases;
create database master;
CREATE USER 'master'@'localhost' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON master.* TO 'master'@'localhost';
flush privileges;



계정 만들고 데이터베이스 만들어주기(dvwa, 워드프레스, gnu)


root
mkdir dvwa
mkdir word
mkdir gnu
chown dvwa:dvwa dvwa
chown word:word word
chown gnu:gnu gnu


show databases;
create database dvwa;
CREATE USER 'dvwa'@'localhost' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON dvwa.* TO 'dvwa'@'localhost';
flush privileges;

show databases;
create database word;
CREATE USER 'word'@'localhost' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON word.* TO 'word'@'localhost';
flush privileges;

show databases;
create database gnu;
CREATE USER 'gnu'@'localhost' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON gnu.* TO 'gnu'@'localhost';
flush privileges;


root@st:/home/master#

nano /etc/crontab 수정


한국 시간으로 수정 : date or timedatectl - sudo timedatectl set-timezone Asia/Seoul - date

오전 4시로 돌리기 : timedate ctl set-time "2025-07-08 03:58:00"

root/backup# systemctl restart cron

date 070803582025


man rsync(rsync 매뉴얼) - 빠르고 다재다능, 원격이나 로컬의 파일을 copy 해줌

rsync -avz --exclude-from=/etc/rsync_exclude.lst /backup 192.168.1.3::backup

백업을 보내는데 rsync_exclude.lst 얘만 제외

rsync: [client] failed to open exclude file /etc/rsync_exclude.lst: No such file or directory (2)           
rsync error: error in file IO (code 11) at exclude.c(1482) [client=3.2.7]                      

파일이 없으므로 생성해주기 touch /etc/rsync_exclude.lst

rsync: [sender] failed to connect to 192.168.1.3 (192.168.1.3): Connection refused (111)
rsync error: error in socket IO (code 10) at clientserver.c(139) [sender=3.2.7]

192.168.1.3

2. nano /etc/crontab


3. date 070803582025
4. systemctl restart cron



-아래(U1)-

kali-Ubuntu1 접속 설정

- 네트워크 정의 : ST3 192.168.1.3
- 서비스 정의 : IP003 22003
- NAT : Any_To_DMZ(22003) Any IP003 Outside(address) ST3 SSH 체크 두 개

접속 : ssh -l master geumsol.kr -p 22003


root

/etc/rsyncd.conf

[backup]
path = /backup
comment = test
uid = root
gif = root
use chroot = yes
read only = false
host allow = 192.168.1.1
max connections = 10
timeout = 30

systemctl restart rsync
systemctl enable rsync
ls
cd /
ls
1.mkdir /backup(위에서 보내기)
ls
cd backup/
ls
cd backup/
ls
cd master/
ls



네트워크 정의

서비스 정의 IP003 22023
ST3 호스트 192.168.1.3
NAT Any_To_DMZ(22003) Any IP003 Outside(address) ST3 SSH 체크 두 개

ssh master 192.168.1.5 -p 22003