japanese site
온라인강좌책메일다운로드동아리쇼핑기술지원기업정보갤러리동영상 블로그
 아 이 디
 비밀번호
회원 가입 | 비밀번호 찾기

블로그~

 
Doly의 연재 강좌
쉘스크립트
nazu의 연재 잡담
설치 및 구축/관리
리눅스 명령어
Tools&Utilities
Tip&Tech
튜닝
기타
뉴스서버
클러스터(Cluster)
FTP 서버
책제목
리눅스서버관리실무바이블v3.0


저자 박성수
페이지수 2,032 pages
펴낸곳(주)수퍼유저

리눅스 서버 구축 및 관리에 필요한 거의 모든 부분과 전반적인 실무 기법들을 다루고 있음
책제목
리눅스보안관리실무(2/E)


저자홍석범
페이지수 820 pages
펴낸곳(주)수퍼유저

리눅스 보안에 관련된 내용을 종합적으로 쓴 책. 저자의 명성 그대로 보안관련의 모든 내용이 그대로 담겨져 있다.
 
 
    리눅스>>설치 및 구축/관리>>


▒ 4. RedHat 9 (FTP 서버 (proftpd) 설치 및 운영 )
 

▒ FTP 서버 (proftpd)

 

   서버를 설치할 때 필수로 설치되는 것이 ftp 서버입니다. 배포판과 함께 ftp서버를 설치해서 사용할 수 있지만 개인적으로 proftpd를 더 좋아합니다. 지금까지 강좌와 마찬가지로 본 강좌도 RH9를 기반으로 작성합니다. 다른 배포판 버전에도 물론 별 무리 없이 설치 될꺼리 믿어 의심하지 않습니다.~

1. 설치
  모든 프로그램이 그렇듯 다운로드 받아야 합니다. proftpd는 proftpd.org에서 받으실 수 있습니다.
현재 최신버전은 1.2.9입니다.  물론 업그래이드 되더라도 설치법은 크게 변하지 않으니 최신 버전을 받아서 하셔두 됩니다.^^ 만약 설치가 안된다면, 본 강좌의 마지막 부분에 나오는 메일주소로 메일 보내 주시기 바랍니다.~

먼저 설치할 디렉토리로 이동합니다.
통상적으로 프로그램은 /usr/local 아래 디렉토리에 설치하게 되면 .. 관리가 편리합니다.. 모든 프로그램을 그 위치에 설치하고 그 디렉토리만 압축해서 보관하면 서버가 뻣었을 때 복구가 간단하죠^^:
[root@test /]# cd /usr/local/

간단하게 위와 같은 wget 프로그램을 사용하여 다운로드 받습니다.
[root@test local]# wget http://ftp.superuser.co.kr/pub/proftpd/proftpd-1.2.9.tar.gz
--11:13:51--  http://ftp.superuser.co.kr/pub/proftpd/proftpd-1.2.9.tar.gz
           => `proftpd-1.2.9.tar.gz'
Resolving ftp.superuser.co.kr... 완료.
Connecting to ftp.superuser.co.kr[210.114.223.221]:80... connected.
HTTP 요청을 보냅니다, 서버로부터의 응답을 기다림...200 OK
길이:   995,350 [application/x-tar]
100%[=================================================================>] 995,350      382.54K/s    ETA 00:00
11:13:54 (382.54 KB/s) - `proftpd-1.2.9.tar.gz'가 보존되었습니다 [995350/995350]

압축을 풀어줍니다.~
[root@test local]# tar xvfz proftpd-1.2.9.tar.gz

디렉토리 이동합니다.
[root@test local]# cd proftpd-1.2.9

- 컨피그를 행합니다. 컴파일 환경과 옵션들을 설정할 수 있습니다.
./configure --help
위 명령을 내려 옵션이 뭐가 있는지 확인할  수 있지만, 별 내용없으니 아래의 옵션데로 컨피그를 합니다.
[root@test proftpd-1.2.9]# ./configure --prefix=/usr/local/proftpd --enable-autoshadow \
 --enable-shadow
