云计算学习路线教程大纲课件:FTP Serve

重要指数2星

作用:提供文件共享服务

=======================================================

一、FTP基础

FTP: 文件传输协议

软件包: vsftpd

FTP端口: 控制端口 command 21/tcp

数据端口 data 20/tcp (主动模式)

配置文件: /etc/vsftpd/vsftpd.conf

二、vsftpd默认配置

FTP Server

==centos6==

[root@tianyun ~]# yum -y install vsftpd

[root@tianyun ~]# service vsftpd restart

[root@tianyun ~]# chkconfig vsftpd on

  1. SELinux

[root@tianyun ~]# sed -ri '/^SELINUX=/cSELINUX=disabled' /etc/selinux/config

[root@tianyun ~]# setenforce 0

  1. Iptables [暂关]

[root@tianyun ~]# iptables -F

[root@tianyun ~]# service iptables save

==centos7==

[root@iZwz9f17um10wphrf38ni8Z ~]# cat /etc/redhat-release

CentOS Linux release 7.2.1511 (Core)

[root@iZwz9f17um10wphrf38ni8Z ~]# yum -y install vsftpd

[root@iZwz9f17um10wphrf38ni8Z ~]# touch /var/ftp/yang.txt

[root@iZwz9f17um10wphrf38ni8Z ~]# systemctl start vsftpd

[root@iZwz9f17um10wphrf38ni8Z ~]# systemctl enable vsftpd

默认firewalld/SELinux已关闭,如果未关闭:

[root@aliyun ~]# firewall-cmd --permanent --add-service=ftp

[root@aliyun ~]# firewall-cmd --reload

[root@aliyun ~]# sed -ri '/^SELINUX=/cSELINUX=disabled' /etc/selinux/config

[root@aliyun ~]# setenforce 0

FTP默认共享目录:/var/ftp

FTP Clinet:

lftp

[root@tianyun ~]# yum -y install lftp

[root@tianyun ~]# lftp zhufo.top

lftp zhufo.top:~> ls

drwxr-xr-x 2 0 0 4096 Mar 31 2016 pub

-rw-r--r-- 1 0 0 0 Nov 22 03:53 yang.txt

lftp zhufo.top:/> get yang.txt

lftp zhufo.top:/> mirror pub

wget

[root@tianyun ~]# wget --help |less

[root@tianyun ~]# wget ftp://10.18.40.100/kvm-manager-centos

[root@tianyun ~]# wget ftp://10.18.40.100/kvm-manager-centos -P /tmp/

[root@tianyun ~]# wget ftp://10.18.40.100/kvm-manager-centos -O /tmp/a.sh

[root@tianyun ~]# wget //nginx.org/download/nginx-1.10.2.tar.gz

[root@tianyun ~]# wget -m ftp://zhufo.top/soft

curl

firefox,IE

[root@tianyun ~]# lftp [email protected]

Password:

lftp [email protected]:~> ls

-rw-r--r-- 1 0 0 1523 Nov 22 04:25 alice.txt

lftp [email protected]:~> pwd

ftp://[email protected]/%2Fhome/alice

lftp [email protected]:~> put /etc/hosts

默认使用匿名用户 ftp访问,HOME为/var/ftp,默认仅能下载文件

系统用户: alice,HOME /home/alice,默认可下载及上传

========================================================

三、基本配置,例如实现访问控制 [了解]

注意: 指令中的空格,指令错误,指令重复

[root@tianyun ~]# vim /etc/vsftpd/vsftpd.conf

anonymous_enable=YES //是否允许匿名用户登录ftp

local_enable=YES //是否允许本地用户登录alice

write_enable=YES //是否允许写(全局)

local_umask=022 //控制本地用户上传文件的默认权限,umask表示要减掉的权限

anon_umask=077 //控制匿名用户上传文件的默认权限

chroot: 锁定本地用户HOME

方法一:部分用户chroot

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list

方法二:所有本地用户chroot

chroot_local_user=YES

anon_max_rate=500000 //匿名用户限速

local_max_rate=80000 //本地用户限速

max_clients=500 //ftp最大连接数

max_per_ip=2 //单个IP最大连接数,线程数

local_root=/ftproot //指定本地用户访问的root目录

anon_root=/anonroot //指定匿名用户访问的root目录

案例1: 使用FTP共享YUM源

Server:

[root@yangs ~]# mkdir /var/ftp/{centos6u8,centos7u3}

[root@yangs ~]# mount -o loop /home/centos7u3.iso /var/ftp/centos7u3

[root@yangs ~]# echo “mount -o loop /home/centos7u3.iso /var/ftp/centos7u3” >> /etc/rc.local

[root@yangs ~]# chmod +x /etc/rc.d/rc.local

Client:

[root@tianyun ~]# vim /etc/yum.repos.d/centos7.repo

[centos7u3]

name=centos7u3

baseurl=ftp://10.18.40.100/centos7u3

gpgcheck=0