Linux下FTP、SAMBA、NFS配置

FTP配置

一、ftp服务端配置

(1)安装ftp软件

yum install vsftpd

(2)查看配置文件

cat /etc/vsftpd/vsftpd.conf |grep  ^[^#]
	anonymous_enable=NO    #不允许匿名登录
	local_enable=YES    #vsftpd所在系统的用户可以登录vsftpd 
	write_enable=YES        #允许使用任何可以修改文件系统的FTP的指令 
	local_umask=022        #匿名用户新增文件的umask数值
	dirmessage_enable=YES    
	xferlog_enable=YES        #启用一个日志文件,用于详细记录上传和下载
	connect_from_port_20=YES        #开启20端口    
	xferlog_std_format=YES        #记录日志使用标准格式 
	listen=NO         #关闭监听
	listen_ipv6=YES    #监听IPV6地址
	pam_service_name=vsftpd     #验证文件的名字
	userlist_enable=YES    #允许由userlist_file指定文件中的用户登录FTP服	务器
	tcp_wrappers=YES    #支持tcp_wrappers,限制访问(/etc/hosts.allow,/etc/hosts.deny)

(3)启动服务

systemctl start vsftpd
systemctl enable vsftpd

二、ftp客户端配置

(1)安装软件

yum install lftp

(2)访问格式

连接ftp服务器
1.格式:ftp [hostname| ip-address]
  a)在linux命令行下输入:ftp 10.18.34.115
  b)服务器询问你用户名和口令,分别输入yint和相应密码,待认证通过即可。
  
2. 下载文件
  下载文件通常用get和mget这两条命令。
  a) get
  格式:get [remote-file] [local-file]
  将文件从远端主机中传送至本地主机中.
  如要获取服务器上E:\rose\1.bmp,则
  ftp> get /rose/1.bmp 1.bmp (回车)
  b) mget      
  格式:mget [remote-files]
  从远端主机接收一批文件至本地主机.
  如要获取服务器上E:\rose\下的所有文件,则
  ftp> cd /rose
  ftp> mget *.* (回车)
  注意:文件都下载到了linux主机的当前目录下。比如,在 /root/yint下运行的ftp命令,则文件都下载到了/root/yint下。
  
3.上传文件
  a) put
  格式:put local-file [remote-file]
  将本地一个文件传送至远端主机中.
  如要把本地的1.bmp传送到远端主机E:\rose,并改名为333.bmp
  ftp> put 1.bmp /rose/333.bmp (回车)
  b) mput
  格式:mput local-files
  将本地主机中一批文件传送至远端主机.
  如要把本地当前目录下所有bmp文件上传到服务器E:\rose 下
  ftp> cd /rose (回车)
  ftp> mput *.bmp (回车)
  注意:上传文件都来自于主机的当前目录下。比如,在 /root/yint下运行的ftp命令,则只有在/root/yint下的文件linux才会上传到服务器E:\rose 下。
  
4. 断开连接
  bye:中断与服务器的连接。
  ftp> bye (回车)

 
 
 
Samba配置

一、samba服务端配置

(1)安装Samba软件(samba.x86_64 0:4.7.1-6.el7)

yum -y install samba

(2)创建共享目录

mkdir /common
chmod 777 /common
echo "hello the world" > /common/smb.txt

(3)修改配置文件

vim /etc/samba/smb.conf
	[common]  #共享名称为common
	comment = comment share  #共享注释
	path = /common  #重要,指定共享路径
	browseable = yes  #所有人可见
	guest ok = no  #拒绝匿名访问
	writable = yes  #支持写入数据

(4)创建访问账号

useradd -s /sbin/nologin smbuser
smbpasswd -a smbuser
smbpasswd命令描述及用法
描述:修改账户Samba的密码
用法:smbpasswd [选项]  账户名称
选项:-a 添加账户并设置密码
	-x 删除smb账户
	-d 禁用smb账户
	-e 启用smb账户

(5)启动服务

systemctl restart smb
systemctl enable smb

二、客户端访问Samba共享

1.Windows 客户端访问
在开始–运行菜单或直接Windows+R快捷键开启运行对话框,在对话框中输入IP访问,输入用户名和密码,登陆后可以看到一个是common共享,一个是smbuser账户的家目录.

