1. FTP使用步骤:
(1)在浏览器上直接访问
如访问IP地址是192.168.1.0,直接在浏览器中输入: ftp://192.168.1.0
要求输入用户名和密码,
如用户名为:uftp,密码为:123456
然后就可以访问
(2)批量下载文件
下载安装filezilla即可,一款开源的FTP客户端软件
sudo apt-get install filezilla
或者使用如下命令:
wget -nH -m --ftp-user=your_username --ftp-password=your_password ftp://your_ftp_host/*
如:要下载ftp://192.168.1.0中的Data1文件夹,可使用如下命令:
wget -nH -m --ftp-user=uftp --ftp-password=123456 ftp://192.168.1.0/Data1
文件夹会下载在终端当前所处的位置
------------------------------------------------------------------------
2. 创建FTP:
(1)安装VSFTPD
sudo apt-get install vsftpd
(2)配置 /etc/vsftpd.conf文件 ( 参考了博客:https://www.cnblogs.com/hexige/p/7809481.html)
打开 vsftpd 配置文件:
sudo vi /etc/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 包装器
需要设置允许登录ftp的用户:
userlist_file=/etc/vsftpd.userlist # 存储用户名字的列表
userlist_deny=NO
基于用户列表文件/etc/vsftpd.userlist 来允许或拒绝用户访问 FTP,创建vsftpd.userlist:
sudo vi /etc/vsftpd.userlist
里面写上想要允许登录的userlist
注意,在默认情况下,如果通过userlist_enable=YES 启用了用户列表,且设置userlist_deny=YES 时,那么,用户列表文件/etc/vsftpd.userlist 中的用户是不能登录访问的。但是,选项userlist_deny=NO 则反转了默认设置,这种情况下只有用户名被明确列出在/etc/vsftpd.userlist 中的用户才允许登录到 FTP 服务器。
重要的是,当用户登录 FTP 服务器以后,他们将进入 chrooted 环境,即当在 FTP 会话时,其 root 目录将是其 home 目录。
接下来,我们来看一看两种可能的途径来设置 chrooted(本地 root)目录,正如下面所展示的。
这时,让我们添加/修改/取消这两个选项来将 FTP 用户限制在其 home 目录
chroot_local_user=YES allow_writeable_chroot=YES
如果不做上面设置,用户能够访问根目录下的文件
(3)创建用户
sudo useradd -d /home/uftp -s /bin/bash uftp (用户名为:uftp)
设置密码:
sudo passwd uftp
123456(如设置密码为:123456)
sudo mkdir /home/uftp
然后将目录/home/uftp的所属者和所属组都改为uftp:
sudo chown uftp:uftp /home/uftp
(4)重启ftp
sudo restart vsftpd
或者:sudo service vsftpd restart
(5)测试能否使用
在/home/uftp中存入一些东西 (用sudo cp命令)
ifconfig查看本机ip地址
然后在浏览器中输入ftp://ip地址,输入用户名为uftp,密码为123456,看一下刚刚放在/home/uftp中的文件是否能被访问
注意:浏览器中点一下“返回上一层文件夹”试试,正常情况下是不能返回的,否则配置可能有问题。
-----------------------------------------------------------------------------
3. 挂载文件/文件夹到ftp:
(从而无需move 文件到 ftp 的文件夹)
如要共享/home/a/1_2/下的文件,使用如下命令进行挂载:
sudo mount --bind /home/a/1_2/ /home/uftp/
共享完后,取消挂载:
sudo umount /home/uftp
-----------------------------------------------------------------------------
4. 挂载ftp到本地:
(1)安装curlftpfs
sudo apt-get install curlftpfs
(2)挂载ftp上的目录使用方法
sudo curlftpfs -o allow_other ftpuser:ftppsw@ftp服务器域名或ip/某个目录 ~/ftpfiles/
ftpuser是ftp服务器的用户名,后面接密码。如果ftp没有密码就直接挂过来。某个目录后面有一个空格,ftpfiles是当前用户的家目录里建立的目录,这是本地目录
比如,
sudo curlftpfs -o allow_other uftp:123456@192.168.1.0 ~/ftpdir (要在用户目录下创建一下ftpdir文件夹)
(3)卸载很简单,就好似卸载其他挂载设备一样
sudo umount -l ~/ftpdir