当咱们修改nfs的配置文件exports后,须要从新启动nfs服务才能让配置文件生效。可是不少状况下nfs的客户端还挂载着服务端的共享目录,若是重启就会影响客户端的使用。linux
若是把客户端卸载,再修改配置文件,再重启nfs,客户端再从新挂载,客户端不少的状况下,这样操做会很繁琐。vim
咱们可使用exportfs命令,能够不用卸载客户端和nfs服务不中止的状况下,重载配置文件。centos
//exportfs命令经常使用选项 -a:表示所有挂载或者所有卸载 -r:表示从新挂载 -u:表示卸载某一个目录 -v:表示显示共享目录
在服务端上修改配置文件:安全
vim /etc/exports /tmp/ 192.168.87.130(rw,sync,no_root_squash) //加入这一行配置,增长共享目录/tmp/
执行exportfs命令:从新加载配置文件服务器
exportfs -arv //从新加载服务
在客户端查看共享目录:session
showmount -e 192.168.87.128
最后把新增的共享目录,在客户端上挂载就能够了:dom
mount -t nfs -o 192.168.87.128:/tmp /mnt/ //-t挂载类型,-o nolock不加锁
NFS4一般有这个问题:客户端挂载共享目录后,无论是root用户仍是系统普通用户,在共享目录里建立目录和文件时的主和组都是nobody测试
解决方案1:客户端挂载目录时,加上-o和nfsvers=3centos7
mount -t nfs -o remount,nfsvers=3 192.168.87.128:/tmp/ /mnt/
解决方案2:修改服务端和客户端的配置文件:code
vim /etc/idmapd.conf #Domain = local.domain.edu 改成 Domain = xxx.com //xxx.com 随意定义 而后再重启rpcidmapd服务
FTP是File Transfer Protocol(文件传输协议,简称文传协议)的英文简称,用于在Internet上控制文件的双向传输。FTP的主要做用就是让用户链接一个远程计算机(这些计算机上运行着FTP服务器程序),并查看远程计算机中的文件,而后把文件从远程计算机复制到本地计算机,或把本地计算机的文件传送到远程计算机。小公司用的多,大企业不用FTP,由于不安全。
用rz和sz传文件,文件大小超过4G就会出现问题。
安装vsftpd:
yum install -y vsftpd
vsftpd支持用linux系统用户登陆,可是这样很不安全,容易暴露系统用户和密码。
咱们建立虚拟用户,并映射到系统普通用户来使用vsftpd:
useradd -s /sbin/nologin virftp //建立系统普通用户 vim /etc/vsftpd/vsftpd_login //建立虚拟用户和密码的文件,奇数行为用户名,偶数行为密码,多个用户就写多行 user1 123456 user2 888888 chmod 600 /etc/vsftpd/vsftpd_login //改权限
将文本的密码文件装换成二进制的密码文件:增长安全性
db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db
建立虚拟用户的目录和配置文件:
mkdir /etc/vsftpd/vsftpd_user_conf cd /etc/vsftpd/vsftpd_user_conf vim user1 ##配置文件内容 local_root=/home/virftp/user1 //为虚拟用户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 //最大客户端数
建立虚拟用户testuser1的家目录:
mkdir /home/virftp/user1
建立一个测试文件
touch /home/virftp/user1/abc.txt
修改/home/virftp/的主和组:
chown -R virftp:virftp /home/virftp //改家目录的主和组为virftp
定义认证的文件/etc/pam.d/vsftpd:
vim /etc/pam.d/vsftpd //添加下列内容,在最前面加上 auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login ##密码文件,centos7为64位系统,因此库文件路径为/lib64/security/pam_userdb.so,32位系统为:/lib/security/pam_userdb.so 这个文件必定要存在且写对,否则虚拟用户登陆ftp服务时会认证失败
修改全局配置文件/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
启动服务
systemctl start vsftpd
测试: 能够在window下安装一个客户端软件:filezilla client