옵션에서 --prefix는 설치할 디렉토리이고, --enable-autoshadow와 --enable-shadow는 대부분의 Linux에 shadow패스워드 시스템을 사용하기 때문에 이렇게 적어 주었습니다.
그리구 는 한줄에 다 못쓸 때 다음줄이랑 이어진다는 의미로 적어줍니다.~ VB의 "_"와 같은 의미죠^^;

- 컴파일 합니다.
[root@test proftpd-1.2.9]# make
- 설치 합니다.
[root@test proftpd-1.2.9]# make install 

2. 환경설정파일 편집
 이렇게 설치를 하였다면,  환경설정 파일은 /usr/local/proftpd/etc/proftpd.conf 일 것입니다.

- 실행 그릅 변경
27번째 줄을 보면 실행그릅이 nogroup로 되어 있을 것입니다. 지금까지 설치한데로 설치 했었다면, nogroup는 없을 것입니다. nogroup라는 group를 생성해 주던지 아니면, 이 것을 nobody로 해 주면 됩니다.
Group                           nogroup
==>   Group                           nobody

- wheel 그룹 사용자외에 자기 home 디렉토리 못 벗어나게 설정
다음과같이 한 줄만 추가 하면 됩니다.
DefaultRoot                   ~ !wheel

- 파일올렸는데 시간이 다르게 나온다면..
 파일을 올렸는데 보이는 시간이 다르다면, 다음 옵션을 추가 합니다.
TimesGMT            off

- 트래픽 제한
  wheel 그룹 사용자만 빼고 모든 사용자에게 .. 300K/sec 로 설정하고 싶다면, 아래 설정은 30M까지는 제한이 없게 설정했습니다. 31457280 이 수치가 30M라는 의미 입니다.
TransferRate APPE,RETR,STOR,STOU 300.0:31457280 group !wheel

기타 다른 기능들을 원하신다면, 아래의 메일 주소로 메일 한통 보내 주세요~ 그럼 제가 생각해보구 제 맘데로 추가 해 두겠습니다.^^;

3. 서버 시작
 모든 설정이 끝났다면, 서버(데몬)를 시작합니다.
[root@test etc]# /usr/local/proftpd/sbin/proftpd
이렇게 아무런 메시지가 없다면 시작된 것입니다.

- 확인
[root@test etc]# netstat -an | grep LISTEN | grep 21
tcp        0      0 0.0.0.0:21              0.0.0.0:*               LISTEN    
위와같이 21번 포트가 정상적으로 열려있어야 합니다.

[root@test etc]# ps -ef | grep proftpd
nobody    7617     1  0 11:53 ?        00:00:00 proftpd: (accepting connections)
root      7627  1682  0 11:54 pts/0    00:00:00 grep proftpd
위와같이 proftpd프로세스트 정상적으로 떠 있어야 합니다.

이렇게 확인하였다면. 서버 부팅시 시작되게 rc.local파일에 넣어줍니다.
[root@test etc]# echo /usr/local/proftpd/sbin/proftpd >> /etc/rc.d/rc.local


4. 기타 프로그램
 proftpd는 여러 명령어를 제공합니다.
- ftp 서버 정지
[root@test sbin]# /usr/local/proftpd/sbin/ftpshut
usage: /usr/local/proftpd/sbin/ftpshut [ -R ] [ -l min ] [ -d min ] time  [ warning-message ... ]
ftp 서버를 정지하는 명령어입니다. 접속된 사용자에게 메시지를 뿌려 줄 수 있으며, 일정시간후 자동 정지 할 수 있습니다. 개인적으로 즉시 정지 하기 위해서는 ftpshut now 라고 하면 된다는데 ... 테스트 결과 잘 되지 않는군요^;
 그럴 때 이렇게 죽이세요^^:
[root@test sbin]# killall proftpd 
 한방에 죽습니다^^;
그리구 shutmsg가 남아있는 경우가 있습니다. 이 파일이 있으면, ftp 접속이 되지 않으니 있으면 지워 주시기 바랍니다.^^
rm -rf /etc/shutmsg

- ftp서버에 접속한 사용자 수 알아내기
[root@test bin]# /usr/local/proftpd/bin/ftpcount
Master proftpd process 7766:
Service class                      -   1 user

