############################################
#
# ProFTPD Korea User Groups
# http://proftpd.oops.org
#
############################################
# 번역 : 김정균 < admin@oops.org >
# 이 예제 설정 file은 두개의 가상 server와 anonymous login를 결합하는
# 것을 설명하고 있다.
ServerName “ProFTPD”
ServerType inetd
# Port 21 은 FTP 의 기본 port이다.
Port 21
# Global은 main server와 모든 virtualhosts에 의해 공유되는 “global” 설정
# 을 생성한다.
<Global>
# Umask 022는 group과 world writable로 부터 새로운 dir과 file들을 막기
# 위한 훌륭한 기본 umask이다.
Umask 022
</Global>
# Server가 실행하는데 일반적인 user와 group을 설정한다.
User nobody
Group nobody
# DoS 공격을 막기 위해, 자식 process의 maximun number를 30으로 설정한다.
# 만약 30이상의 접속을 허락할 필요가 있다면 간단하게 이 치수를 증가시키도록
# 한다. 이것은 오직 standalone mode에서만 가능하다. inetd mode에서는
# service 당 maximun number를 제한 하는 것을 허락하는 inetd server에서
# 설정을 해야 한다.(xintd 역시 마찬가지 이다)
MaxInstances 30
# 접속에 stall이 될때 끊어 지지 않는 최대 시간을 지정한다.
TimeoutIdle 300
<VirtualHost ftp.virtual.com>
ServerName “Virtual.com’s FTP Server”
MaxClients 10
MaxLoginAttempts 1
# DeferWelcome 는 client가 인증을 하기 전에 servername을 display하는
# 것을 방지한다.
DeferWelcome on
# guest login만 허락하기를 위하여
# nomal user login을 제한한다.
<Limit LOGIN>
DenyAll
</Limit>
# 다음, 자신들의 web site 등에 개인적으로 접근하기 위한 customer에
# 의해 사용되어 지는 “guest” 계정을 만든다.
<Anonymous ~cust1>
User cust1
Group cust1
AnonRequirePassword on
<Limit LOGIN>
AllowAll
</Limit>
HideUser root
HideGroup root
# 사용자가 접근하기를 원하지 않는 private directory
<Directory logs>
<Limit READ WRITE DIRS>
DenyAll
</Limit>
</Directory>
</Anonymous>
</VirtualHost>
# primary address에서 작동을 하지만 port는 4000번을 사용하는 또 다른
# virtual host 이다. access는 하나의 anonymous login만 된다.
<VirtualHost our.ip.address>
ServerName “Our private FTP server”
Port 4000
Umask 027
<Limit LOGIN>
DenyAll
</Limit>
<Anonymous /usr/local/ftp/virtual/a_customer>
User ftp
Group ftp
UserAlias anonymous ftp
<Limit LOGIN>
AllowAll
</Limit>
<Limit WRITE>
DenyAll
</Limit>
<Directory incoming>
<Limit WRITE>
AllowAll
</Limit>
</Directory>
</Anonymous>
</VirtualHost>