快速业务通道

Linux sftpd配置笔记

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-04-01

目标:
用源码方式安装vsftp,禁止匿名用户使用FTP;新增系统用户ftpdemo,并允许ftpdemo使用FTP,ftpdemo在自己的ftp目录可以上传、下载、删除,除了自己的目录外,ftpdemo看不到其他目录.

网上相关的文章很多,都说比较简单,但是我在安装过程并不太顺利,几经周转,终于让我碰对了.回顾一下,把这简单的事情搞复杂的关键是vsftp安装完后,用的是默认的FTP随xinetd一起启动,当时觉得这个没什么关系,就一直没改,后来一直配置不成功,实在找不出问题,就把启动方式改成了独立启动,再配置,居然可以正常使用FTP了,建议各位安装完vsftp后最好修改成独立启动方式,否则下面的配置可能不生效.

安装

我用的是源代码安装
vsftpd需要使用nobody来作为运行者,一般已经存在
#useradd nobody

安装时需要/usr/share/empty/作为临时目录,一般已经存在
#mkdir /usr/share/empty/

解压
#tar zxvf vsftpd-2.0.4.tar.gz
#cd vsftpd-2.0.4

编译
#make
#make install

如果make install没有安装文件,你可能需要手动执行下面的命令
#cp vsftpd /usr/local/sbin/vsftpd
#cp vsftpd.conf.5 /usr/local/man/man5
#cp vsftpd.8 /usr/local/man/man8
#cp vsftpd.conf /etc
#cp vsftpd.xinetd /etc/xinetd.d/vsftpd
重启xinetd
#/etc/rc.d/init.d/xinetd restart
安装完毕

配置
设置为独立启动模式
安装完成后,vsftp是默认随xinetd一起启动,最好改成独立启动(我就是吃了这个亏,但是觉得没事,懒得改,导致后来配置总不成功,浪费了好多时间).打开/etc/xinetd.d/vsftpd文件,把disable=no改成yes,

Empire CMS,phome.net

#vi /etc/xinetd.d/vsftpd

再在/etc/vsftpd.conf文件的添加listen=yes,
#vi /etc/vsftpd.conf

这样就改成了STANDALONE独立模式.

现在我们手动启动一下vsftp
xinetd已经启动了vsftpd,而vsftpd设置成了stardalone模式,
,先停止xinetd服务,
#service xinetd stop
或者
#/etc/init.d/xinetd stop

然后后台执行启动ftp服务
#/usr/local/sbin/vsftpd &

(记得把xinetd服务启动/etc/init.d/xinetd start)


配置本地用户登录

现在的vsftp已经可以使用了,但是只允许匿名用户登录(默认配置),这和我们的目标还有点距离,我们要让本地用户ftpdemo可以FTP登录.

关闭匿名用户登录
出于安全性的考虑,我们不允许匿名用户使用ftp,修改/etc/vsftpd.conf
#vi /etc/vsftpd.conf

找到anonymous_enable项,取消注释,并把值改成no.重启vsftp看看,这下匿名用户不能登录了.

让本地用户登录,先修改配置
local_enable=YES
write_enable=YES
local_umask=022

使本地用户能登录FTP.按照上面的源码安装配置我们的FTP还不能让本地用户登
录,缺少一个认证PAM文件,在源码目录下有一个RedHat/vsftpd.pam认证文
件,把它复制到/etc/pam.d/ftp.
#cp RedHat/vsftpd.pam /etc/pam.d/ftp
测试一下,假设有一个本地用户test,登录FTP:
#ftp 127.0.0.1
Connected to 127.0.0.1 (127.0.0.1).
220 (vsFTPd 1.2.1)
Name (127.0.0.1:root): test
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
看来情况很好:)
Empire CMS,phome.net



新建系统用户ftpdemo
#useradd -s /sbin/nologin -d /var/vhosts/www.gzfyw.com ftpdemo
-s /sbin/nologin 表示用户只能FTP登录,不能登录系统
-d /var/vhosts/www.gzfyw.com 表示用户主目录,即登录后的默认目录,根据实际情况修改成你需要的路径
如果上面的这条命令拷贝后执行出错的话,建议你手动敲入,我就碰到过这种情况

安全起见,马上给ftpdem

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号