6月22日任务

14.4 exportfs命令
14.5 NFS客户端问题
15.1 FTP介绍
15.2/15.3 使用vsftpd搭建ftp

14.4 exportfs命令

当我们修改nfs的配置文件exports后,需要重新启动nfs服务才能让配置文件生效。但是很多情况下nfs的客户端还挂载着服务端的共享目录,如果重启就会影响客户端的使用。

如果把客户端卸载,再修改配置文件,再重启nfs,客户端再重新挂载,客户端很多的情况下,这样操作会很繁琐。

我们可以使用exportfs命令,可以不用卸载客户端和nfs服务不停止的情况下,重载配置文件。

在服务端操作,vi修改配置文件/etc/exports

[root@jimmylinux- ~]# vi /etc/exports

增加一行内容
/tmp 192.168.52.129(rw,sync,no_root_squash)
[root@jimmylinux- ~]# exportfs -arv
exporting 192.168.52.129:/tmp
exporting 192.168.52.0/:/home/nfstestdir

客户端执行showmount,并没有重启nfs,同样也可以看到服务端共享的目录。

[root@jimmylinux- ~]# showmount -e 192.168.52.128
Export list for 192.168.52.128:
/home/nfstestdir 192.168.52.0/
/tmp 192.168.52.129

客户端挂载tmp,这里看到的内容其实就是服务端tmp下面的内容。

服务端的tmp目录内容

另外,在客户端新建一个123.txt文件,查看到的文件属性和在服务端看到是一样的。

所有者和所属组都是root,这是因为在配置文件/etc/exports中加了no_root_squash(root用户不受约束)

14.5 NFS客户端问题

NFS4版本才会有这个问题,尤其是CentOS 6:客户端挂载共享目录后,不管是root用户还是系统普通用户,在共享目录里创建目录和文件时的属主和属组都是nobody。

遇到这样的问题有2种解决方案:

方案1、客户端挂载时加上 -o nfsvers=3 也就是说指定nfs版本为3,不在是nfs版本4。

[root@jimmylinux- ~]# mount -t nfs -o remount,nfsvers= 192.168.52.128:/tmp/ /mnt/  -o重新挂载并指定nfs版本等于3

方案2、修改服务端和客户端的配置文件

vim /etc/idmapd.conf
把“#Domain = local.domain.edu” 改为 “Domain = xxx.com” (这里的xxx.com 可以自定义),然后再重启rpcidmapd服务。

15.1 FTP介绍

FTP是File Transfer Protocol(文件传输协议,简称文传协议)的英文简称,用于在Internet上控制文件的双向传输。FTP的主要作用就是让用户连接一个远程计算机(这些计算机上运行着FTP服务器程序),并查看远程计算机中的文件,然后把文件从远程计算机复制到本地计算机,或把本地计算机的文件传送到远程计算机。小公司用的多,大企业不用FTP,因为不安全。

用rz和sz传文件,文件大小超过4G就会出现问题。

15.2/15.3 使用vsftpd搭建ftp

安装vsftpd

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

vsftpd支持用linux系统用户登录,但是这样很不安全,容易暴露系统用户和密码。

创建一个普通用户,目的是为了让虚拟用户来做一个映射。

[root@jimmylinux- ~]# useradd -s /sbin/nologin virftp    
-s用来指定它的shell,/sbin/nologin 表示一个用户不能够登录系统,这样做的目的是为了更安全。

创建虚拟用户的密码文件

[root@jimmylinux- ~]# vim /etc/vsftpd/vsftpd_login

添加以下内容,奇数行为用户名,偶数行为密码,多个用户就写多行。
testuser1
jimmylinux
user1
aaaaa11111

设置权限

[root@jimmylinux- ~]# chmod  /etc/vsftpd/vsftpd_login

把文本的密码文件转换成计算机能够识别的二进制的文件

[root@jimmylinux- ~]# db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db

创建虚拟用户配置文件所在的目录

[root@jimmylinux- ~]# mkdir /etc/vsftpd/vsftpd_user_conf

[root@jimmylinux- ~]# cd !$
cd /etc/vsftpd/vsftpd_user_conf

