UNIX/Redhat

리눅스 원격 레포지토리 설정 (ftp 사용)

99iberty 2013. 4. 15. 13:34

 

로컬은 간단하게 파일 작성하여 가능하나 ftp는 해당 repository가 있는 서버에 anonymous 로 ftp 접속이 가능하게 해야 하는등의 추가적 작업이 필요하다.

 

http://rockball.tistory.com/entry/Yum-Repostiory-%EA%B5%AC%EC%84%B1

 

 

서버 2대를 Yum을 통해 구성하는 방법입니다.

1. 개요
Yum Server에 Yum Master 계정을 생성 후 Home Directory에 Rpm File을 옮겨둡니다.
Server는 Local로 Yum Repository를 구성합니다.
Client는 Server에 Anonymous FTP를 통해 해당 RPM 파일을 가져오는 구조입니다.

[그림 1] Yum Server 구성

2. 상세구조
(1) group, user 생성
groupadd -g 501 yumFile
useradd -g 501 -u 501 -d /home/yumFile yumFile
chwon root:root /home/yumFile
chmod 755 /home/yumFile
user의 Home Directory의 소유자와 그룹을 바꿔줘야합니다.
(user의 Default 소유자와 그룹으로 두면 아래와 같은 오류가 뜨므로 root/root로 변경합니다.
500 OOPS: vsftpd: refusing to run with writable anonymous root)

(2) rpm File Copy
cd /media/RHEL_5.6 x86_64 DVD/Server
cp -r * /home/yumFile

yum에서 사용할 rpm 파일을 yumrepository에서 사용할 yumFile User의 Home Directory로 Copy 합니다.

(3) 로컬 Yum Repository 구성
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ls
rhel-debuginfo.repo rhel-source.repo
[root@localhost yum.repos.d]# cp rhel-debuginfo.repo local.repo
[root@localhost yum.repos.d]# ls
local.repo rhel-debuginfo.repo rhel-source.repo

local.repo 내용
[local]
name=Red Hat Enterprise Linux $releasever - $basearch - Debug
baseurl=file:///home/yumFile
enabled=1
gpgcheck=0

/home/yumFile 폴더를 기본 폴더로 설정하며 사용할 수 있도록 설정해 줍니다.

yum 초기화
[root@localhost yum.repos.d]# yum clean all
Loaded plugins: rhnplugin, security
Cleaning up Everything
[root@localhost yum.repos.d]# yum list

yum list의 내용은 아래와 같이 보여집니다.
zsh.x86_64 4.2.6-5.el5 installed
Deployment_Guide-as-IN.noarch 5.2-11 local

위와 같이 2가지 종류가 검색되어집니다.
installed - 설치된 rpm
local - 위에 설정한 loca.repo의 name

yum list 결과가 local 부분이 나오면 정상적으로 설정되어진 것으로 봐도 됩니다.

(4) FTP 설정
1) vsftp 설치
yum -y install vsftpd

2) chkconfig 수정
리부팅 시 기동 가능하도록 chkconfig를 수정해줍니다.
[root@localhost yum.repos.d]# chkconfig --list vsftpd
vsftpd 0:해제 1:해제 2:해제 3:해제 4:해제 5:해제 6:해제
[root@localhost yum.repos.d]# chkconfig vsftpd on
[root@localhost yum.repos.d]# chkconfig --list vsftpd
vsftpd 0:해제 1:해제 2:활성 3:활성 4:활성 5:활성 6:해제

3) vsftp configuration 수정
anonymous Ftp가 가능하도록 홈디렉토리를 수정해줍니다.

anonymous_enable=YES
ftp_username=yumFile

anonymous_enable : anonymous FTP가 가능 유무 설정
ftp_username : ftp가 사용할 default user를 설정합니다.
(Anonymous로 붙을때 Default로 사양하는 유저를 의미합니다.)

vsftpd 서비스를 기동합니다.
[root@localhost yum.repos.d]# service vsftpd start
vsftpd에 대한 vsftpd을 시작 중: [ OK ]

4) 방화벽 open
/etc/sysconfig/iptables에 20번과 21번의 tcp port를 열어줍니다.
(아래 내용 추가)
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 20 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT

방화벽 내용 저장
[root@Linux2 yum.repos.d]# service iptables save
방화벽 규칙을 /etc/sysconfig/iptables에 저장 중: [ OK ]

방화벽 서비스를 재기동 합니다.
service iptables restart

5) Anonymous FTP 연결 테스트
[root@Linux2 var]# ftp 192.168.2.130
Connected to 192.168.2.130.
220 (vsFTPd 2.0.5)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (192.168.2.130:root): anonymous
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
5) Client의 Yum Repository 구성
[ftp]
name=Red Hat Enterprise Linux $releasever - $basearch - Debug
baseurl=ftp://192.168.2.130
enabled=1
gpgcheck=0

'UNIX > Redhat' 카테고리의 다른 글

14장 using apache  (0) 2013.06.12
repository ftp주소로 추가 + 영문버전  (0) 2013.04.15
명령어 경로 알기  (0) 2012.12.05
12/08/29 10장   (0) 2012.08.29
12/08/28 6장 인증 관리  (0) 2012.08.28