kjh00n의 기록저장소

rsync 서비스 본문

보안관제 기획운영

rsync 서비스

kjh00n 2025. 2. 5. 10:20

rsync 서비스

  • 서로 다른 장비에서 파일이나 데이터를 동기화 할 수 있는 서비스
  • 서버 구축 / 클라이언트에서 원하는 데이터를 송신, 수신 형태로 동작
  • 서버는 원본 데이터를 갖고 있는 곳
  • 클라이언트는 원본데이터를 동기화 받아 저장하는 곳
  • rsync 서버가 백업 대상 / rsync 클라이언트가 백업 서버가 된다.

192.168.50.50 (서버)

경로 이동한 후에 rsyncd.service 생성
rsyncd.service 파일
rsync 실행
vim /etc/rsyncd.conf에서 내용 추가해주고 systemctl restart rsyncd 해주기

192.168.50.100 (클라이언트)

파일 동기화하기
50.50의 /var/log 밑에 있던 파일들이 50.100으로 동기화됐다
동기화한 상태에서 또 동일화하면 변경이 없다 (차등 백업/동기화) / 변경된 데이터만 전송한다
crontab -e 입력
rsync -avz 192.168.50.50::log_backup /backup/log로 동기화될 때는 Data들이 노출된다 (Port는 873번)
rsync -avz -e ssh 192.168.50.50::log_backup /backup/log로 입력하면 SSH로 통신되면서 암호화된다 (Port는 22번)

SSH로 통신되려면 50.50의 SSH에 root 로그인을 허용해줘야한다.

대신 예약작업은 사용이 불가능하다 (비밀번호를 입력해야하기 때문)


그럼 패스워드 없이 SSH 접속할 수는 없을까?

50.100에서 key 생성
50.100
50.50에서 확인하고 파일 이름 변경
50.100에서 ssh를 사용해서 50.50에 접속하는데 비밀번호 입력안해도 로그인이 됨
50.100에서 rsync를 사용해서 암호화해서 동기화를 해도 비밀번호 입력을 안해도 됨

이러면 crontab에서 예약작업을 통해서 자동 동기화를 진행할 수 있게 됐다

'보안관제 기획운영' 카테고리의 다른 글

ESM 구축  (0) 2025.02.04