[root@jimmylinux- vsftpd_user_conf]# vim testuser1 添加以下内容
local_root=/home/virftp/testuser1 定义虚拟用户的家目录
anonymous_enable=NO 是否允许匿名用户
write_enable=YES 是否可行
local_umask=022 umask的值
anon_upload_enable=NO 是否允许匿名用户可以上传
anon_mkdir_write_enable=NO 是否允许匿名用户可写,并创建目录。
idle_session_timeout=600 空闲连接超时时间,超过后需要重新登录
data_connection_timeout=120 数据传输的超时时间
max_clients=10 最大的客户端数量

创建虚拟用户的家目录

[root@jimmylinux- vsftpd_user_conf]# mkdir /home/virftp/testuser1

创建一个测试文件

[root@jimmylinux- vsftpd_user_conf]# touch /home/virftp/testuser1/jimmy.txt

修改权限,因为最终要映射成virftp用户,所以如果这个用户没有读的权限,就没有办法正常上传和下载。

[root@jimmylinux- vsftpd_user_conf]# chown -R virftp:virftp /home/virftp

定义密码文件存放路径

修改主配置文件 vim /etc/vsftpd/vsftpd.conf

[root@jimmylinux- vsftpd_user_conf]# vim /etc/vsftpd/vsftpd.conf

将anonymous_enable=YES 改为 anonymous_enable=NO

将#anon_upload_enable=YES 改为 anon_upload_enable=NO
将#anon_mkdir_write_enable=YES 改为 anon_mkdir_write_enable=NO

再增加如下内容
chroot_local_user=YES
guest_enable=YES                                             是否允许虚拟用户映射
guest_username=virftp                                       这个就是虚拟用户映射到的系统用户virftp
virtual_use_local_privs=YES                              告诉这个服务现在使用的是虚拟用户
user_config_dir=/etc/vsftpd/vsftpd_user_conf    定义虚拟用户配置文件所在路径
allow_writeable_chroot=YES

启动服务

查看监听的端口

21端口-->ftp

22端口-->sshd

23端口-->Telnet

服务启动完成后,下面就来测试一下。

如果使用Windows客户端测试,推荐大家使用filezilla 一款开源的免费软件,可以搭建服务(服务端),同样也有客户端版本。

为了测试方便,我们可以在Linux里面使用lftp。

安装lftp

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

登录ftp

使用?可以查看所有支持的命令

在xshell中也有2种方法可以实现和ftp类似的功能:

方法一、在xshell中新建会话,协议写SFTP

方法二、下载一个xftp插件,在xshell中使用快捷键Ctrl+Alt+F,下载安装好就可以使用了。

exportfs命令、NFS客户端问题、FTP介绍、使用vsftpd搭建ftp的更多相关文章

  1. exportfs命令 NFS客户端问题 FTP介绍 使用vsftpd搭建ftp

    exportfs命令 • 常用选项 • -a 全部挂载或者全部卸载 • -r 重新挂载 • -u 卸载某一个目录 • -v 显示共享目录 • 以下操作在服务端上 • vim /etc/exports ...

  2. Linux centosVMware NFS exportfs命令、NFS客户端问题、FTP介绍、使用vsftpd搭建ftp

    一.exportfs命令 常用选项 -a 全部挂载或者全部卸载 -r 重新挂载 -u 卸载某一个目录 -v 显示共享目录 以下操作在服务端上 vim /etc/exports //增加 /tmp/ 1 ...

  3. FTP相关、用vsftpd搭建ftp、xshell使用xftp传输文件、使用pure-ftpd搭建ftp服务

    1.FTP相关(file transfer protocol,文件传输协议)   2.用vsftpd搭建ftp安装:yum install vsftpd -y创建一个虚拟用户:useradd  vft ...

  4. 在阿里云主机上基于CentOS用vsftpd搭建FTP服务器

    最近需要在一台阿里云的云服务器上搭建FTP服务器,在这篇博文中分享一下我们根据实际需求进行的一些配置. ftp软件用的是vsftpd. vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序 ...

  5. vsftpd搭建ftp服务,并实现虚拟用户访问

    安装vsftpd服务: yum install vsftpd -y [root@wadeson ~]# rpm -ql vsftpd /etc/logrotate.d/vsftpd /etc/pam. ...

  6. 使用vsftpd 搭建ftp服务

    ftp 基础服务器基础知识 ftp有三种登录方式.匿名登录(所有用户).本地用户.虚拟用户(guest). FTP工作模式 主动模式:服务端从20端口主动向客户端发起链接. 控制端口21:数据传输端口 ...

  7. linux系统Vsftpd搭建FTP

    安装vsftp 使用yum命令安装vsftp #yum install vsftpd -y 添加ftp帐号和目录 先检查下nologin的位置,通常在/usr/sbin/nologin下   (*no ...

  8. Linux下基于vsftpd搭建ftp服务器

    1.先用检查是否已经安装rpm -qa| grep vsftpd2.然后再进行在线安装vsftpd这个服务yum install vsftpd -y3.修改vi /etc/vsftpd/vsftpd. ...

  9. ubuntu VSFTPD搭建FTP服务器 提示530错误

    配置完 vsftpd ,发现不能登录,提示 530 错误.解决方法如下: sudo rm /etc/pam.d/vsftpd 注:因为 ubuntu 启用了 PAM,所在用到 vsftp 时需要用到 ...

