第16章 文件服务

版权声明:本文为毕京钊原创文章,未经博主允许不得转载,使用请备注出处。 https://blog.csdn.net/bijingzhao123/article/details/79976201

一、FTP服务

1.作用:提供文件共享服务

2.FTP基础

FTP:文件传输协议

软件包:vsftpd

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

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

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

主目录:  “/var/ftp”   FTP程序默认分享的一个本机目录

3.FTP Server 默认配置(安装、启动、关防火墙)

#yum  -y  install  vsftpd  -----安装ftp服务

#touch   /var/ftp/abc.txt   ----在ftp的默认分享目录创建一个文件

#systenctl  start  vsftpd      ----开启ftp服务

#systemctl  enable  vsftpd  -----设置开机自启ftp服务

#systemctl  stop firewall   ----关闭防火墙

#setenforce   0   ----关闭linux下的防火墙(selinux 防火墙)

4.FTP  Clinet  配置

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

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


(1)LinuxFTP客户端程序1:  lftp(下载工具)

#yum  -y  install   lftp   -----安装lftp服务

#lftp   10.18.41.22    -----用默认ftp用户进入FTP服务器    (#lftp   bijz@10.18.41.22   ----用bjz这个用户登录FTP服务)

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 abc.txt
lftp zhufo.top:/> get abc.txt    ------下载txt文件

lftp zhufo.top:/> mirror pub   -------下载pub文件夹

(2)LinuxFTP客户端程序2:  wget(下载工具)

wget  ftp://10.18.41.22/abc.txt

wget  ftp://10.18.41.22/abc.txt  -P  /tmp   ----指定下载后的存放路径

wget  ftp://10.18.41.22/abc.txt  -O  /tmp/123.txt  ------指定下载后的存放路径并改名为123.txt

wget    -m    ftp://10.18.41.22/soft/abc.txt      ------指定下载目录

5.基本配置,实现访问控制

(1)#vim  /etc/vsftpd/vsftpd.conf

anonymous_enable=YES //是否允许匿名用户登录ftp
local_enable=YES            //是否允许本地用户登录alice
write_enable=YES           //是否允许写(全局)
local_umask=022           //控制本地用户上传文件的默认权限,umask表示666要减掉的权限,默认没有执行。


(2)chroot:

锁定本地用户HOME,用户进入FTP服务器后只能在自己的家目录中下载上传文件,而不能cd到其他目录

方法一: 部分用户chroot

#vim  /etc/vsftpd/vsftpd.con

在打开的文档中添加:

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list

#vim  /etc/vsftpd/chroot_list

bijz

#chmod -w   /home/bijz    //用户对家目录要减掉W权限。

或在/etc/vsftpd/vsftpd.con文档中添加

allow_writeable_chroot=YES

把bijz用户名加入到/etc/vsftpd/chroot_list中,bijz用户就被锁定在主目录中了


方法二:所有本地用户chroot,被限制在家目录中

chroot_local_user=YES
#chmod -w /home/alice  //用户对家目录要减掉W权限。

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目录

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

系统用户,默认既可以通过控制台登录系统。又可以通过网络(ftp)访问服务器。
为了安全起见,可以降低ftp用户权限。(只允许该用户zhao网络通过ftp访问服务器,不能通过控制台登录系统

#usermod  -s     /sbin/nologin   zhao 


6.通过FTP搭建YUM源服务器

(1)服务器设置

在服务器上挂载centos镜像

#yum  -y  install   vsftpd

#systemctl   start  vsftpd

#systemctl  stop  firewalld

#mkdir  /var/ftp/centos7

#mount  /dev/sr0   /var/ftp/centos7

#df -hT----查看挂载

注意:查看匿名用户的默认访问目录是否是默认的/var/ftp,

# vim   /etc/vsftpd/vsftpd.conf

anon_root=/var/ftp   ----默认不需要自己手动添加这一条

(2)在客户机上

#mv    /etc/yum.repos.d/*   /tmp  -----清空已存在的YUM源

#vim   /etc/yum.repos.d/centos7.repo

[my-centos7]

name=my-centos7

baseurl=ftp://服务器IP/centos7

gpgcheck=0

#yum repolist    ----查看可用的YUM 仓库


二、NFS服务

1.简介

NFS:Network File System 网络文件系统,Linux/Unix系统之间共享文件的一种协议

NFS 的客户端主要为Linux

支持多节点同时挂载以及并发写入

2.作用

提供文件共享服务

为集群中的 Web Server 配置后端存储

3.配置例题NFS

(1)配置环境

配置IP:

NAS服务器:10.18.41.22

web服务器1:10.18.41.100

web服务器2:10.18.41.100

web服务器3:10.18.41.100

全部关闭防火墙:

#systemctl  stop  firewalld

#systemctl  disable  firewalld

全部关闭内部防火墙

#setenforce  0  -----查看命令:getenforce

#vim  /etc/sysconfig/selinux

SELINUX=disabled

(2)nas(存储端配置)网络连接式存储(NAS:Network Attached Storage网络附加存储)

#yum   -y   install  nfs-utils     -----安装NFS服务需要的软件

#mkdir  /webdata     -----创建一个存储网站代码的文件夹

#echo  wangzhanceshi    >  /webdata/index.html  -----把代码重定向到新建的网页主页中

#vim   /etc/exports   ----NFS输出文件系统表

/webdata                       10.18.41.0/24(rw,sync,no_root_squash)    ----这个网段的可以收到这个分享的目录


 ##解释##

no_root_squash

//不压制root(当client端使用root挂载时,也有root权限)

//默认是压制root,及时你用root登录,也没有root权限,因为被压制,为了安全##


#systemctl  start  nfs-server

#systemctl  enable  nfs-server

#exportfs  -v   -----查看NFS输出的文件

/webdata 10.18.41.0/24(rw,wdelay,no_root_squash,no_subtree_check,sec=sys,rw,secure,no_root_squash,no_all_squash)

(3)web1 web2 web3 客户端配置

以web1为例:

#yum   -y  install  nfs-utils   httpd

#systemctl   start  httpd   nfs-utils

#systemctl   enable   httpd   nfs-utils


查询NFS服务器可用的目录

#showmount  -e  10.18.41.22   

Export list for 10.18.41.22:

/webdata 10.18.41..0/24


手动挂载 [可选]

[root@web1 ~]# mount   -t   nfs   10.18.41.22:/webdata     /var/www/html/

[root@web1 ~]# umount    /var/www/html/


自动挂载到网站主目录

[root@web1 ~]# vim   /etc/fstab
10.18.41.22:/webdata    /var/www/html    nfs    defaults  0   0

[root@web1 ~]# mount -a


查看挂载

#df  -hT


web2  和  web3操作同上 

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页