1ãå®è£
pure-ftp
centosä¸å®è£
pure-ftp
yum install pure-ftpd -y
ubuntuä¸å®è£
pure-ftp
apt-get install pure-ftpd
2ã建ç«ç¨æ·åç»
groupadd ftpgroup
useradd ftpuser -g ftpgroup -s /sbin/nologin -d /dev/null
3ãå建èæç¨æ·
pure-pw useradd ftptest -u ftpuser -d /var/www/html
pure-pw mkdb
ftptestæ¯èæç¨æ·,è¿ä¸ªç¨æ·çå±ä¸»å¿
é¡»æ¯ftpuser,å¦å伿²¡ææé
èæç¨æ·çæçpasswdæä»¶å¨/etc/pure-ftpd/pureftpd.passwd
å建èæç¨æ·åè¦æ§è¡ä¸å¥mkdbçæèæç¨æ·æ°æ®åº,è¿æ ·ç¨æ·æææ
çæçæä»¶å¨ â/etc/pure-ftpd/pureftpd.pdbâ
4ã使ç¨FZè½¯ä»¶è¿æ¥
è¿éè¿æ¥çæ¶åä¼æç¤ºä¸ä¸ª530é误ï¼è§£å³åæ³ï¼
centosä¸ï¼
vim pure-ftpd.conf
PureDB /etc/pure-ftpd/pureftpd.pdb
å¼å¯è¿ä¸é¡¹
ubuntuä¸ï¼
å¨/etc/pure-ftpd/authä¸,å建ä¸ä¸ªè½¯é¾æ¥ln -s /etc/pure-ftpd/conf/PureDB 60puredb
以ä¸å¦æè¿æ¯æ²¡æè§£å³ï¼æ¥çä¸ä¸pure-ftpçpidæä»¶æ¯å¦åå¨
cat: /var/run/pure-ftpd.pid: No such file or directory
妿åºç°ä»¥ä¸é误说æpidæä»¶ä¸åå¨ï¼ä½æ¯ä½ ç¨ps auxæ¥ççç¡®æpure-ftpçè¿ç¨ï¼æå¨ææ»å次éå¯ï¼å次ç»å½ä¸è¬æ£å¸¸
åºç¡å½ä»¤ï¼
pure-pw useradd æ·»å ç¨æ·
pure-pw userdel å é¤ç¨æ·
pure-pw usermod ä¿®æ¹ç¨æ·
pure-pw show æ¥çç¨æ·è¯¦ç»ä¿¡æ¯
pure-pw list æ¥çææç¨æ·è®¾ç½®
pure-pw mkdb çææ°æ®æä»¶
ftpé
ç½®åæ°ï¼
ChrootEveryone yes #éå¶ææç¨æ·å¨å
¶ä¸»ç®å½ä¸
BrokenClientsCompatibility no #å
¼å®¹ieçæ¯è¾éæ£è§åçftp客æ·ç«¯
MaxClientsNumber 50 #æå¡å¨æ»å
±å
è®¸åæ¶è¿æ¥çæå¤§ç¨æ·æ°
Daemonize yes #åä¸ºå®æ¤(doemon)è¿ç¨è¿è¡(Fork in background)
MaxClientsPerIP 8 #åä¸IPå
è®¸åæ¶è¿æ¥çç¨æ·æ°
VerboseLog no #å¦æä½ è¦è®°å½ææç客æ·å½ä»¤ï¼è®¾ç½®è¿ä¸ªæä»¤ä¸º "yes"
DisplayDotFiles yes #å³ä½¿å®¢æ·ç«¯æ²¡æåé '-a' é项ä¹ååºéèæä»¶
AnonymousOnly no #ä¸å
许认è¯ç¨æ· - ä»
ä½ä¸ºä¸ä¸ªå
Œ
±çå¿åFTPã
NoAnonymous yes #ä¸å
许å¿åè¿æ¥ï¼ä»
å
许认è¯ç¨æ·ä½¿ç¨ã
SyslogFacility ftp #缺ççåè½( facility )æ¯ "ftp"ã "none" å°ç¦æ¢æ¥å¿ã
DontResolve yes #卿¥å¿æä»¶ä¸ä¸è§£æä¸»æºåã
MaxIdleTime 15 #客æ·ç«¯å
许çæå¤§çç©ºé²æ¶é´ï¼åéï¼ç¼ºç15åéï¼
PureDB /usr/local/pureftp-1.0.22/etc/pureftpd.pdb #PureDB ç¨æ·æ°æ®åº
LimitRecursion 2000 8 #'ls' å½ä»¤çéå½éå¶ã第ä¸ä¸ªåæ°ç»åºæä»¶æ¾ç¤ºçæå¤§æ°ç®ã第äºä¸ªåæ°ç»åºæå¤§çåç®å½æ·±åº¦ã
AnonymousCanCreateDirs no #å
许å¿åç¨æ·å建æ°ç®å½ï¼
MaxLoad 4 #å¦æç³»ç»è¢« loaded è¶
è¿ä¸é¢çå¼ï¼å¿åç¨æ·ä¼è¢«ç¦æ¢ä¸è½½ã
AntiWarez yes #䏿¥åææè
为 "ftp" çæä»¶çä¸è½½ã
Bind 10.10.10.10,21 #æå¡çå¬çIP å°åå端å£ã
Umask 133:022 #æ°å»ºç®å½åæä»¶ç屿§æ©ç å¼ã<æä»¶æ©ç >;:<ç®å½æ©ç >; .
MinUID 99 #认è¯ç¨æ·å
许ç»éçæå°ç»IDï¼UIDï¼ ã
AllowUserFXP yes #ä»
å
许认è¯ç¨æ·è¿è¡ FXP ä¼ è¾ã
AllowAnonymousFXP no #对å¿åç¨æ·åéå¿åç¨æ·å
许è¿è¡å¿å FXP ä¼ è¾ã
ProhibitDotFilesWrite no #ç¨æ·ä¸è½å é¤ååç¹æä»¶ï¼æä»¶å以 '.' å¼å¤´çæä»¶ï¼
ProhibitDotFilesRead no #ç¦æ¢è¯»ç¹æä»¶ï¼æä»¶å以 '.' å¼å¤´çæä»¶ï¼ (.history, .ssh...)
AutoRename no #æ°¸ä¸è¦çæä»¶ãå½ä¸ä¼ çæä»¶ï¼å
¶æä»¶åå·²ç»å卿¶ï¼èªå¨éå½åï¼å¦ï¼ file.1, file.2, file.3, ...
AnonymousCantUpload no #䏿¥åå¿åç¨æ·ä¸ä¼ æ°æä»¶( no = å
许ä¸ä¼ )
AltLog clf #使ç¨ç±»ä¼¼äºApacheçæ ¼å¼å建ä¸ä¸ªé¢å¤çæ¥å¿æä»¶
MaxDiskUsage 99 #æ¥ä¿æ¤æ¥å¿æä»¶ã彿å¨ç£çååºä½¿ç¨è¶
è¿ç¾åä¹ X æ¶ï¼å°ä¸å¨æ¥åæ°çä¸ä¼ ã
CustomerProof yes
UnixAuthentication no #ä¸èµ·ç¨ ç®åç Unixç³»ç» è®¤è¯æ¹å¼(/etc/passwd)ã
å建pure-ftpç¨æ·èæ¬
#!/bin/bash
read -p 'æ·»å ä¸ä¸ªæè¿°:' comment
read -p 'æå®å·¥ä½ç®å½:' directory
user=$(tr -cd [a-z][A-Z][0-9] </dev/urandom | head -c 6)
passwd=$(tr -cd [a-z][A-Z][0-9] </dev/urandom | head -c 16)
(echo $passwd;echo $passwd) | pure-pw useradd $user -u ftpuser -d directory
pure-pw mkdb
echo '---------------------------' >> ./ftp_useradd.log
echo 'å建æ¶é´:' `date +%Y-%m-%d_%H:%M:%S` >> ./ftp_useradd.log
echo 'æè¿°:' $comment >> ./ftp_useradd.log