文件服务笔记

319 阅读4分钟

FTP

FTP(File Transfer Protocol,文件传输协议)是TCP/IP协议组中的应用层协议之一。

用于提供文件共享服务。在互联网上大多数的媒体资源和软件资源就是通过FTP服务器传递。

FTP提供了两个端口,分别是控制端口21,和数据端口20。

FTP Server的默认配置

我们可以利用FTP将一台服务器改造成文件服务器,为其他用户提供下载服务。设置方法如下:

  1. 安装vsftp:yum install -y vsftpd
  2. 启动服务:systemctl start vsftpd systemctl enable vsftpd(设置开机启动)
  3. 准备分发的文件:分发的文件必须放在/var/ftp/这个目录下,才能被其他用户共享
  4. 关闭防火墙:systemctl stop firewalldsystemctl disable firewalld(设置开机关闭)
  5. 关闭SELinux
    • setenforce 0(暂时关闭SELinux)
    • vim /etc/selinux/config将配置文件中的开机启动修改为关闭。SELINUX=disabled

从FTP Server下载文件

通过FTP,同一局域网中的主机,可以从文件服务器上下载资料。

如果将FTP安装在云服务器上,该云服务器便可为所有的用户提供下载服务。

FTP的使用方法如下:

  1. 利用浏览器下载:在浏览器中输入ftp://文件服务器的ip地址即可下载

  2. 利用软件lftp下载:

    • 先安装lftp:yum install -y lftp
    • 访问服务器:lftp 文件服务器ip地址
    • 查看内容:lfftp localhost:~>ls
    • 下载文件:lftp localhost:~>get 文件名
    • 下载目录:`lftp localhost:~>mirror 目录名

    默认会将文件下载到登录lftp的目录里。

  3. 利用wget下载

    • 下载:wget ftp://文件服务器ip/文件名 [选项]

      选项:-O 路径,用于指定下载文件的保存位置

      -m ,用于下载目录

    默认将文件下载到当前目录

上传文件到FTP Server

  1. 编辑FTP Server配置文件

    /etc/vsftpd/vsftpd.conf,用于设定FTP Server的功能开启或关闭

  2. 检测禁用匿名账号登录是否启动

    anonymous_enable=YES,如果该功能启动,则表示登录FTP Server的时候,不需要验证用户身份。如果关闭该功能,则必须通过用户身份验证,且为FTP Server上的注册用户才可以登录。登录后,默认进入该用户的家目录。

  3. 配置上传指令

    anon_upload_enable=YES,表示允许上传文件

    anon_mkdir_write_enable=YES,表示允许创建目录

  4. 创建上传目录

    必须将文件上传指定目录下,不能直接上传到ftp目录下。

    mkdir /var/ftp/upload

    chmod 777 /var/ftp/upload,修改上传目录权限

  5. 重启vsftp

    systemctl restart vsftpd,重启该程序,将数据读入内存

  6. 进行客户端测试

    利用lftp登录FTP Server:lftp 文件服务器ip

    进入到上传目录:lftp localhost:~>cd upload/

    上传文件:lftp localhost:~>put 文件

NFS

NFS(Network File System),网络文件系统,是Linux系统之间共享文件的一种协议。支持多个结点同时挂载以及并发写入。

NFS可以提供了文件分享服务,以及为Web服务器进行集中式的后端存储管理。

NFS 环境配置

准备两台互通的主机,一台作为NFS Server,一台作为Web客户端。并且关闭主机的防火墙与SELinux。

查询SELinux开启与否:getenforce

NAS(存储端配置)

  1. 安装NFS服务器

    安装NFS软件:yum install -y nfs-utils

    创建共享目录:mkdir /webdata,该目录可自己指定

    将共享文件放置到共享目录:echo "nfs test...">/webdata/index.html

  2. 配置NFS服务器

    修改NFS配置文件:vim /etc/exports

    写入如下信息:/webdata 192.168.142.0/24(rw)

    其中/webdata表示共享资源目录,192.168.0/24表示可以共享该目录的网段内的主机,(rw)表示主机对该目录所具有的权限,通常情况下配置为ro表示只读。

  3. 启动NFS服务器

    开启NFS:systemctl start nfs-server

    设置NFS开机启动:systemctl enable server

  4. 检查NFS输出是否正常:exportfs -v,正常输出应该显示共享目录与共享主机所处网段

客户端配置

  1. 安装NFS客户端

    安装:yum install -y nfs-utils

  2. 查看存储端共享

    查询NFS服务器可用目录:showmount -e NAS的ip地址

  3. 手动挂载

    挂载目录:mount -t nfs NAS的ip地址:/共享目录 /var/www/html

    /var/www/html是httpd对外提供服务的目录

  4. 查看挂载:df

  5. 测试效果

    利用web客户端访问web服务器,当在NAS中对网页文件做出修改,修改会同步到web服务器里。

SSH

远程登录服务,可以使用该服务对服务器进行远程管理。

安装SSH

查询是否安装SSH:rmp -qa | grep ssh

安装SSH:yum install -y openssh-server

使用SSH

  1. 启动服务:systemctl start sshd
  2. 查看ssh端口:netstat -antp | grep sshd
  3. 使用ssh登录服务器:ssh 用户名@服务器ip