한사람의 사용자가 접속되어 있다는 것을 알 수있습니다.

- ftp 만의 top 명령이 있다^^;
[root@test bin]# /usr/local/proftpd/bin/ftptop
ftptop/0.9: Tue May 25 12:12:13 2004, up for 5 min
1 Total FTP Sessions: 0 downloading, 0 uploading, 1 idle
PID   S USER     CLIENT               SERVER          TIME COMMAND             
7794  I doly     test                 0.0.0.0:21      257  idle

물론 top 명령어와 비슷하게 -d 옵션두 사용할 수 있습니다. 그리고 q를 누르게 되면 빠져 나오죠^^:

- ftp에서두 who 명령어를??
[root@test bin]# /usr/local/proftpd/bin/ftpwho
standalone FTP daemon [7766], up for 7 min
 8240 doly     [  0m4s]   0m1s idle
Service class                      -   1 user

위와같이 접속 정보를 알 수 있습니다.


4. 마치며..

 강좌를 하나 하나 써 갑니다. 이렇게 강좌를 써 가는 목적은~~ 강좌를 읽고 기뻐하실 분들을 위해서입니다. 물론 뭐 이런 것을 강좌로 썼나? 뭐 이렇나?? 이렇게 비판을 하실분들도 많이 계실 것이라고 생각합니다. ^^; 그래두 너그럽게 봐 주시구요.. 오타 및 문제점이 있으면... 아래의 메일주소로 메일 한통 주시기 바랍니다. 서버 관리자의 길은 멀고도 험하기 때문에 한곳에 오래 머무를 시간이 없군요~~ 하지만 머무르는 순간은 최선을 다해야 할 것 같습니다. ~~ 이 정도로 ftp 서버 설치 및 운영법을 마칩니다^^; 읽어 주셔서 감사합니다.~ 
 혹시 본 강좌에 대한 질문 및 오타를 발견하게 되면, 메일 한통 보내주기 바란다. 메일주소는 doly 골뱅이superuser.co.kr 이다. 메일 주소를 무단 수집해서 스팸메일을 보내는 이를 막기 위해서 위와 같이 표기했으며, 골뱅이 부분은 @ 치환하면 된다.
  이상... 2004년 푸른 5월 부산에서 ~~수퍼유저 운영자 doly ...

 
   
강사 소개
  도리    
도리(Doly)
(주)수퍼유저 기술이사 (CTO)
리눅스마스터 1급,2급 추천교재(2014년) 집필
리눅스마스터 1급,2급 전문위원(출제)(한국정보통신진흥협회, 2005년~)
SULinux 1.0, 1.5, 2.0, 2014 개발 총괄(sulinux.net, 1998년~)
SSU,LSCP,LSMP,CCMT외 다수 오픈소스 프로젝트 개발 및 운용 (lscp.sf.net외,2009년~)
리눅스 대량 시스템 구축 및 관리(5,000대리눅스 서버 구축 및 관리 경험, 2000년~)

E-Mail : doly골뺑이superuser.co.kr
소개 : 하루 하루 최선을 다합시다!!
 
▒ 3. RedHat 9 (메일서버 (sendmail) 설치 및 운영)
▒ 5. RedHat 9 (APM(Apache Php Mysql) 설치 및 운영)

 
회사소개 | 보도기사 | 채용안내 | 광고안내 | 이용약관 | 개인정보취급방침 | 책임한계와 법적고지 | 불편사항 신고하기 | 사이트맵
ㅇ 서울 : 서울특별시 강남구 노현로79길 66, 402호(역삼동,청송빌딩)  ㅇ 부산 : 부산광역시 해운대구 우동 1470 에이스하이테크21 914호
ㅇ 대표 : 1544-8128 ㅇ부산직통 : 051-744-0077 ㅇ서울직통 : 02-856-0055 ㅇ FAX : 02-6280-2663
ㅇ 사업자번호 : 128-86-68239 ㅇ 통신판매업 신고번호 : 2013-부산금정-0035호 ㅇ 개인정보책임자 : 이재석
ㅇ 상호명 : (주) 수퍼유저 ㅇ 대표자 : 박성수
Copyright ⓒ (주)수퍼유저. All rights reserved.