##部署ftp文件共享服务##
##学习目标
ftp 服务器部署
ftp 服务器配置
##部署 ftp 服务器
ftp (文件传输协议 )是 internet 上仍常用的最老的网络协议之一,它为系统提供了通过网络与远程服务器进行传输的简单方法
在 red hat entreprise linux 6 中。 ftp 服务器包的名称为vsftpd ,它代表very secure file transferprotocol damon 服务器名称也叫做 vsftpd
默认配置文件让 anonymous 用户只能下载位于chroot 目录中的内容。/var/ftp/ 这意味着远程 ftp客户端能以用户 anonymous 或 ftp 身份连接到服务器(无需密码 ),并从 ftp 服务器上的 /var/ftp/ 目录下载文件(其本地 ftp 用户可以读取这些文件 )
##部署网络服务的四个步骤
安装服务软件
启动服务
启用服务
测试服务
##安装vsftpd包并启动服务
yum install vsftpd -y
systemctl start vsftpd
systemctl enable vsftpd
##启用vsftpd服务
applications-->sundry-->firewall
##测试服务
cd /var/ftp/pub/
touch file{1..3}
lftp 172.25.0.10
lftp 172.25.0.10:~> ls
drwxr-xr-x 2 0 0 42 nov 20 07:19 pub
lftp 172.25.0.10:/> cd pub/
lftp 172.25.0.10:/pub> ls
-rw-r--r-- 1 0 0 0 nov 20 07:19 file1
-rw-r--r-- 1 0 0 0 nov 20 07:19 file2
-rw-r--r-- 1 0 0 0 nov 20 07:19 file3
##ftp 服务器配置
默认配置为匿名 ftp 服务器 ,仅允许匿名客户端 下载 ,并且禁用所有本地用户 ,禁止上传
vsftpd 配置件: /etc/vsftpd/vsftpd.conf ,document root 位于 /var/ftp/ 中 ,配置修改后,需重新启动服务
选项示例:
– anonymous_enable=yes
– local_enable=no
– write_enable=no
##vsftpd 服务配置
1.什么是ftp
ftp (文件传输协议 )是 internet 上仍常用的最老的网络协议之一,它为系统提供了通过网络与远程服务器进行传输的简单方法
在 red hat entreprise linux 6 中。 ftp 服务器包的名称为vsftpd ,它代表very secure file transferprotocol damon 服务器名称也叫做 vsftpd
默认配置文件让 anonymous 用户只能下载位于chroot 目录中的内容。/var/ftp/ 这意味着远程 ftp客户端能以用户 anonymous 或 ftp 身份连接到服务器(无需密码 ),并从 ftp 服务器上的 /var/ftp/ 目录下载文件(其本地 ftp 用户可以读取这些文件 )
2.安装ftp
yum install vsftpd -y
systemctl start firewalld ##开启防火墙
systemctl enable vsftpd ##开启ftp服务
setenforce 0
lftp ip##能登陆并且显示,表示安装成功
##命令:vim /etc/sysconfig/selinux ##修改配置文件
## selinux=disabled ##修改内容
## reboot ##重启系统
##命令:getenforce ##查看状态
##命令:vim /etc/yum.reppos.d/rhel_dvd.repo ##yum源共享
##命令:yum install vsftpd.x86_64 -y ##安装ftp
##命令:systemctl start vsftpd ##开启ftp服务
##命令:firewall-cmd --list-all ##列出防火墙允许服务
##命令:firewall-cmd --permanent --add-service=ftp ##添加防火墙允许服务
##命令:firewall-cmd --reload ##重新加载服务
3.vsftpd文件信息
/var/ftp ##默认发布目录
/etc/vsftpd ##配置目录
4.vsftpd服务的配置参数
命令:vim /etc/vsftpd/vsftpd.conf ##修改配置文件
命令:systemctl restart vsftpd.service ## 重启服务
1)匿名用户设定
anonymous_enable=yes|no ##匿名用户登陆限制
#<匿名用户上传>
vim /etc/vsftpd/vsftpd.conf
write_enable=yes
anon_upload_enable=yes
chgrp ftp /var/ftp/pub
chmod 775 /var/ftp/pub
#<匿名用户家目录修改>
anon_root=/direcotry
#<匿名用户上传文件默认权限修改>
anon_umask=xxx
#<匿名用户建立目录>
anon_mkdir_write_enable=yes|no
#<匿名用户下载>
anon_world_readable_only=yes|no ##设定参数值为no表示匿名用户可以下载
#<匿名用户删除>
anon_other_write_enable=yes|no
#<匿名用户使用的用户身份修改>
chown_uploads=yes
chown_username=student
#<最大上传速率>
anon_max_rate=102400 ##最大传输速度100m/s
#<最大链接数>
max_clients=2 ##最大连接数为2
2)本地用户设定
local_enable=yes|no ##本地用户登陆限制
write_enable=yes|no ##本地用户写权限限制
#<本地用户家目录修改>
local_root=/directory
#<本地用户上传文件权限>
local_umask=xxx
#<限制本地用户浏览/目录>
所有用户被锁定到自己的家目录中
chroot_local_user=yes
chmod u-w /home/*
用户黑名单建立
chroot_local_user=no
chroot_list_enable=yes
chroot_list_file=/etc/vsftpd/chroot_list
##命令:vim /etc/vsftpd/chroot_list ##名单表
用户白名单建立
#<限制本地用户登陆>
vim /etc/vsftpd/ftpusers ##用户黑名单
vim /etc/vsftpd/user_list ##用户临时黑名单
用户白名单设定
userlist_deny=no
/etc/vsftpd/user_list ##参数设定,此文件变成用户白名单,只在名单中出现的用户可以登陆ftp
#<ftp虚拟用户的设定>
创建虚拟帐号身份)
vim /etc/vsftpd/loginusers ##文件名称任意
ftpuser1
123
ftpuser2
ftpuser3
db_load -t -t hash -f /etc/vsftpd/loginusers loginusers.db
vim /etc/pam.d/ckvsftpd ##文件名称任意
account required pam_userdb.so db=/etc/vsftpd/loginusers
auth required pam_userdb.so db=/etc/vsftpd/loginusers
pam_service_name=ckvsftpd
guest_enable=yes
虚拟帐号身份指定)
guest_username=ftpuser
chmod u-w /home/ftpuser
虚拟帐号家目录独立设定)
local_root=/ftpuserhome/$user
user_sub_token=$user
mkdir /ftpuserhome
chgrp ftpuser /ftpuserhome
chmod g+s /ftpuserhome
mkdir /ftpuserhome/ftpuser{1..3}
虚拟帐号配置独立)
vim /etc/vsftpd/vsftpd.conf ##虚拟帐号配置独立
user_config_dir=/etc/vsftpd/userconf
mkdir -p /etc/vsftpd/userconf ##创建配置目录
vim /etc/vsftpd/userconf/ftpuser1 ##创建配置文件
**配置文件内容
测试
在此文件中设定配置文件中的所有参数,此文件的优先级搞