锦囊妙计-使用Proftpd的技巧

运维 系统运维
相信拥有了一些使用Proftpd的技巧,着手使用Proftpd就会更加方便啦。本文主要介绍的就是使用Proftpd的技巧。

  proftpd 技巧:如何防止proftpd进行DNS反查以及对用户端进行ident确认?proftpd如何允许以root身份登录?如何让匿名用户使用proftpd服务器?Proftpd如何实现磁盘限额?Proftpd环境下如何将用户限制在自己的home目录下?如何让proftpd只监听在特定IP?Proftpd中MaxClients和MaxInstances有什么不同?以下就是proftpd 下使用的小技巧。

  在proftpd.conf里面加入两行:

  1.   UseReverseDNS off  
  2.  
  3.   IdentLookups off  
  4.  

  防止proftpd进行DNS反查以及对用户端进行ident确认。

  ===

  proftpd如何允许以root身份登录

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

  RootLogin on

  ===

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

  建立一个用户,用户名为guest,然后在配置文件中使用下面的配置:

  1.     
  2.  
  3.   AnonRequirePassword off  
  4.  
  5.   User private  
  6.  
  7.   Group private  
  8.  
  9.   RequireValidShell off    
  10.  
  11.   DenyAll    
  12.  

  ===

  如果要支持下载续传,那么必须指定:

  AllowRetrieveRestart on

  如果要支持上传续传,那么必须指定:

  1.   AllowOverwrite on  
  2.  
  3.   AllowStoreRestart on  
  4.  

  必须同时指定AllowOverwrite和AllowStoreRestart的原因是由于重新上传或者续传也是属于覆盖文件。

  同时记得不要同时使用HiddenStor和AllowStoreRestart。

  ===

  在配置文件中设置:

  ShowDotFiles on

  这样就能通过ls看见以"."号开头的文件

  ===

  proftpd如何实现磁盘限额

  首先编译的时候指定--with-modules的时候要包含mod_quota。

  然后在配置文件中使用:

  1.   Quotas on  
  2.  
  3.   QuotaCalc on  
  4.  
  5.   DefaultQuota 8000  
  6.  
  7.   QuotaBlockSize 1024  
  8.  
  9.   QuotaBlockName kb  
  10.  

  就可以实现磁盘限额。其中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 -- 设置被阻塞的下载的超时时钟

  拥有了以上这些使用Proftpd的技巧,相信你的操作水平很快就会有很大的提高。

【编辑推荐】

  1. ProFTPD.conf的详细配置方法
  2. Proftpd配置文件结构分析
  3. ProFTP下的参数说明
  4. Porftpd.conf的配置格式
  5. lampp的ProFTPd下新增FTP用户的方法
  6. Debian下配置ProFTPd服务器
  7. Centos下ProFTPD配置FTP服务器
责任编辑:zhaolei 来源: CSDN
相关推荐

2011-08-09 15:28:01

2011-06-21 15:21:14

2010-12-20 09:06:32

Web设计师

2011-10-21 10:26:12

数据中心布线服务器

2011-06-03 09:21:35

2018-09-07 15:34:25

Linux运维故障

2021-01-04 05:46:08

代码编程重构

2019-11-12 09:53:32

Linux 系统 数据

2017-08-28 21:02:55

深度学习神经网络

2024-05-28 14:45:00

2010-09-07 11:58:15

2019-11-18 00:47:38

架构开发技术周刊

2010-08-27 13:41:30

UPS

2011-03-23 15:30:53

2010-01-13 13:26:41

Linux服务器维护

2018-11-07 13:35:48

产品

2011-02-25 14:10:52

Proftpd技巧

2011-03-08 15:27:42

ProftpdLimit

2011-02-25 09:32:01

2011-03-08 14:14:31

Proftpd
点赞
收藏

51CTO技术栈公众号