随机推荐

  1. noip模拟9 达哥随单题

    T1.随 看题第一眼,就瞄到最下面 孙金宁教你学数学  ?????原根?目测神题,果断跳过. 最后打了个快速幂,愉快的收到了达哥送来的10分. 实际上这题暴力不难想,看到一个非常小的mod应该就能想到 ...

  2. [AspNetCore 3.0 ] Blazor 服务端组件 Render, RenderFragment ,RenderTreeBuilder, CascadingValue/CascadingParameter 等等

    一.组件 支撑Blazor的是微软的两大成熟技术,Razor模板和SignalR,两者的交汇点就是组件.通常,我们从ComponentBase派生的类型,或者创建的.razor 文件,就可以称作组件. ...

  3. 大数据之路week01--自学之集合_1(Collection)

    经过我个人的调查,发现,在今后的大数据道路上,集合.线程.网络编程变得尤为重要,为什么? 因为大数据大数据,我们必然要对数据进行处理,而这些数据往往是以集合形式存放,掌握对集合的操作非常重要. 在学习 ...

  4. Hibernate一对多、多对一的关系表达

    一.关系表达: 1.一对多.多对一表的关系: 学生表: 班级表: 在学生表中,学生的学号是主键.在班级表中,班级号是主键,因此,学生表的外键是classno.因此,班级对应学生是一对多,学生对应班级是 ...

  5. 2019年10月13日 计算机英语习题 wangqingchao

    Match the explanations in Column B with words and expressions in Columna. (搭配每组中意义相同的词或短语) Types of ...

  6. html5 svg实现不规则形状图片触发事件

    html5 svg实现不规则形状图片触发事件<pre><!DOCTYPE html><html lang="en"> <head> ...

  7. 008.Kubernetes二进制部署Nginx实现高可用

    一 Nginx代理实现kube-apiserver高可用 1.1 Nginx实现高可用 基于 nginx 代理的 kube-apiserver 高可用方案. 控制节点的 kube-controller ...

  8. pssh系列工具

    一.pssh简介及安装 首先我们来了解下什么是pssh,它是干嘛用的?pssh是一个python编写可以在多台服务器上执行命令的工具,也可以实现文件复制.换而言之就是一个批量管理多台服务器的一个小工具 ...

  9. WordPress代码高亮插件SyntaxHighlighter终极使用详解

    子曰: 工欲善其事,必先利其器.作为码农一枚,再加上站长这个已经不再光鲜的称呼,岂能没有一款经济实用.操作简单.而且功能必须强大.样式也必须好看的Wordpress代码高亮插件?!作为一个视代码如生命 ...

  10. 红帽7.4(RHCE7.4)磁盘扩容详细步骤

    参照博文VMware虚拟机CentOS 7 磁盘扩容:https://www.linuxidc.com/Linux/2019-04/158346.htm 01.虚拟机扩容磁盘.如下图 02.使用roo ...