您的位置:首页 > 编程语言 > PHP开发

Ubuntu中安装配置和卸载FTP(转)

2016-09-11 17:08 330 查看
转载:http://zyjustin9.iteye.com/blog/2178943

一.安装
1.用apt-get工具安装vsftpd:

Java代码


$ sudo apt-get install vsftpd

2.检查FTP端口是否已经打开

Java代码


$ netstat -tnl



或者直接在浏览器里输入“ftp://服务器IP”

开启、停止、重启vsftpd服务的命令:

Xml代码


service vsftpd start | stop | restart

二.配置
1.修改配置文件

Java代码


$ sudo vi /etc/vsftpd.conf

主要配置:

Xml代码


listen=YES # 服务器监听

local_enable=YES # 是否允许本地用户访问

write_enable=YES # 是否允许上传文件,不开启会报 550 permission denied

anonymous_enable=NO # 匿名访问允许,默认不要开启,

#anon_upload_enable=YES # 匿名上传允许,默认是NO

#anon_mkdir_write_enable=YES # 匿名创建文件夹允许

用户访问目录的权限设置:
在默认配置下,本地用户登入FTP后可以使用cd命令切换到其他目录,这样会对系统带来安全隐患。可以通过以下三条配置文件来控制用户切换目录。

Xml代码


chroot_local_user=YES # 用于指定用户列表文件中的用户是否允许切换到上级目录。默认值为NO。

chroot_list_enable=YES # 设置是否启用chroot_list_file配置项指定的用户列表文件。默认值为NO。

chroot_list_file=/etc/vsftpd.chroot_list

#禁用的列表名单,格式为一行一个用户,用于指定用户列表文件,该文件用于控制哪些用户可以切换到用户家目录的上级目录。

通过搭配能实现以下几种效果:

Xml代码


(1).当chroot_list_enable=YES,chroot_local_user=YES时,在/etc/vsftpd.chroot_list文件中列出的用户,可以切换到其他目录;未在文件中列出的用户,不能切换到其他目录。

(2).当chroot_list_enable=YES,chroot_local_user=NO时,在/etc/vsftpd.chroot_list文件中列出的用户,不能切换到其他目录;未在文件中列出的用户,可以切换到其他目录。

(3).当chroot_list_enable=NO,chroot_local_user=YES时,所有的用户均不能切换到其他目录。

(4).当chroot_list_enable=NO,chroot_local_user=NO时,所有的用户均可以切换到其他目录。

其他配置解释:

Xml代码


local_umask=022 # FTP上本地的文件权限,默认是077

dirmessage_enable=YES # 进入文件夹允许

xferlog_enable=YES # ftp 日志记录允许

connect_from_port_20=YES # 启用20号端口作为数据传送的端口

xferlog_enable=yes # 激活上传和下传的日志

xferlog_std_format=yes # 使用标准的日志格式

ftpd_banner=XXXXX # 欢迎信息

相关链接:
vsftpd配置文件详解

2.重启vsftpd服务

Java代码


$sudo /etc/init.d/vsftpd restart

或者

$ sudo service vsftpd restart

注:修改配置文件后一定要重启服务才能生效

三.FTP增加删除用户
1.增加用户
#创建目录

Java代码


mkdir -p /home/test

#创建用户

Java代码


sudo useradd -g ftp -d /home/test -m test

(注:g:用户所在的组 d:表示创建用户的自己目录的位置给予指定 m:不建立默认的自家目录,也就是说在/home下没有自己的目录)

#设置用户口令

Java代码


sudo passwd test123

编辑/etc/vsftpd.chroot_list文件,将ftp的帐户名添加进去,保存退出

重新启动vsftpd:

Java代码


$ sudo service vsftpd restart

注:修改用户权限文件vsftpf.chroot_list文件后一定要重启服务才能生效

2.删除用户

Java代码


$ sudo userdel test

四.卸载

sudo apt-get remove --purge vsftpd

(--purge 选项表示彻底删除改软件和相关文件)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: