学习目标:
匿名用户的登录,添加用户的登录,虚拟用户的创建。
虚拟用户的创建:
1.安装:yum -y install vsftpd 服务端
yum -y install ftp 客户端
yum -y install db4 db4_utils 虚拟用户认证的db文件
2.文件配置的修改:cat /etc/vsftpd/vsftpd.conf > test
vi vsftpd.conf 进行修改
最后添加:guest_enable=YES //设定启用虚拟用户功能
guest_username=vuser //指定虚拟用户的宿主用户,CentOS中已经有内置的vuser用户了(3.刚创建的) user_config_dir=/etc/vsftpd/vuser_conf //设定虚拟用户个人vsftp的CentOS FTP服务文
件存放路径。存放虚拟用户个性的CentOS FTP服务文件(配置文件名=虚拟用户名
3.创建用户: useradd -d /var/ftproot -s /sbin/nologin vuser(用户名)
4.创建虚拟用户密码文本:vi /etc/vsftpd/vuser.list 输入虚拟用户名和密码
5.用db文件进行验证:
db_load -T -t hash -f /etc/vsftpd/vuser.list /etc/vsftpd/vuser.db
随后,编辑认证文件/etc/pam.d/vsftpd,全部注释掉原来语句,再增加以下两句:
vi /etc/pam.d/vsftpd
auth required pam_userdb.so db=/etc/vsftpd/vuser account required pam_userdb.so db=/etc/vsftpd/vuser
6.在vsftpd下创建目录:mkdir vuser_conf
touch vuser_conf/tom vuser_conf/jack
对jack和tom进行编辑:vi vuser—conf/tom
编辑内容 :local_root=/var/tom
编辑内容 :virtual_use_local_privs=YES
vi vuser_conf/jack
7.创建虚拟用户的权限:mkdir -m 700 /var/tom
8.创建虚拟用户的所属用户和组
chown -R vuser:vuser /var/jack
9. 设置: setenforce 0
echo $?
10.关闭防火墙:service iptables stop
查询状态:service iptables status
最后:重启vsftpd service vsftpd restart
如何在命令行中使用 ftp 命令上传和下载文件
步骤 1: 建立 FTP 连接
想要连接 FTP 服务器,在命令上中先输入ftp
然后空格跟上 FTP 服务器的域名 'domain.com' 或者 IP 地址
例如:
ftp domain.com
ftp 192.168.0.1
ftp user@ftpdomain.com
注意: 本例中使用匿名服务器。
替换下面例子中 IP 或域名为你的服务器地址
步骤 2: 使用用户名密码登录
绝大多数的 FTP 服务器是使用密码保护的,因此这些 FTP 服务器会询问'username'和'password'.
如果你连接到被称作匿名 FTP 服务器(LCTT 译注:即,并不需要你有真实的用户信息即可使用的 FTP 服务器称之为匿名 FTP 服务器),可以尝试anonymous
作为用户名以及使用空密码:
Name: anonymous
Password:
之后,终端会返回如下的信息:
230Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>
登录成功
步骤 3: 目录操作
FTP 命令可以列出、移动和创建文件夹,如同我们在本地使用我们的电脑一样。ls
可以打印目录列表,cd
可以改变目录,mkdir
可以创建文件夹。
使用安全设置列出目录
ftp>ls
服务器将返回:
200 PORT command successful.Considerusing PASV.
150Here comes the directory listing.
directory list
....
....
226Directory send OK.
打印目录
改变目录:
改变目录可以输入:
ftp>cd directory
服务器将会返回:
250Directory succesfully changed.
FTP中改变目录
步骤 4: 使用 FTP 下载文件
A:ftp ip地址(连接谁的地址就可以下载谁的文件),文件所在位置cd /var/ftp目录下,重启服务,关闭防火墙。
B:进入ftp客户端,就可以下载文件,所以本机ftp即是服务端又是客户端。
在下载一个文件之前,我们首先需要使用lcd
命令设定本地接受目录位置。
lcd /home/user/yourdirectoryname
如果你不指定下载目录,文件将会下载到你登录 FTP 时候的工作目录。
现在,我们可以使用命令 get 来下载文件,比如:
getfile
文件会保存在使用lcd命令设置的目录位置。
服务器返回消息:
local:file remote:file
200 PORT command successful.Considerusing PASV.
150Opening BINARY mode data connection forfile(xxx bytes).
226File send OK.
XXX bytes received in x.xx secs (x.xxx MB/s).
使用FTP下载文件
下载多个文件可以使用通配符及 mget
命令。例如,下面这个例子我打算下载所有以 .xls 结尾的文件。
mget *.xls
步骤 5: 使用 FTP 上传文件
完成 FTP 连接后,FTP 同样可以上传文件
使用 put
命令上传文件:
put file
当文件不再当前本地目录下的时候,可以使用绝对路径:
put /path/file
同样,可以上传多个文件:
mput *.xls
步骤 6: 关闭 FTP 连接
完成FTP工作后,为了安全起见需要关闭连接。有三个命令可以关闭连接:
bye
exit
quit
任意一个命令可以断开FTP服务器连接并返回:
221Goodbye
需要更多帮助,在使用 ftp 命令连接到服务器后,可以使用help
获得更多帮助。