免费注册 查看新帖 |

Chinaunix

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

VSFTP安装 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-04-29 01:29 |只看该作者 |倒序浏览
FTP=File Transfer Protocol(PFC959)
系统环境Linux 2.6.15-1.2054_FC5
只安装了开发工具,无图形环境
建立ftp前的一些准备工作
# useradd nobody
# mkdir /usr/share/empty/
# mkdir /var/ftp/
# useradd -d /var/ftp ftp
# chown root.root /var/ftp
# chmod og-w /var/ftp
如果系统已经做好这些工作我们就可以直接进行以下工作
下载
http://vsftp.beasts.org
安装VSFTP
cd /usr/src
tar xvzf vsftpd-2.0.5.tar.gz
cd vsftpd-2.0.5
make
make install
安装配置文件
cp vsftpd.conf /etc/
cp RedHat/vsftpd.pam /etc/pam.d/
mv /etc/pam.d/vsftpd.pam /etc/pam.d/ftp
编辑配置文件/etc/vsftpd.conf 在末尾处加入一句话:
listen=YES(使VSFTP采用单独运行模式运行)
禁用xinetd方式启动
chkconfig vsftpd off
chkconfig vsftpd --list 显示 vsftpd  off
添加到开机自启动
vi /etc/rc.local添加一句话
/usr/local/sbin/vsftpd &
手动启动服务
/usr/local/sbin/vsftpd &  或/etc/rc.local停止服务 killall -9 vsftpd
察看端口,如果有21端口处于监听状态,则ftp服务运行。
netstat -tln

配置匿名用户访问及上传
vi /etc/vsftpd.conf
anonymous_enable=YES         #允许匿名用户登录服务器
local_enable=YES             #允许本地用户登录
write_enable=YES             #允许客户端写命令  
local_umask=022              #本地用户新文件的umask值(文件对同组和其他用户                              来说是只读的)
anon_upload_enable=YES       #允许匿名用户上传文件
anon_mkdir_write_enable=YES  #允许匿名用户创建目录
dirmessage_enable=YES        #允许使用目录信息(将目录下.message文件打印给用                               户)
ftp_banner=welcome to ...    #登录欢迎词
listen=YES                   #运行在监听模式
配置:
anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
anon_upload_enable=YES
dirmessage_enable=YES
重启服务
killall -9 vsftpd
/usr/local/sbin/vsftpd &
上面两句话可用killall -HUP vsftpd 代替
此时可以尝试登陆FTP服务器,
ftp localhost
匿名用户anonymous/ftp可访问下载。
由于匿名帐户属于ftp组,但是/var/ftp 属于root组,且权限为755其他由户不可写
所以可以新建目录,将文件属性改为FTP组
mkdir /var/ftp/incoming
chgrp ftp incoming/
此时匿名用户可访问可以在incoming文件夹内下载上传。
但是所有匿名用户都可以看到下载删除其他匿名用户上传得东西
所以可以把ftp组可读权限去掉,这样匿名用户能上传但是不能访问不能下载。
chmod g-r incoming/
ls -ld incoming/
显示drwx-wxr-x 2 root ftp 4096 Oct 21 18:13 incoming
普通用户的目录锁定
匿名用户默认配置被锁定在:“/”目录下即/var/ftp
普通用户登录ftp时也可以锁定
需要打开
chroot_list-enable=YES
在中chtoot_list_file=/etc/vsftpd.chroot_list
写入普通用户名
redhat
test
用户控制
写入/etc/ftpusers:的用户将被拒绝访问ftp(但是可以通过修改/etc/pam.d/ftp中的sense值为allow来改成允许的用户列表)
此方法并未成功,但是可以用下列方法实现本地用户访问控制
在/etc/vsftpd.conf中添加
userlist_enalbe=YES
userlist_deny=YES
userlist_file=/etc/vsftpd.user_list
vi /etc/vsftpd.user_list
test
这样在vsftpd.user_list中的test帐户不能访问ftp。如果是userlist_deny=NO
就变成只有test可以访问ftp

强烈推荐使用man vsftpd.conf
察看更多详细内容。


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/37091/showart_288518.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP