본문 바로가기
IT

[IT] NAS Git Server 설정(Synology)

by 불멸남생 2023. 6. 23.

1. 개요 

    Diskstation을 사용하여 Synology NAS에 git 서버를 설정하기 위한 지침. 특히 6.2.4-25556 Update 7과 함께 DS414j를 사용하고 있습니다.

 

2. 설정 방법

2.1. 폴더와 사용자 설정

        2.1.1 새로운 사용자를 생성한다. (예: gituser)

        2.1.2 새로운 '공유 폴더'를 생성함. (저는 gitRoot, git 관련된 모든 저장소는 여기를 사용하도록 함.) 

        2.1.3 git 서버를 설치함.

        2.1.4 git 서버를 열고 사용자 권한을 설정함.

반응형

Git Server 저장소 목록 사진
Git Server 저장소 목록 사진

        2.1.5 SSH 접속할 수 있도록 포트 설정해야 함. 

               - 제어판 -> 터미널 및 SNMP --> 터미널 --> SSH  서비스 활설화 체크 해야 함.

                  (포트는 기본 22이지만 보안상 포트를 변경하는 것이 좋음.)

반응형

Synology 제어판 사진
Synology 제어판 사진

 

2.2. SSH  접근 설정

        2.2.1 gituser 기본 폴더에  /.ssh 폴더 생성

ssh admin@<나스 주소>
mkdir /volume1/homes/gituser/.ssh

 

반응형

파일 목록 상세 정보 사진
파일 상세 정보

 

        2.2.2 SSH 생성은 SSH 생성을참고 해서 만들면 됩니다. 저는 "리눅스/유닉스 계열에서 생성"으로 생성을 하였습니다.

        2.2.3 공개 rsa 키를 로컬 컴퓨터에서 서버의 gituser 계정으로 복사.

scp ~/.ssh/id_rsa.pub admin@<나스주소>:/volume1/homes/gituser/.ssh

        2.2.4 루트로 SSH를 통해 연결하고 NAS에서 id_rsa.pub의 이름을 authorized_keys로 바꿉니다(또는 이미 있는 경우 cat id_rsa.pub >> authorized_keys 추가).

ssh root@diskstation.local
mv /volume1/homes/gituser/.ssh/id_rsa.pub /volume1/homes/gituser/.ssh/authorized_keys

파일 목록 상세 정보
파일 상세 정보

반응형

        2.2.5 루트로 로그인 하여 권한 변경

                 루트로 권한 변경하는 방법 은 "sudo -i" 라고 입력하면 됩니다. 암호는 기존 admin 암호를 입력하시면 됩니다.

cd /volume1/homes/gituser/
chown -R gituser:users .ssh
chmod 700 .ssh
chmod 644 .ssh/authorized_keys

 

2.3. NAS 새로운 저장소 설정

        2.3.1 새로운 저장소 생성

ssh root@diskstation.local
cd /volume1/git/
git --bare init <repo-name>.git
chown -R gituser:users <repo-name>.git
cd <repo-name>.git
git update-server-info
반응형

참고: 각 리포지토리에 대해 git update-server-info를 실행해야 하는지 아니면 처음에만 실행해야 하는지 확실하지 않습니다. 이 명령을 실행하지 않아도 작동하는 것 같지만 나중에 문제가 생길 수도 있다는 의심이 듭니다.

 

2.4  로컬에 git원격 접속 설정

    2.4.1 NAS에서 설정된 저장소 정보

git clone ssh://gituser@<나스주소>/volume1/git/<저장소이름>.git

 

끝.

 

참고 자료

https://gist.github.com

반응형

'IT' 카테고리의 다른 글

HTML JQuery 이용해서 meta "Keywords" 추가  (0) 2023.12.21
Windows용 Git 서버인 Bonobo Git Server 설치하기  (0) 2023.06.23
[IT]SSH 키 생성  (0) 2023.06.23
Synology GIT 사용법  (0) 2023.06.08
html에서 화면 스크롤 하는 예제  (0) 2023.03.06