Ubuntu14.04搭建FTP服务器记录

一、Ubuntu 14.04下FTP服务器的安装

1.安装vsftpd

打开"终端窗口",输入"sudo apt-get install vsftpd"–>回车–>安装完成。

2.判断vsftpd是否安装成功

打开"终端窗口",输入"sudo service vsftpd restart"重启vsftpd服务–>回车–>vsftpd处于运行状态,说明安装成功。

3.设置用户主目录、新建用户ftp并设置密码

打开"终端窗口",输入"sudo useradd -d /home/workspace/project/Build_FOTA -s /bin/bash ftp"–>回车–>用户新建成功–>输入"sudo passwd ftp"设置ftp用户的密码–>回车–>输入两次密码–>回车–>密码设置成功。

设置完后,该ftp用户浏览器访问,只能看到Build_FOTA 目录下的内容。

单纯的使用useradd ftp1,没有指定目录的话,测试浏览器也是无法访问FTP服务器。

如果想删除某个用户,例如ftp,删除命令为:userdel -r ftp (参数-r 用于彻底删除)

root@chenwr-pc:/home/workspace/project/Build_FOTA# userdel -r ftp
userdel: ftp mail spool (/var/mail/ftp) not found
userdel: /srv/ftp not owned by ftp, not removing
4.默认配置FTP能够下载,但是无法上传文件

首先优先确认防火墙是否关闭。
selinux默认ubuntu不安装,因此使用getenforce来查看当前selinux状态

root@chenwr-pc:/etc/selinux# getenforce 
Disabled

其次确定windows防火墙是否关闭

连接到 172.16.XX.XX。
220 (vsFTPd 3.0.2)
200 Always in UTF8 mode.
ftp> user ftp
331 Please specify the password.

230 Login successful.
ftp>
ftp> put 1.zip /home/workspace/project/Build_FOTA/EC20-delta-gentools/v1/targetfiles.zip
200 PORT command successful. Consider using PASV.
550 Permission denied.

提示没有权限,修改配置文件即可。
上传 功能# Uncomment this to enable any form of FTP write command.
write_enable=YES(开启就好了)
sudo service vsftpd restart重启服务就ok

原先目录存在同名文件,上传文件提示无法创建文件,此时只需要修改目录权限即可。

200 PORT command successful. Consider using PASV.
553 Could not create file.

修改FTP服务器指定目录的权限即可
chmod 777 -R EC20-delta-gentools/

5.指定用户访问FTP服务器配置

(1)输入"sudo gedit /etc/ftpusers",该文件记录不能访问FTP服务器的用户清单

测试使用ftp2用户无法访问

(2)自己新建文件存储ftp用户名来允许访问的方式。

root@chenwr-pc:/etc# vi cwr_allow_users

并添加ftp ftp1 ftp2 自己测试添加的用户名,进行测试。
修改 /etc/vsftpd.conf配置文件,添加

  • userlist_deny=NO
  • userlist_enable=YES # vsftpd 将会从所给的用户列表文件中加载用户名字列表
  • userlist_file=/etc/cwr_allow_users # 存储用户名字的列表
  • 重启服务

详细说明:
配置 vsftpd.conf
第一步,配置userlist_deny

  • 当userlist_deny=YES,用户列表/etc/cwr_allow_users中的用户无法访问FTP服务器;
  • 当userlist_deny=NO,用户列表/etc/cwr_allow_users中的用户能够访问FTP服务器;

第二步,userlist_enable=YES 启用了用户列表。
第三步,配置用户列表,userlist_file=/etc/cwr_allow_users (cwr_allow_users这个文件自己新建的,随意怎么命名都可以)

root@chenwr-pc:/etc# cat cwr_allow_users 
ftp
ftp1
ftp2
6.卸载vsftpd和配置文件

sudo apt-get remove vsftpd --purge

root@chenwr-pc:~# sudo apt-get remove vsftpd --purge
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be REMOVED:
  vsftpd*
0 upgraded, 0 newly installed, 1 to remove and 750 not upgraded.
After this operation, 361 kB disk space will be freed.
Do you want to continue? [Y/n] y
(Reading database ... 185238 files and directories currently installed.)
Removing vsftpd (3.0.2-1ubuntu2.14.04.1) ...
vsftpd stop/waiting
Purging configuration files for vsftpd (3.0.2-1ubuntu2.14.04.1) ...
Processing triggers for man-db (2.6.7.1-1) ...

二、vsftpd.conf配置文件

配置选项说明

anonymous_enable=NO       # 关闭匿名登录
local_enable=YES                # 允许本地用户登录
write_enable=YES                # 启用可以修改文件的 FTP 命令
local_umask=022                  # 本地用户创建文件的 umask 值
dirmessage_enable=YES      # 当用户第一次进入新目录时显示提示消息
xferlog_enable=YES              # 一个存有详细的上传和下载信息的日志文件
connect_from_port_20=YES # 在服务器上针对 PORT 类型的连接使用端口 20(FTP 数据)
xferlog_std_format=YES        # 保持标准日志文件格式
listen=NO                               # 阻止 vsftpd 在独立模式下运行
listen_ipv6=YES                     # vsftpd 将监听 ipv6 而不是 IPv4,你可以根据你的网络情况设置
pam_service_name=vsftpd    # vsftpd 将使用的 PAM 验证设备的名字
userlist_enable=YES             # 允许 vsftpd 加载用户名字列表
tcp_wrappers=YES                # 打开 tcp 包装器
chroot_local_user=YES 	      # 选项chroot_local_user=YES 意味着本地用户将进入 chroot 环境,当登录以后默认情况下是其 home 目录。
allow_writeable_chroot=YES  # 默认情况下,出于安全原因,VSFTPD 不允许 chroot 目录具有可写权限。设置为YES为开启写权限。

参考资料:
ubuntu 下的ftp详细配置 - 何惜戈 - 博客园 https://www.cnblogs.com/hexige/p/7809481.html
树莓派FTP文件传输小记 - 兴国的博客 - CSDN博客 https://blog.csdn.net/cyzyfs/article/details/56489934

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值