2.Linux客户端访问

(1)yum -y install samba-client cifs-utils
   smbclient -L 192.168.1.254  #查看服务端提供了哪些共享(仅仅是查看,不需要密码)
   smbclient -U smbuser //192.168.1.254/common #输入密码查看下载等
(2)挂载到本地,实现像使用本地的文件系统的体验一样
	mkdir /test
	mount -t cifs //192.168.1.254/common /test -o username=smbuser,password=123456
	vim /etc/fstab
	//192.168.1.254/common /test cifs defaults,username=smbuser,password=123456 0 0

 
 
 

NFS配置

一、nfs服务端配置

操作步骤:
(1)安装软件(nfs-utils.x86_64 1:1.3.0-0.54.el7/rpcbind-0.2.0-44.el7.x86_64)

yum -y install nfs-utils rpcbind
rpm -qa | grep nfs-utils rpcbind

(2)添加共享账户

useradd -u 1003 tom

(3)创建共享目录

mkdir /var/{web,cloud}

(4)修改权限

chmod a+w /var/web

(5)设置NFS共享配置文件

 cat /etc/exports
/var/web/ 192.168.0.0(rw,async,no_root_squash)
/var/cloud/ *(ro,sync)

(6)启动共享服务

systemctl restart nfs
systemctl enable nfs
netstat -ntulp | grep 2049

二、nfs客户端配置

操作步骤:
(1)查看服务端共享的目录

showmount -e 192.168.1.61

(2)创建挂载点与用户

mkdir /webdata
useradd -u 1003 tom

(3)挂载(命令行挂载为mount 192.168.1.61:/var/web /webdata)

vim /etc/fstab
192.168.1.61:/var/web /webdata nfs defaults 0 0

(4)切换用户测试

su - tom
cd /var/web
touch test.txt

三、NFS属性及含义

(1)ro(只读共享)
(2)rw(可读可写共享)
(3)sync(同步写操作)
(4)async(异步写操作)
(5)wdelay(延迟写操作)
(6)root_squash(屏蔽远程root权限)
(7)no_root_squash(不屏蔽远程root权限)
(8)all_squash(屏蔽所有远程用户的权限)

四、常见问题解析

(1)权限问题
	在/etc/exports配置文件中设置共享目录为可读写时,却忘记了修改相应的系统层面的文件及目录的权限,导致客户端实际挂在时没有写权限,系统提示信息为"Permission denied",在对配置文件设置写权限后一定要修改相关的文件及目录的写权限.
	另外,默认客户端使用root访问NFS共享进行写操作时,服务器会自动把root转换为服务器本机的nfsnobody账户,这会导致root无法进行相应的操作,如果要保留root的权限则在配置文件中添加no_root_squash选项
(2)rpcbind问题
	在没有启动rpcbind的情况下,启动nfs服务时系统会报错:NFS mountd、rpc.rquotad、rpc.nfsd无法启动,以为这些服务都依赖与于rpcbind,所以先确保rpcbind服务启动后在开启nfs服务.
	通过rpcinfo -p可以查看基于RPC协议的服务是否成功与rpcbind通信,并注册信息
[root@se1 ~]# rpcinfo -p
   program vers proto   port  service
    100003    3   tcp   2049  nfs
    100003    4   tcp   2049  nfs
    100227    3   tcp   2049  nfs_acl
    100003    3   udp   2049  nfs
    100003    4   udp   2049  nfs
    100227    3   udp   2049  nfs_acl
(3)  
	在工作环境中,当客户端需要使用NFSv3版本挂载以满足兼容性要求时,则需要使用nfsvers选项设置特定的版本信息,并且在/etc/fstab文件中也需要进行相应的操作
	vim /etc/fstab
		192.168.1.61:/var/web /webdata nfs defaults,nfsvers=3 0 0 
(4)挂载错误
	系统提示No such file or directory,说明服务器上没有相应的挂载点目录,检查目录及名称是否正确
(5)防火墙错误
	系统提示mount:mount to NFS server '192.168.1.61em Error: No route to host',这说明nfs服务的默认端口2049被防火墙屏蔽,则需要修改防火墙的规则开放2049端口

你可能感兴趣的:(OPERATION,FTP,SAMBA,NFS,SERVICES)