FreeBSD/ProFTPD ¤ÎÊѹ¹ÅÀ


*''ProFTPD'' [#z897fda4]

[[dokuwiki.fl8.jpžºÜºÑ¤ß>http://dokuwiki.fl8.jp/doku.php/02_freebsd/01_net/02_proftpd]]

wuftpd¤è¤ê¤â´ÉÍý¤¬¤·¤ä¤¹¤¯¡¢¥»¥­¥å¥ê¥Æ¥£Åª¤Ë¤â°ÂÁ´¤Êftp¥µ¡¼¥Ð&br;
ProFTPD¤ò¥¤¥ó¥¹¥È¡¼¥ë

#contents

#br

**''¥½¡¼¥¹¤ò»ý¤Ã¤Æ¤¯¤ë''&aname(A); [#u1378e49]
http://www.proftpd.org/ ¤è¤êºÇ¿·¤Îtarball¤ò¥À¥¦¥ó¥í¡¼¥É¤¹¤ë¡£&br;
ºÇ¿·¤Ïproftpd-1.2.10.tar.gz(2005ǯ4·î25Æü¸½ºß)
 > wget ftp://ftp.proftpd.org/distrib/source/proftpd-1.2.10.tar.gz

**¥Ñ¥Ã¥Á¤ò»ý¤Ã¤Æ¤¯¤ë [#f6a53be6]
http://www.hayasoft.com/haya/linux/proftpd_nlst_patch.html

 # wget http://www.hayasoft.com/haya/linux/proftpd-nlst-patch/proftpd-1.2.10-nlst-ffftp.patch

**''¥½¡¼¥¹¤ÎŸ³«''&aname(B); [#s7d20ced]
 > tar zxvf proftpd-1.2.10.tar.gz

**''¥¤¥ó¥¹¥È¡¼¥ë''&aname(C); [#rb22223d]
 > patch -p0 < proftpd-1.2.10-nlst-ffftp.patch
 > cd proftpd-1.2.10
 > ./configure
 > make  
 > su
 # make install

**''ÀßÄê¥Õ¥¡¥¤¥ë¤òÊÔ½¸''&aname(D);&br; [#n8d4f3e1]
/usr/local/etc/proftpd.conf¤òÊÔ½¸¤¹¤ë¡£&br;
 # vi /usr/local/etc/proftpd.conf
 --------------------------------------------------------------------
 ServerName            "ProFTPD Default Installation"   FTPÀܳ¤·¤¿»þ¤Ëɽ¼¨¤µ¤»¤ë̾Á°
 ServerType            standalone                       inetd¤«¤éµ¯Æ°¤¹¤ë¾ì¹ç¤Ïinetd
 User                  nobody
 Group                 nobody                           <--nogroup¤«¤éÊѹ¹
 
 DefaultRoot           ~ !wheel
 DefaultRoot¤ÎÀßÄꡧ¤³¤ÎÎã¤Ç¤Ï¥æ¡¼¥¶¤Ï¥Û¡¼¥à¥Ç¥£¥ì¥¯¥È¥ê¤·¤«°ÜÆ°¤Ç¤­¤Ê¤¤¤¬¡¢wheelŽ¸ŽÞŽÙŽ°ŽÌŽß¤ÏÊ̤Ȥ¤¤¦°ÕÌ£
 
 <Limit SITE_CHMOD>
 #     DenyAll
       AllowAll
 </Limit>
 
 
 UseReverseDNS on
 IdentLookups off
 TimesGMT off
 MasqueradeAddress       matsui.homeunix.com
 PassivePorts            7000 7030
 SetEnv  TZ :/etc/localtime  #¥í¡¼¥«¥ë¥¿¥¤¥à¤òÀµ¤·¤¯»²¾È¤¹¤ë¡£
 --------------------------------------------------------------------
 Anonymous¤ÎÉôʬ¤ÏÁ´¤Æ¥³¥á¥ó¥È¥¢¥¦¥È¤¹¤ë¡£
¢£PASV¥â¡¼¥É¤Ç¥¤¥ó¥¿¡¼¥Í¥Ã¥È¸ø³«¤¹¤ë¾ì¹ç¤ÎÀßÄê
 MasqueradeAddress¡¡¡¡¡¡ ¥ë¡¼¥¿¤ÎWAN¦¥¢¥É¥ì¥¹¡¡Ëô¤Ï¡¡¥É¥á¥¤¥ó̾
 PassivePorts ¡¡¡¡¡¡¡¡¡¡¡¡¡¡ºÇ¾®¥Ý¡¼¥ÈÈֹ桡ºÇÂç¥Ý¡¼¥ÈÈÖ¹æ
¢£FFFTP¤Ê¤É¤Ç¥Ñ¡¼¥ß¥Ã¥·¥ç¥ó¤¬Êѹ¹¤Ç¤­¤Ê¤¤¡£~
¤³¤ÎÉôʬ¤¬Deny¤Ç¥Ñ¡¼¥ß¥Ã¥·¥ç¥ó¤ÎÊѹ¹¤ò¶Ø»ß¤Ç¤­¤ë¡£~
Allow¤Ë¤¹¤ë»ö¤Ç¥Ñ¡¼¥ß¥Ã¥·¥ç¥ó¤ÎÊѹ¹¤¬¹Ô¤¨¤ë¾õÂ֤ˤʤê¤Þ¤¹¡£~
 <Limit SITE_CHMOD>
 #     DenyAll
       AllowAll
 </Limit>

***¥ê¥¸¥å¡¼¥àµ¡Ç½ [#e8c8798a]
 AllowStoreRestart on
 AllowRetrieveRestart on

***¥í¥°¤Î»þ´Ö¤¬¤º¤ì¤ë¡£ [#z447e652]
 ¡þProFTPd+Chroot¤ò»ÈÍѤ¹¤ë¤È¡¢/etc/localtime¤Ø¥¢¥¯¥»¥¹¤Ç¤­¤Ê¤¯¤Ê¤ê¡¢
   ftp¤Ç¤ä¤ê¼è¤ê¤·¤¿¥Õ¥¡¥¤¥ë¤Î¥¿¥¤¥à¥¹¥¿¥ó¥×¤¬ ¡¡¶¯À©Åª¤ËGMT¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦
 ¡¡(proftpd.log¤Ëµ­Ï¿¤µ¤ì¤ë¥¤¥Ù¥ó¥È¤Î»þ¹ï¤âGMT¤Çɽµ­¤µ¤ì¤Æ¤·¤Þ¤¦)

¢£ÂнèÊýË¡
 ­¡proftpd.conf¤ÇSetEnv¥Ç¥£¥ì¥¯¥Æ¥£¥Ö¤òÍѤ¤¤ÆTZ´Ä¶­ÊÑ¿ô¤òÄêµÁ
 ¡¡#vi proftpd.conf
 
 ¡¡SetEnv  TZ JST-9
 ¡¡(¤â¤·¤¯¤Ï¡¢SetEnv  TZ :/etc/localtime)
 
 ¡¡¾åµ­¤òÄɵ­
 
 ­¢standalone¤Î¾ì¹ç¤Ï¡¢proftpd¤òºÆµ¯Æ°
 ¡¡(inetdµ¯Æ°¤Î¾ì¹ç¤Ï¡¢ÉÔÍ×)

**''¥¢¥¯¥»¥¹À©¸æ¥Õ¥¡¥¤¥ëºîÀ®''&aname(E); [#k58e5349]
¤³¤Î¥Õ¥¡¥¤¥ë¤Ëµ­½Ò¤µ¤ì¤Æ¤¤¤ë¥æ¡¼¥¶¤Ç¤Ï¥í¥°¥¤¥óÉԲĤȤʤ롣
 # vi /etc/ftpusers
 -------------------------------------------------------------------
 root
 test
 matsui
 -------------------------------------------------------------------

**''inetd.conf¤ÎÊÔ½¸''&aname(F); [#d168ac27]
ProFTP¤òinetd¤«¤éµ¯Æ°¤¹¤ë¤è¤¦¡£inetd.conf¤òÊÔ½¸
 # vi /etc/inetd.conf
 -------------------------------------------------------------------
 ftp stream tcp nowait root /usr/local/sbin/in.proftpd in.proftpd 
 -------------------------------------------------------------------
 inetd¤òºÆµ¯Æ°
 # kill -HUP `cat /var/run/inetd`

**''¥¨¥é¡¼¤ò½Ð¤Ê¤¤¤è¤¦¤Ë¤¹¤ë¡£''&aname(G); [#sb59d45d]
¤³¤Î¤Þ¤Þ¤Ç¤âµ¯Æ°¤¹¤ë¤¬¡¢¡Öno modules loaded for `ftpd' service¡×¤È¤¤¤¦&br;
¥¨¥é¡¼¤¬Ëè²ó¤Ç¤Æ¤·¤Þ¤¦¤Î¤Ç¡¢²ò¾Ã¤¹¤ë¡£&br;
 # vi /etc/pam.conf
 ------------------------------------------------------------------
 ftpd auth required pam_unix.so try_first_pass
 ftpd account required pam_unix.so try_first_pass
 ftpd session required pam_permit.so
 ------------------------------------------------------------------
 °Ê¾å¤òÄɲ乤롣

¤³¤ì¤Ç´°Î»¤Ç¤¹¡£

*ports¤«¤é¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¾ì¹ç [#k959a872]
 # cd /usr/ports/distfiles
 # wget http://www.hayasoft.com/haya/linux/proftpd-nlst-patch/proftpd-1.3.1-nlst-ffftp.patch
 # vi /usr/ports/ftp/proftpd/Makefile.local
 PATCHFILES += proftpd-1.3.1-nlst-ffftp.patch
 PATCH_DIST_STRIP = -p1
 NO_CHECKSUM = yes 

**¥¤¥ó¥¹¥È¡¼¥ë [#e72367a2]
 # portupgrade proftpd 

**¤¹¤Ç¤ËÆþ¤Ã¤Æ¤¤¤ë¾ì¹ç [#eb751f5f]
 # portupgrade -rf proftpd