본문 바로가기

정보공유/정보공유

SSH 비밀번호 없이 접속하기 / 리눅스 서버를 NAS에 rsync 백업 동기화

소통을 디자인하는 아이티 카이로스입니다~

 

[목차]

 

1. ssh를 암호 없이 접속하는 방법을 학습 후 

2. linux 서버에서 시놀로지 NAS로 rsync 명령어를 crontab에 등록하여 동기화는 방법을 설명합니다.

 

[환경]

 

CentOS7 x64

Synology NAS DS1517+ (DSM 6.2.1-23824 Update 6)

 

[1. ssh, rsync, scp를 암호 없이 접속하는 방법 ]

 

## 시놀로지 나스 제어판 > 사용자 > 고급 > 사용자 홈서비스를 활성화합니다. 

## 시놀로지 나스 제어판 > 터미널 & SNMP 섹션에서 SSH를 활성화합니다.

## 시놀로지 나스 제어판 > 파일 서비스 > rsync 탭에서 RSync를 활성화합니다.

## 시놀로지 나스에 SSH 접속 후 ~/위치에 .ssh폴더를 생성합니다.

linux@server:~$ cd ~/
linux@server:~$ mkdir .ssh
linux@server:~$ ls -al
total 0
drwxrwxrwx+ 1 linux users  8 Mar 31 19:59 .
drwxrwxrwx+ 1 root  root  32 Mar 31 19:56 ..
drwxrwxrwx+ 1 linux users  0 Mar 31 19:59 .ssh

## 리눅스 서버에서 아래 명령어로 개인키/공개키를 생성합니다. (만약 이미 가지고 있다면 생성할 필요가 없음)

ssh-keygen -t rsa

암호를 입력하라고 하면 빈 상태로 두고 엔터를 입력하세요. 

그리고 아래 명령어로 권한 설정을 합니다.

chmod 700 ~/.ssh && chmod 600 ~/.ssh/*

그리고 공개키를 나스로 전송합니다 :

ssh-copy-id -i ~/.ssh/id_rsa.pub -p SSH_PORT ADMIN_USER_ONLY@XXX.XXX.XXX.XXX

## 시놀로지 나스에 SSH로 연결합니다.( 비밀번호 입력 필요)

ssh -p SSH_PORT ADMIN_USER_ONLY@XXX.XXX.XXX.XXX

그리고 권한 설정을 합니다.

chmod 700 ~/.ssh && chmod 600 ~/.ssh/* 
chmod u=rwx,g=rx,o=rx /volume1/homes/ADMIN_USER_NAME/

그러면 이제 ssh 연결(또는 rsync) 시 암호 없이 접속이 됩니다.

ssh -p SSH_PORT ADMIN_USER_ONLY@XXX.XXX.XXX.XXX

 

[2. linux 서버에서 시놀로지 NAS로 rsync 명령어를 crontab에 등록하여  동기화]

 

rsync 명령어

rsync -av -e 'ssh -p PORT_RSYNC' ORIGIN/FOLDER/TO/SYNC/ USER@XXX.XXX.XXX.XXX:/volume1/homes/USERNAME/DESTINATION/FOLDER/

crontab 편집

crontab -e

crontab 주기

*      *      *      *      * 
분(0-59)  시간(0-23)  일(1-31)  월(1-12)   요일(0-7) 

매분 test.sh 실행 
* * * * * /script/test.sh 

매주 금 오전 5시 30분에 test.sh 실행 
30 5 * * 5 /script/test.sh 

매일 매시간 0분, 20분, 30분에 test.sh 를 실행 
0,20,30 * * * * /script/test.sh 

매일 1시 0분부터 30분까지 매분 tesh.sh 를 실행 
0-30 1 * * * /script/test.sh

기업용 나스 서버 구축에 대한 문의 환영합니다~

 

desigh the communication, itkairos.

 

 

참고 : 

https://gist.github.com/seignovert/c903c2facbf88243dac90de68be696ea

https://www.synology.com/ko-kr/knowledgebase/DSM/tutorial/Backup/How_to_back_up_Linux_computer_to_Synology_NAS#t2