命令exportfs
配置了共享的目录后,过一段时间可能要更改共享目录,或要增加机器,这是需要更改配置文件,然后重启服务,重启前我们要把所有机器挂载的目录卸载,如果不这样做的话就会导致服务异常,但是这样会很麻烦,使用exportfs命令挂载不需要重启服务。
常用的选项
-a 全部挂载或卸载
-r 表示重新挂载
-u 表示卸载一个目录
-v 表示显示共享目录
操作
首先在服务端a机器上/etc/exports文件里增加一行
/tmp/ 192.168.42.129(rw,sync,no_root_squash)
然后在服务端a机器上执行命令
exportfs -arv
再去客户端用showmount查看
NFS客户端问题
NFS 4 版本会出现一些问题,客户端挂载共享目录后,不管是root用户还是普通用户,创建新的文件时属主、属组为nobody。
解决办法
1、在客户端上重新挂载,使用NFS 3版本
mount -t nfs -oremount,nfsvers=3 192.168.42.129:/tmp/ /mnt/
2.在客户端和服务端里把文件/etc/idmapd.conf 里面的 "#Domain = local.domain.edu" 更改为“Domain = xxx.com” ,这里的xxx.com可以随意定义,然后重新启动rpcidmapd服务。
FTP介绍
FTP是File Transfer Protocol的英文简写,意思是文件传输协议,用于在英特网上控制文件的双向传输,它是一个应用程序,用户可以通过它把自己的pc及与世界各地所有运形FTP协议的服务器连接,来访问服务器上的大量程序和信息。
FTP的主要作用是让用户连接一个远程计算机,这个远程计算机上要运行着FTP服务器程序,并且查看远程计算机的文件,然后从远程计算机里的文件复制到本地计算机或包本地计算机文件复制到远程计算机。
FTP传输方便,所以个人用户很多。但存在一定的安全隐患,企业用户很少。
使用vsftpd搭建ftp
用yum安装vsftpd包
yum install -y vsftpd db4-utils
db4-utils用来生成密码库文件
建立账户
vsftpd默认可以使用系统账号体系登录,但这样不安全,所以使用虚拟账号体系登录
建立与虚拟账号相关链的系统账号
useradd virftp -s /sbin/nologin
建立与虚拟账户相关的文件
vim /etc/vsftpd/vsftpd_login test1 222333 test2 223344
文件里奇数的行比如第一行的test1和第三行的test2为用户名,第二行和第四行这些偶数行为上一行用户的密码。
更改文件权限来提升安全
chmod 600 /etc/vsftpd/vsftpd_login
生成vsftpd使用密码文件对应的库文件
db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db
建立与虚拟账号相关的目录以及配置文件
mkdir /etc/vsftpd/vsftpd_user_cconf
创建和用户对应的配置文件
cd /etc/vsftpd/vsftpd_user_conf
vim test1内容
local_root=/home/virftp/test1
anonymous_enable=NO
write_enable=YES
local_umask=022
anon_upload_enable=NO
anon_mkdir_write_enable=NO
idle_session_timeout=600
data_connection_timeout=120
max_clients=10
max_per_ip=5
local_max_rate=50000
mkdir /home/virftp/test1
touch /home/virftp/test1/xiny.txt
chown -R virftp:virftp /home/virftp
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
修改全局配置文件/etc/vsftpd/vsftpd.conf
anonymous_enable=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
chroot_local_user=YES
guest_enable=YES
guest_username=virftp
virtual_use_local_privs=YES
user_config_dir=/etc/vsftpd/vsftpd_user_conf
allow_writeable_chroot=YES
启动vsftpd
systemctl start vsftpd
查看进程
ps aux |grep vsftp
安装lftp
yum install lftp
lftp test1@127.0.0.1 登录vsftpd,用ls列出test1用户的家目录下的文件。
来源:oschina
链接:https://my.oschina.net/u/3867258/blog/1934905