关于ftp服务器应该掌握的重点:
- 掌握vsftp服务器的配置方法
- 熟悉ftp客户端工具的使用
- 掌握常见的ftp服务器的故障排除
一:ftp连接方式:
控制连接:标准端口为21,用于放送ftp命令信息
数据连接:标准端口为20,用于上传,下载数据
数据连接的建立类型:
主动模式:服务器从20端口主动向客户端发起连接
被动模式:服务端在指定范围内的某个端口被动等待客户端发起连接(我们一般都是这个模式)
二:ftp传输模式
文本模式:ASCII模式,以文本序列传输数据
二进制模式:binary模式,以二进制序列传输数据
三:ftp用户的类型
匿名用户:anonymous或ftp
本地用户:账号名称,密码等信息保存在passwd,shadow文件中
虚拟用户:使用独立的账号密码数据文件
四:常见的ftp服务器程序
Iis,serv-u
Wu-ftpd,proftpd
Vsftpd(very secure ftp daemon) (我们最常用的)
五:常见的ftp客户端程序
ftp命令
cuteftp,flashfxp,leapftp,filezilla
gftp,kuftp
六:vsftpd软件的安装
一般我们是Linux上面是默认是有这个软件的,如果没有的话,用光驱挂载到我们的虚拟机上面
1.(通过上传安装)放到我们root用户下,然后rmp -ivh *.rmp 安装vsftpd应用
rmp -ivh *.rmp
我们的vshtpd文件是在/usr/sbin/目录下的
它是一个可执行的文件
执行它
./vsftpd
2.(在linux中通过yum安装)
yum -y install vsftpd ftp
可以通过删除vim /etc/vsftpd/vsftpd.conf
里面的内容来实现匿名用户可以操作
然后启动该服务
service vsftpd start
配置服务随系统启动
chkconfig vsftpd on
查看该进程
主配置文件地址:/etc/vsftpd/vsftpd.conf
七:在客户端对服务短进行ftp服务操作
匿名用户访问:
匿名用户在服务器的位置 cd /var/ftp/pub/
匿名用户默认情况下只能下载,不能上传
解决办法:
1, 可以通过修改,chown ftp pub/
这样子的话,匿名用户就可以操作pub这个文件夹了
2, 在配置文件中将 anon_upload_enable=YES 注释给消掉
3, 将 anon_mkdir_write_enable=YES的注释也给消掉
本地用户访问:
或者用cmd命令来本地用户连接ftp
客户端和服务端的上传和下载:
上传有bin和asc两种模式
mput可以上传多个文件,但是系统默认是交互模式,我们可以使用prompt命令取消交互模式
从服务端下载多个文件的话,可以用mget
和服务器断开连接用by或者是bye
八:其他
添加用户
useradd 用户名
passwd 密码
删除用户
userdel -r 用户名
如果要设置各个本地用户之间有着共享目录的话
vim /etc/vsftpd/vsftpd.conf
在末行加入local_root=/var/localftp
然后在var中新建这个localftp这个文件夹
mkdir /var/localftp
但是这样子只能下载,不能上传
为了要上传文件到共享目录里面,我们可以在localftp根目录下创建一个upload目录,
mkdir upload
然后对这个目录进行权限修改
我们首先本地用户添加组 groupadd localgroup
gpasswd -M 用户1,用户2 localgroup
然后将upload这个文件夹的权限给localgroup
chown :localgroup upload/
chmod g+w upload/
这样子的话,其他用户就不能上传文件,别的人只能读
在服务器中连接客户端的时候,可以下载客户端的配置文件,这是非常危险的,我们可以在
vim /etc/vsftpd/vsftpd.conf
里面加上 chroot_local_user = YES
这样子的话,客户端连接服务器的时候,就只能操作本目录以下的目录了。