现在的位置: 首页 > 综合 > 正文

proftpd 小技巧

2012年07月03日 ⁄ 综合 ⁄ 共 2839字 ⁄ 字号 评论关闭
在proftpd.conf里面加入两行:
UseReverseDNS off
IdentLookups off
防止proftpd进行DNS反查以及对用户端进行ident确认。

===

proftpd如何允许以root身份登录

在配置文件中使用下面的配置:
RootLogin on

===

如何让匿名用户使用proftpd服务器

建立一个用户,用户名为guest,然后在配置文件中使用下面的配置:
<Anonymous ~guest>
AnonRequirePassword off
User private
Group private
RequireValidShell off
<Directory *>
<Limit WRITE>
DenyAll
</Limit>
</Directory>
</Anonymous>

===

如果要支持下载续传,那么必须指定:
AllowRetrieveRestart on
如果要支持上传续传,那么必须指定:
AllowOverwrite on
AllowStoreRestart on
必须同时指定AllowOverwrite和AllowStoreRestart的原因是由于重新上传或者续传也是属于覆盖文件。
同时记得不要同时使用HiddenStor和AllowStoreRestart。

===

在配置文件中设置:
ShowDotFiles on
这样就能通过ls看见以"."号开头的文件

好好学习,天天吃饭
small-bird

===

proftpd如何实现磁盘限额

首先编译的时候指定--with-modules的时候要包含mod_quota。
然后在配置文件中使用:
Quotas on
QuotaCalc on
DefaultQuota 8000
QuotaBlockSize 1024
QuotaBlockName kb
就可以实现磁盘限额。其中DefaultQuota说明用户只能用8000个block,而QuotaBlockSize则指明每个block大小是1024byte也就是1k。QuotaBlockName只在提示中出现,告诉用户block的单位。

===

proftpd环境下如何将用户限制在自己的home目录下?

修改proftpd.conf,加入
DefaultRoot ~
(将用户限制在自己的目录下)
或者
DefaultRoot ~ group1, !group2,!group3
(将用户限制在自己的目录下,对group1有效,对group2,group3无效)

===

如何让proftpd只监听在特定IP

如果一台机器有两个或者多个IP,比如192.168.0.1和172.16.0.1,那么缺省情况下ftp到这两个ip都可以连上这个ftp server,有些情况下要求只能ftp到192.168.0.1而不能ftp到172.16.0.1,该如何处理呢?

在proftpd.conf里面设置:
Bind 192.168.0.1
SocketBindTight on
但是这个配置只能在standalone模式下面才能生效。

===

proftpd中MaxClients和MaxInstances有什么不同

为了有效利用系统资源,防止过多连接,有时候可以在proftpd.conf里面有这样的配置:
MaxClients 100
但是有时候却是看到这样的配置:
MaxInstances 100
这两个有什么区别呢?

MaxInstances设置的是proftpd产生的子进程的个数,而MaxClients限制的是登录用户的个数。而客户端只要产生一个连接,即使不登录,也会导致proftpd产生一个子进程。
如果配置文件中限制MaxClients 100的时候,第101个连上的用户会被提示允许连接的客户端个数已达上限,同时断开连接。而设置MaxInstances 100的时候,第101个连接的用户不会得到任何提示,而服务器拒绝接受任何连接。

====

Proftpd如何限制某个用户的同时连接数

Proftpd 1.2.7rc1以后提供了一个新参数-MaxClientsPerUser。在配置文件中添加下列参数:
MaxClientsPerUser 5
这样就能限制每个用户只能同时有5个连接,使用例如flashget等下载工具的时候就最多只能分成5块下载。

===

如何不用kill proftpd的进程而停止ftp服务

  ftpshut命令可以使得管理员不用停止proftpd进程而禁止所有连接,同时送出停止的信息。而且可以做到定时停止、允许当前存在的连接是马上中断还是到用户自己中断。
  要重新提供ftp服务只要删除/etc/shutmsg。

===

如何查看当前连接到proftpd的用户

--------------------------------------------------------------------------------

使用ftpwho命令,可以查看当前连接的用户相关信息,比如客户端机器名、用户名、连接时间、当前状态、进程号等。比使用ps命令来查看方便多了。

===

ftpshut
  这个程序的主要功能是生成文件/etc/shutmsg,也就是我们在前面/etc/ftpaccess中设定的shutdown命令,ftpshut的使用格式如下:

ftp <-l min> <-d min> time <说明>

  各个参数的说明如下:

-l 这个参数设定在关闭FTP服务器功能前多长时间停止用户的连接;
-d 这个参数设定在关闭FTP服务器功能前多长时间将用户断线;
Time 这个参数指定关闭FTP服务器功能的时间,如想
    在8点半关闭机器,这里可以写0830。

===

Proftpd如何设置允许非正常shell的用户登录

有时候系统里面有一些只有ftp权限的用户,他们的shell一般被设置成/bin/false来防止他们用telnet登录到系统,但是这样导致他们不能ftp,如何解决呢?

  需要注释掉/etc/pam.d/ftp,注释掉下面一行:
  auth required /lib/security/pam_shells.so
  同时在proftpd.conf里面加入:
  RequireValidShell off

===

Proftpd如何限速和设置发呆退出
  可以使用:
  RateReadBPS RateReadFreeBytes
  RateWriteBPS RateWriteFreeBytes
  来限制下载和上载速度:
  RateReadBPS和RateWriteBPS限制下载和上载的速率
  RateReadFreeBytes和RateWriteFreeBytes限制当用户现在这么多数据量以后再进行限速,这样可以实现对于小文件不限速,而大文件限速。
  TimeoutIdle -- 设置空闲连接超时时钟
  TimeoutLogin -- 设置空闲登陆超时时钟
  TimeoutNoTransfer -- 设置当没有数据传输时的超时时钟
  TimeoutStalled -- 设置被阻塞的下载的超时时钟 
 

【上篇】
【下篇】

抱歉!评论已关闭.