免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 2551 | 回复: 10
打印 上一主题 下一主题

一个很好的proftpd配置实例,包含了virtualhost的详细设置ZT [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-04-10 11:46 |只看该作者 |倒序浏览
译了一点点,希望大家努力,把它变成一个完美的文档。我一个人做不来啊。

一个FTP服务器,允许管理员管理网站,也允许匿名用户,使用的是虚拟机。
安装:
proftpd-1.2.xx
proftpd-anonymous-1.2.xx

配置
/etc/proftpd.conf  
以下:

# 服务器名字
ServerName "Server Alex.fr"

# ProFTPd 管理员邮箱
ServerAdmin ftp@alex.fr

# "standalone" 单独的服务开启FTP使用 /etc/init.d/proftpd start
# 这个大家都明白意思吧
###################################
ServerType standalone

#由于有虚拟机,设置默认的服务器为开启状态。
DefaultServer on

# 启用上传断点续传。
# 很有用的功能。
AllowStoreRestart on

# 应该是下载断点续传吧。偶不懂法语啊。
AllowRetrieveRestart on

# Pour éviter d'etre vulnérable aux attaques de type DoS laisser le nombre de processus enfants a 30 maximum
# Ce paramètre n'est valable que si vous fonctionnez en mode "standalone"
# Si vous etes en mode "inetd" vous devrez configurer le nombre de processus enfants maximum dans le server xinetd
MaxInstances 30

# Permet au serveur de rechercher lui meme dans /etc/passwd la validité des mots de passe (Utile pour NIS)
# Laisser par défaut sur "off"
PersistentPasswd off

# Active un arrangement des lignes pour plus de compatibilité
MultilineRFC2228 on

# Oblige proftpd a toujours fournir l'ip Public.
# dans le cas d'une gateway NAT ou un port forwarder
#MasqueradeAddress (votre IP Pubic)

# Définit les ports que ProFTPd va utiliser pour son allocation dynamique.
# Il vous suffit de router les ports en question vers votre serveur ProFTPd.
# Vous définirez ces règles sur votre routeur ou gateway (FW)
#PassivePorts 50000 50010

# Evite le blocage de ProFTP pendant le temps de réponse de résolution DNS
UseReverseDNS off


# Tout ce qui est défini dans <Global>; s'applique a l'ensemble du contexte de configuration, meme VirtualHost

<Global>;

# 为FTP设置用户和群组
User nobody
Group nogroup

# Umask 022 is a good standard umask to prevent new dirs and files
# from being group and world writable.
Umask 022 022

# Force l'option de directory listings (NLST, LIST et STAT) a -l
LsDefaultOptions "-l"

# Autorise le remplacement d'anciens fichiers par des nouveaux, si l'utilisateur a le droit en écriture bien sur.
<Directory />;
AllowOverwrite on
</Directory>;

# Permet de ne pas donner d'information sur le serveur
DeferWelcome off

# On indique au serveur FTP d'utiliser ou non le fichier /etc/ftpusers pour savoir qui a le droit de se connecter.
# Par défaut ce fichier est utilisé par ProFTP
UseFtpUsers on

# Le premier message qui sera affiché quand quelqu'un se connectera
ServerIdent on "Server FTP ready"

# Message d'accueil
AccessGrantMsg "Bienvenue %u sur Alex.fr"

# Autorise le téléchargement ou upload distant directement depuis un autre serveur FTP sans passer par le PC de l'user.
AllowForeignAddress on

# Permet de déconnecter le client au bout de "x" secondes :
# s'il n'y a aucune activité de son coté.
TimeoutIdle 600

# s'il n'y a aucune activité entre la saisie du login et du passwd
TimeoutLogin 300

# s'il n'opére aucun transfert
TimeoutNoTransfer 300

# s'il a stoppé le transfert
TimeoutStalled 3600

# Autorise seulement les noms de fichiers normaux (caractères alphanumeric) et non des codes shell
PathAllowFilter "[a-zA-Z0-9]"

# Refuse l'upload de fichiers .ftpaccess ou .htaccess
PathDenyFilter "(\.ftp)|(\.ht)[a-z]+$"

# N'autorise pas de passer des printf-Formats
AllowFilter "^[a-zA-Z0-9@~ /,_.-]*$"
DenyFilter "%"

# Cache les liens symboliques
ShowSymlinks off


</Global>;


# Permet de prendre en compte le fichier suivant.
Include /etc/proftpd-virtualhost.conf




配置文件 /etc/proftpd-virtualhost.conf

# 给管理员用户的虚拟机
<VirtualHost ftpadmin.alex.fr>;

ServerName "Server FTP Admin"

# 给管理员开一个新的端口,端口号自定。
Port 2100

# 最大允许密码尝试次数(防止密码猜测)
MaxLoginAttempts 2

# 要求使用合规的shell.即用户要可以登陆的。用户的shell不能是/bin/nologin之类
RequireValidShell on

# 只允许webmaster 登陆此虚拟机。
<Limit LOGIN>;
Order Allow,Deny
AllowUser webmaster
Deny from all
</Limit>;

AccessGrantMsg "Bienvenue %u sur le Serveur FTP Admin"

# Autorise seulement ces deux commandes dans /
<Directory />;
<Limit CWD DIRS>;
AllowAll
</Limit>;
<Limit ALL>;
DenyAll
</Limit>;
</Directory>;

# Refuse toutes les commandes dans /var/www/html/webmail
<Directory /var/www/html/webmail>;
<Limit ALL>;
DenyAll
</Limit>;
</Directory>;

# Autorise toutes les commandes dans /var/www/html
<Directory /var/www/html>;
<Limit ALL>;
AllowAll
</Limit>;
</Directory>;

# Autorise toutes les commandes dans /var/www/cgi-bin
<Directory /var/www/cgi-bin>;
<Limit ALL>;
AllowAll
</Limit>;
</Directory>;

# Autorise toutes les commandes dans /var/log/apache
<Directory /var/log/apache>;
<Limit ALL>;
AllowAll
</Limit>;
</Directory>;

</VirtualHost>;




# 为匿名用户设置虚拟机。
<VirtualHost ftp.alex.fr>;

ServerName "Server FTP Public"
Port 21
Umask 027

# 匿名不用密码验证
IdentLookups off

# Refuse la connexion des Utilisateurs disposant d'un login. Pour autoriser seulement les connexions Amonymous
<Limit LOGIN>;
DenyAll
</Limit>;

# 设定最大连接的用户数
MaxClients 10 "Sorry, max %m users -- try again later"

AccessGrantMsg "Bienvenue %u sur le Serveur FTP Public"
#设定要包含文件的
Include /etc/proftpd-anonymous.conf

</VirtualHost>;



###################################################################################
###################################################################################
配置文件 /etc/proftpd-anonymous.conf :

# Connecte les Anonymous vers /var/ftp/pub
<Anonymous ~ftp/pub>;

User ftp
Group ftp

# Fait d'anonymous un alias a ftp, en se logant sous anonymous, ils sont appelés ftp
UserAlias anonymous ftp

# Ignore la vérification d'un shell pour anonymous
RequireValidShell off

# Permet de ne pas rechercher dans le systeme, le mot de passe
AnonRequirePassword off

# Pour qu'un message soit affiché a la connexion vous pouvez créer un fichier 'welcome.msg' a la racine (ici ~ftp/pub)
DisplayLogin welcome.msg

# Pour signaler que le client est remonté a la racine vous pouvez créer un fichier '.message' qui s'affichera
DisplayFirstChdir message

# Permet de cacher tous les fichiers appartenant a "root"
HideUser root
HideGroup root

<Limit LOGIN>;
AllowAll
</Limit>;

# Limite les commandes suivantes :
#de renommer, de supprimer des fichiers des répertoires, changer les permissions, ...
<Limit RNFR RNTO DELE RMD CHMOD SITE_CHMOD SITE XCUP WRITE XRMD XPWD>;
DenyAll
</Limit>;

# Autorise l'upload vers le répertoire uploads uniquement
<Directory uploads/*>;

<Limit READ>;
DenyAll
</Limit>;

# Autorise le storage de fichiers et création de répertoires mais pas l'effacement
<Limit STOR MKD>;
AllowAll
</Limit>;

</Directory>;

</Anonymous>;




文件 /etc/ftpusers 的内容如下:

root
bin
daemon
adm
lp
sync
shutdown
halt
mail
news
uucp
operator
games
nobody

论坛徽章:
0
2 [报告]
发表于 2004-04-10 11:57 |只看该作者

一个很好的proftpd配置实例,包含了virtualhost的详细设置ZT

对不起了,是法语的,不过大部分还是看得懂吧。
lovetiger 该用户已被删除
3 [报告]
发表于 2004-04-10 12:26 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
4 [报告]
发表于 2004-04-10 14:58 |只看该作者

一个很好的proftpd配置实例,包含了virtualhost的详细设置ZT

还是不太明白

  1. # Autorise seulement les noms de fichiers normaux (caractères alphanumeric) et non des codes shell
  2. PathAllowFilter "[a-zA-Z0-9]"

  3. # Refuse l'upload de fichiers .ftpaccess ou .htaccess
  4. PathDenyFilter "(\.ftp)|(\.ht)[a-z]+$"

  5. # N'autorise pas de passer des printf-Formats
  6. AllowFilter "^[a-zA-Z0-9@~ /,_.-]*$"
  7. DenyFilter "%"
复制代码

的作用,能阐述一下吗?

论坛徽章:
0
5 [报告]
发表于 2004-04-10 15:00 |只看该作者

一个很好的proftpd配置实例,包含了virtualhost的详细设置ZT

[quote]原帖由 "tsgx"]对不起了,是法语的,不过大部分还是看得懂吧。[/quote 发表:


我看了一半头都晕了。。。。

论坛徽章:
0
6 [报告]
发表于 2004-04-10 15:49 |只看该作者

一个很好的proftpd配置实例,包含了virtualhost的详细设置ZT

[quote]原帖由 "platinum"]的作用,能阐述一下吗?[/quote 发表:

就是允许上传的文件类型吧,它是防止上传.htaccess,等文件类型,
apache的设置里也有这个东东吧。

论坛徽章:
0
7 [报告]
发表于 2004-04-10 15:56 |只看该作者

一个很好的proftpd配置实例,包含了virtualhost的详细设置ZT

哦,明白了,实际是用正则表达式做FILTER吧?

论坛徽章:
0
8 [报告]
发表于 2004-04-10 16:20 |只看该作者

一个很好的proftpd配置实例,包含了virtualhost的详细设置ZT

大家能不能努力,一起把它做成一个完全的中文文档????
谢谢大家了。

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
9 [报告]
发表于 2004-04-10 17:34 |只看该作者

一个很好的proftpd配置实例,包含了virtualhost的详细设置ZT

FTP版已经有了一个中文的。

论坛徽章:
0
10 [报告]
发表于 2004-04-10 17:49 |只看该作者

一个很好的proftpd配置实例,包含了virtualhost的详细设置ZT

[quote]原帖由 "好好先生"]FTP版已经有了一个中文的。[/quote 发表:

跟这个有很大的不同吧,那个主要是设置与mysql结合,作认证。

而这个,主要是讲对虚拟机的设置,对目录权限的设置等。
不过,这样的话也算了啦。自己基本能看懂就行了。
我都一时冲动了。  那个也是已经是非常不错的了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP