T086学习网 | 站长学院 | 技术文档 | 成语 | 歇后语 | 帝国时代 | 代码收藏 | IP地址查询 | 生活百科 | 生日密码 | CSS压缩 | 用户评论 | 欣欣百宝箱

Linux下Proftp1.2.4 的安装设置

【 网络作者:linuxsky 更新时间:2006-11-14 | 字体:
[导读]关于ProFtpd的安装以这个版本为例proftpd-1.2.4.tar.gzhttp://www.proftpd.org安装方法:./configure --prefix=/usr/local --enable-shadow make (如果是双 CPU 建议采用 make -j3) make install或者简单一点./conf...

关于ProFtpd的安装

以这个版本为例
proftpd-1.2.4.tar.gz
http://www.proftpd.org

安装方法:
./configure --prefix=/usr/local --enable-shadow
make (如果是双 CPU 建议采用 make -j3)
make install
或者简单一点
./configure
make
make install

配置方法:

然后你可以发现 ProFTPD 安装在 /usr/local 下,"proftpd" 可以在/usr/local/sbin/
目录下找到,配置文件 proftpd.conf 位于:/usr/local/etc/

编辑/usr/local/etc/proftpd.conf,找到“Group xxxxxx”
改为“Group nobody”


要锁定用户在自己的本身的目录下,请在proftpd.conf文件里加上一句:
DefaultRoot~

FTP服务器相关命令

  1、ftpshut:关闭FTP服务,并在/etc下生成文件shutmsg。要重新开放FTP服务,把/etc/shutmsg删除。
  2、ftpcout:FTP服务器在线人数信息显示。
  3、ftpwho:FTP服务器在线人员名单。

几个文件的功能及路径
/usr/local/sbin/proftpd 执行程序
/usr/local/etc/proftpd.conf 设置文件
/usr/local/var/proftpd.pid proftpd做为一个服务的ID号


设定proftpd.conf文件,起动服务

cd /etc/rc.d/rc3.d
ln -s /usr/local/sbin/proftpd S99proftpd

或者
修改/etc/rc.d/rc.local
加上下面这句
/usr/local/sbin/proftpd start

在proftpd环境下如何设定虚拟主机?

可以通过指令:VirtualHost来实现,一个最简单的例子:

<VirtualHost 192.168.2.35>
ServerName "virtual FTP server"
</VirtualHost>
若你仅仅希望通过匿名访问某个虚拟主机,则使用如下! 的指令:

<VirtualHost 192.168.2.35>

Serv erName "virtual FTP server"

<Limit LOGIN>
DenyAll
</Limit>

<Anonymous /usr/local/private>

User private
Group private

<Limit LOGIN>
AllowAll
</Limit>

</Anonymous>

</VirtualHost>

这样192.168.2.35的这台主机则仅仅允许匿名登录。

如果要求登陆访问,可以这样

<Anonymous /home/lixin/ftp> #需要登录
User lixin
Group lixin
UserAlias publx lixin
AnonRequirePassword on
MaxClients 2
DisplayLogin welcome.msg
DisplayFirstChdir .message

<Limit LOGIN>
AllowGroup lixin
DenyAll
</Limit>


GroupOwner lixin
Umask 007

HideUser root
HideGroup root

</Anonymous>

你登录的用户名、密码必须是linux注册的用户名、密码,所要访问的目录的属性也必须是用户名有相应权限的。目录里当然还要有东西

 

conf文件说明
/usr/local/etc/proftpd.conf

ServerName "ProFTPD Default Installation"
顾名思义这就是为自己的FTP Server命名啰!例如笔者将预设的名称改为
ServerName 帕胡德档案传输系统

ServerType standalone
ProFTPD主要激活方式有两种,分别是"standalone"与"inetd",前者必须手动来激活ProFTPD; 后者可以写在/etc/inetd.conf里头,每当开机激活执行档的时候,就会激活所有/etc/inetd.conf里面的所有Daemon了。如果各位想让自己的FTP服务成为Linux的主要服务的一部份,笔者建议各位使用inetd的方式,因此笔者是这么设定的:
ServerType inetd
此时,因为设定以inetd方式激活,必须在/etc/inetd.conf里头加上一行:
ftp stream tcp nowait root /usr/local/sbin/in.proftpd in.proftpd
(段落之间记得用Tab键隔开喔!)
修改了/etc/inetd.conf之后记得养成习惯执行
killall -HUP inetd
让系统重新执行inetd并且读取更新过的/etc/inetd.conf檔。

DefaultServer on
如果ProFTPD是您预设的FTP Server,请设定为on。

Port 21
一般的FTP连接端口默认值是21,如果不是特别需要的话,请勿修改这个数字,但如果您之前已经有跑其它的FTP Server(例如wu-ftpd),那么您可以修改这个Port值,这样一来就可以同时跑两个不同的FTP Server了。不过笔者不鼓励这种方式,因此这个地方还是建议各位保留21这个Port。

Umask 022
Umask是用来设定当使用者新增加一个资料夹或档案的时候它的档案权限,为了预防使用者所新增的资料夹变成任何人都能写入的资料夹,预设的Umast值是022,也就是说除了本人之外,同一个group或是其它使用者都无法做写入该资料夹的动作。

MaxInstances 30
这是预防有些有心的cracker利用类似DoS之类的程序来攻击系统,造成大量的child process导致瘫痪整个service,因此将最多的child process设为30。需要注意的是这个设定仅对standalone的执行方式有效,如果各位在前面跟笔者一样使用inetd的话,各位可能必须利用xinetd这套软件来限制child process的数目了。

User nobody
Group nobody
这里设定FTP Server执行时的身份,一般是设定为nobody。

<Directory /*>
AllowOverwrite on
</Directory>
一般说来,我们都希望档案都能够覆写上去,因此这里我们设定为"on"。眼尖的读者是否已经发现ProFTPD设定档的设定格式跟Apache Web Server设定格式很像呢?甚至有点html卷标(tag)的味道呢!没错!这正是ProFTPD主要特色之一喔!

<Anonymous ~ftp>
User ftp
Group ftp
# We want clients to be able to login with "anonymous" as well as "ftp"
UserAlias anonymous ftp

# Limit the maximum number of anonymous logins
MaxClients 10

# We want 'welcome.msg' displayed at login, and '.message' displayed
# in each newly chdired directory.
DisplayLogin welcome.msg
DisplayFirstChdir .message

# Limit WRITE everywhere in the anonymous chroot
<Limit WRITE>
DenyAll
</Limit>

</Anonymous>

  • 转载请注明来源:IT学习网 网址:http://www.t086.com/ 向您的朋友推荐此文章
  • 特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系我们,我们会尽快予以更正。
更多
留言建议ASP探针PHP探针站长Enjoy的Blog
© 2017 T086学习网 - T086.com(原itlearner.com)
RunTime:16.97ms QueryTime:7