exportfs命令、FTP介绍、FTP介绍、使用vsftpd搭建ftp服务

exportfs命令

exportfs 命令用来管理当前NFS共享的文件系统列表
-a 全部挂载或者全部卸载
-r 重新挂载
-u 卸载某一个目录
-v 显示共享目录
-f 在“新”模式下,刷新内核共享表之外的任何东西。 任何活动的客户程序将在它们的下次请求中得到 mountd添加的新的共享条目。
-v 输出详细信息。当共享或者取消共享时,显示在做什么。 显示当前共享列表的时候,同时显示共享的选项。

可以使用:exportfs -arv 这样不用重启nfs服务,配置文件就会生效


NFS客户端问题

客户端挂载共享目录后,不管是root用户还是普通用户,创建新文件时属主、属组为nobody
有两种解决的办法
客户端挂载时加上 -o nfsvers=3 指定nfsvers版本为3
mount -t nfs -o nfsvers=3 192.168.71.131:/home/nfstestdir /mnt/

客户端和服务端都需要 把“#Domain = local.domain.edu” 改为 “Domain = xxx.com” (这里的xxx.com,随意定义),然后再重启rpcbind服务


FTP介绍

  1. FTP是File Transfer Protocol(文件传输协议,简称文传协议)的英文简称,用于在Internet上控制文件的双向传输。

  2. FTP的主要作用就是让用户连接一个远程计算机(这些计算机上运行着FTP服务器程序),并查看远程计算机中的文件,然后把文件从远程计算机复制到本地计算机,或把本地计算机的文件传送到远程计算机。

  3. 小公司用的多,大企业不用FTP,因为不安全

使用vsftpd搭建ftp服务

安装vsftpd
yum install -y vsftpd

创建用户virftp -s指定登陆的shell,nologin表示不能登陆系统
useradd -s /sbin/nologin virftp

编辑虚拟用户的密码文件
vim /etc/vsftpd/vsftpd_login

写入以下内容,内容自定义即可,奇数行为用户名,偶数行为密码,多个用户就写多行,这里用户名为testuser1 ,密码为testpasswd
testuser1
testpasswd

设置权限
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 testuser1

在文件在添加如下的内容

local_root=/home/virftp/testuser1
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

local_root=/home/virftp/testuser1 定义虚拟用户的家目录
anonymous_enable=NO 用来限制是否允许匿名账号登录(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 最大的客户端

创建虚拟用户的家目录
mkdir /home/virftp/testuser1
touch /home/virftp/testuser1/lx.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

编辑vsftpd的主配置文件
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 #映射的是哪个普通用户
virtual_use_local_privs=YES #告诉服务使用的是虚拟用户
user_config_dir=/etc/vsftpd/vsftpd_user_conf
allow_writeable_chroot=YE

启动服务
systemctl start vsftpd

FTP已经搭建完成,下面进行测试:
安装lftp
yum install -y lftp

使用lftp登陆到ftp
lftp [email protected]
口令: #输入密码
lftp [email protected]:~> ls #可以看到之前创建的文件
-rw-r--r-- 1 1010 1010 0 Mar 27 14:57 lx.txt
上传一个文件使用put 下载一个文件使用get 退出使用quit

猜你喜欢

转载自blog.51cto.com/13658403/2132335
今日推荐