Search results for '媛'

pure-ftpd + mysql + pure-ftpd manager for virtual user

2008/12/05 21:09
媛쒕컻 ?섍꼍

OS : Ubuntu 8.10
DB : MySQL


1. pure-ftpd-mysql ?ㅼ튂

$ sudo apt-get install pure-ftpd-mysql


2. FTP GROUP怨?USER ?앹꽦

GID??UID???꾩쓽濡?2001濡??ㅼ젙?⑸땲??

ftpgroup 怨?ftpuser ?쇰뒗 ?대쫫?쇰줈 洹몃9怨??좎?瑜??깅줉?섏??듬땲??

洹몃9紐낃낵 ?좎?紐낆? ?뚯븘???뺥븯?쒕㈃ ?⑸땲??

$ sudo groupadd -g 2001 ftpgroup

$ sudo useradd -u 2001 -s /bin/false -c "pureftpd user" -g ftpgroup ftpuser


?쎌쭏) -d /bin/null ???듭뀡??二쇨퀬 user瑜??앹꽦?섏??붾땲 FTP ?묒냽???ㅼ젙??Dir濡?媛?? ?딄퀬 臾댁“嫄?/root/home?쇰줈 ?묒냽 ??
       ?꾩쓽濡?FTP ?붾젆?좊━瑜??ㅼ젙?섍린 ?꾪빐??-d /bin/null ?듭뀡???쒓굅??

李멸퀬) useradd ?듭뀡

-c 異붽??ㅻ챸 : ?ъ슜???ㅻ챸
-b : ?뷀뤃?????붾젆?좊━瑜?蹂?꼍
-d /home/怨꾩젙 : ???붾젆?좊━ 吏?젙
-e 2006-12-01 : ?⑥뒪?뚮뱶 留뚮즺湲곌컙 吏?젙
-u : UID 吏?젙
-g : GID 吏?젙(湲곕낯 洹몃9)
-G : 2媛쒖씠??洹몃9??吏?젙?섍굅??-g ?ㅼ쓬 異붽?濡?洹몃9??吏?젙 ?좊븣(,濡?援щ텇)
-o : UID瑜?猷⑦듃沅뚰븳??'0'?쇰줈 ?ㅼ젙?덉쓣??媛뺤젣濡??앹꽦 媛?뒫
-p 12345 : ?⑥뒪?뚮뱶 吏?젙
-s /bin/??: ??吏?젙(bash, csh, false ?깅벑)
-m : /etc/skel?먯꽌 ?앹꽦???ъ슜???덈뵒?됲넗由щ줈 ?ㅼ젙 ?뚯씪??蹂듭궗?쒕떎. /etc/skel ???꾨땲?쇰㈃ -m -k 寃쎈줈 瑜??⑥???/span>
-M : ?덈뵒?됲넗由щ? ?앹꽦?섏? ?딅뒗 ?ъ슜??異붽???/span>

3. pure-ftpd???ъ슜??MySQL DB ?앹꽦

DB ?앹꽦 諛?怨꾩젙 / 鍮꾨?踰덊샇 ?ㅼ젙
DB 紐?: pureftpd ( ?먰븯?쒕뒗 DB 紐낆쑝濡?蹂?꼍?섏꽭??) 
DB user: pureftpd password : ftpdpass ( ?먰븯?쒕뒗 ?대쫫怨?鍮꾨쾲?쇰줈 蹂?꼍?섏꽭??) 

$ mysql -uroot -p

mysql> CREATE DATABASE pureftpd;
mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP ON pureftpd.* TO ?쁯ureftpd??'localhost??IDENTIFIED BY ?쁣tpdpass??
mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP ON pureftpd.* TO ?쁯ureftpd??'localhost.localdomain??IDENTIFIED BY ?쁣tpdpass??
mysql> FLUSH PRIVILEGES;

?댁젣 ?앹꽦??pureftpd?쇰뒗 DB??ftpd?쇰뒗 ?뚯씠釉붿쓣 ?앹꽦?⑸땲??

