1. SVN 계정 생성
- SVN 위치 : /home/svn/repo
- 설정파일 위치 : /home/svn/repo/conf
- 계정생성 설정파일 : passwd
$ cd /home/svn/repo/conf
$ vi passwd
// passwd 파일 내용
### This file is an example password file for svnserve
### Its format is similar to that of svnserve.cof. As shown in the
### example below it contains one section labelled [users].
### The name and password for each user follow, one account per line.
[users]
# harry = harryssecret
# sally = sallyssecret
# 여기에 계정 생성( id=password )
admin = admin1234
user = user1234
2. SVN 권한 설정
- SVN 위치 : /home/svn/repo
- SVN 폴더 구조
/
/webproject1
/webproject2
- 설정파일 위치 : /home/svn/repo/conf
- 권한 설정파일 : authz
[디렉토리 경로]
*= // 모든 사용자의 모든 권한 해제
*=r // 모든 사용자의 read 권한만 부여
*=w // 모든 사용자의 write 권한만 부여
*=rw // 모든 사용자의 read/write 권한만 부여
@권한그룹명 = [r/w] // 특정 그룹에 권한 부여
사용자아이디 = [r/w] // 특정 아이디에 권한 부여
// *은 모든 사용자를 의미 기본적으로 루트 경로에 대해 모든 사용자의 권한을 해제(*=)해야함, 또한 모든 사용자는 svnserve.conf 파일의 anon-access=none(인증되지 않은 사용자에 대한 접근 거부) 설정이 되어있으면 아이디/비번을 가지고 있는 사용자들을 의미하고, anon-access=read 나 anon-access=write로 되어 있으면 인증하지 않고 그냥 url을 치고 들어온 모든 사용자를 의미한다.
$ cd /home/svn/repo/conf
$ vi authz
[groups]
# 여기에 권한 그룹 생성
admin = admin1, admin2
user = user1, user2
###
[/] # 디렉토리 경로
*= # 모든 사용자(*)에 대한 설정
@admin=rw
@user
[/webprojcet1]
*=r
@admin=rw
user1=rw
[/webproject2]
*=rw
3. 권한 적용
- SVN 위치 : /home/svn/repo
- 설정파일 위치 : /home/svn/repo/conf
- SVN서버 설정파일 : svnserve.conf
# 권한 적용 시 authz-db의 주석을 해제하면 된다.
[general]
anon-access=none # 계정이 없는 사용자데 대해 접근 거부
auth-access=write # 인증된 사용자에 대해 쓰기 권한 부여
password-db=passwd # 계정정보가 들어가 있는 파일을 설정
authz-db=authz # 권한설정 정보가 들어가 있는 파일을 설정(처음에 주석 처리되어 있어 해제해야함)
realm=My First Repository # 저장소 정보, 인증시 보여준다고 함
SVN 생성, 백업(dump생성), 복원(load) (0) | 2021.12.30 |
---|