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

Ubuntu中安装配置装卸FTP和配置本地用户登录(亲测可行)

2018-01-03 17:53 267 查看
转载: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/  

 

#创建用户

Java代码  


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

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

#设置用户口令

Java代码  


sudo passwd test456  

 

编辑/etc/vsftpd.chroot_list文件,将ftp(这里是:test456)的帐户名添加进去,保存退出

重新启动vsftpd:

Java代码  


$ sudo service vsftpd restart  

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

2.进入火狐浏览器输入ftp://192.168.132.132(这里的IP是自己主机IP,不知道的可以用ifconfig查看)

最终效果如下图所示:



3.删除用户

Java代码  


$ sudo userdel test456  

 

四.卸载

sudo apt-get remove --purge vsftpd

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