USE pureftpd;

ftpd ?뚯씠釉??앹꽦 ( ?먰븯?쒕뒗 ?뚯씠釉붾챸?쇰줈 蹂?꼍?섏꽭??)

CREATE TABLE ftpd (
User varchar(16) NOT NULL default '',
status enum('0','1') NOT NULL default '0',
Password varchar(64) NOT NULL default '',
Uid varchar(11) NOT NULL default '-1',
Gid varchar(11) NOT NULL default '-1',
Dir varchar(128) NOT NULL default '',
ULBandwidth smallint(5) NOT NULL default '0',
DLBandwidth smallint(5) NOT NULL default '0',
comment tinytext NOT NULL,
ipaccess varchar(15) NOT NULL default '*',
QuotaSize smallint(5) NOT NULL default '0',
QuotaFiles int(11) NOT NULL default 0,
PRIMARY KEY (User),
UNIQUE KEY User (User)
) TYPE=MyISAM;

李멸퀬 ) InnoDB vs MyISAM

exit;

?닿쾬?쇰줈 DB ?ㅼ젙???앸궗?듬땲??


4. pure-ftpd mysql ?ㅼ젙

湲곗〈 ?뚯씪??蹂듭궗?섏뿬 ?볤퀬 mysql.conf ?뚯씪???섏젙?⑸땲??

$ cp /etc/pure-ftpd/db/mysql.conf /etc/pure-ftpd/db/mysql.conf.orig

$ sudo vim/etc/pure-ftpd/db/mysql.conf


MYSQLSocket      /var/lib/mysql/mysql.sock

#MYSQLServer localhost

#MYSQLPort 3306

MYSQLUser pureftpd

MYSQLPassword ftpdpass

MYSQLDatabase pureftpd

#MYSQLCrypt md5, cleartext, crypt() or password() - md5 is VERY RECOMMENDABLE uppon cleartext

MYSQLCrypt md5

MYSQLGetPW SELECT Password FROM ftpd WHERE User="\L" AND status="1" AND (ipaccess="*" OR ipaccess LIKE "\R")

MYSQLGetUID SELECT Uid FROM ftpd WHERE User="\L" AND status="1" AND (ipaccess="*" OR ipaccess LIKE "\R")

MYSQLGetGID SELECT Gid FROM ftpd WHERE User="\L"AND status="1" AND (ipaccess="*" OR ipaccess LIKE "\R")

MYSQLGetDir SELECT Dir FROM ftpd WHERE User="\L"AND status="1" AND (ipaccess="*" OR ipaccess LIKE "\R")

MySQLGetBandwidthUL SELECT ULBandwidth FROM ftpd WHERE User="\L"AND status="1" AND (ipaccess="*" OR ipaccess LIKE "\R")

MySQLGetBandwidthDL SELECT DLBandwidth FROM ftpd WHERE User="\L"AND status="1" AND (ipaccess="*" OR ipaccess LIKE "\R")

MySQLGetQTASZ SELECT QuotaSize FROM ftpd WHERE User="\L"AND status="1" AND (ipaccess="*" OR ipaccess LIKE "\R")

MySQLGetQTAFS SELECT QuotaFiles FROM ftpd WHERE User="\L"AND status="1" AND (ipaccess="*" OR ipaccess LIKE "\R")


5. pure-ftpd 湲고? ?ㅼ젙

conf ?붾젆?좊━ ?꾨옒 ?ㅼ젙媛??뗮똿

home dir ?댁쇅?먮뒗 ?먯깋 ?????놁쓬
echo ?쐙es??| sudo tee /etc/pure-ftpd/conf/ChrootEveryone

home ?붾젆?좊━媛??놁쓣 ???덈줈 留뚮벉
echo ?쐙es??| sudo tee /etc/pure-ftpd/conf/CreateHomeDir

pure-ftpd-mysql???덈줈 ?쒖옉 ?쒕떎.

/etc/init.d/pure-ftpd-mysql restart


6. pure-ftpd 怨꾩젙 ?앹꽦 諛??뚯뒪??


$ mysql -uroot -p

GID, UID???꾩뿉???앹꽦 ?섏???2001濡??ㅼ젙. 2001 ??떊 ftpuser??ftpgroup瑜??ъ슜?섏뀛???⑸땲??
UP, DOWN ?띾룄??100KB 濡??ㅼ젙
FTP ?ъ슜?먮뒗 exampleuser 鍮꾨쾲??password 濡??ㅼ젙?섏??듬땲??
濡쒓렇?몄떆 蹂댁뿬吏?Dir??/work/FTPHOME ?쇰줈 ?ㅼ젙?섏??듬땲?? 

INSERT INTO `ftpd` (`User`, `status`, `Password`, `Uid`, `Gid`, `Dir`, `ULBandwidth`, `DLBandwidth`, `comment`, `ipaccess`, `QuotaSize`, `QuotaFiles`) VALUES (?셞xampleuser?? ???? MD5(?셮assword??, ??001?? ??001?? ??work/FTPHOME?? ??00?? ??00?? ?? ???? ??0?? ????;

exit;

mkdir /work/FTPHOME
chown ftpuser:ftpgroup /work/FTPHOME

?댁젣 FTP Client瑜??댁슜?섏뿬 FTP???묒냽?⑸땲??
id : exampleuser / passwd: password

李멸퀬 ) ?쒓???蹂댁씠吏??딆쓣??

?꾨옒 ?ъ씠?몃? 李멸퀬?섏뿬 conf ?꾨옒 ?ㅼ젙?뚯씪??留뚮뱾怨?????pure-ftpd-mysql???ㅼ떆 ?쒖옉?섎㈃ ?⑸땲??

http://b.gaedol.org/65
echo "utf8" | sudo tee /etc/pure-ftpd/conf/FsCharset
echo "cp949" | sudo tee /etc/pure-ftpd/conf/ClientCharset
echo "yes" | sudo tee /etc/pure-ftpd/conf/BrokenClientsCompatibility
echo "yes" | sudo tee /etc/pure-ftpd/conf/DontResolv


7. pure-ftpd manager ?ъ슜

pure-ftpd manager???ㅼ튂?섏떆硫??꾩뿉???댁<?⑤뜕 媛곸쥌 ?ㅼ젙?ㅼ쓣 ?쒕갑???앸궡?????덉뒿?덈떎.

wget http://machiel.generaal.net/files/pureftpd/ftp_v2.1.tar.gz

tar -xvvzf pureftpd/ftp_v2.1.tar.gz

mv ftp/ /var/www/

sudo chown www-data /var/www/ftp -R

http://localhost/ftp/install.php

?대젃寃??ㅼ튂?섏뿬 ?앷릿 DB瑜?/etc/pure-ftpd/db/mysql.conf ???ㅼ젙?섎㈃ 諛붾줈 ?ъ슜 媛?뒫??寃?媛숈뒿?덈떎. ( ?꾩쭅 ?대낫吏??딆븘??... )

pure-ftpd manager瑜??ъ슜?섎㈃ user 愿?━ 諛??깅줉 ??젣媛??⑥뵮 ?명븷 寃?媛숈뒿?덈떎留??꾩쭅 洹?갖?꾩꽌 ?ㅼ튂留??대넃怨?

?곕룞???대낫吏??딆븯?듬땲??

< ?ㅼ젙 ?붾㈃ >

[##_1C|1059853111.jpg|width="857" height="445" alt="?ъ슜???쎌엯 ?대?吏?|_##]

8. reference

pure-ftpd 留ㅻ돱??a href="http://jeanmatthieu.free.fr/pureftpd/doc/adv/man/pure-ftpd.html" target="_blank">
http://jeanmatthieu.free.fr/pureftpd/doc/adv/man/pure-ftpd.html

pure-ftpd manager ?ㅼ튂 李멸퀬
http://ubuntuforums.org/showthread.php?t=275451





reunioN? , ,

2008/12/05 21:09 2008/12/05 21:09