方便的文本传输服务之FTP,NFS,SAMBA

为了服务配置可以顺利进行,建议把防火墙都关闭~

一、FTP服务

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

2、FTP的主要作用是让用户连接上一个远程计算机(这些计算机上运行者FTP服务器程序)查看远程计算机有哪些文件,然后把文件从远程计算机拷贝到本地,或者把本地计算机的文件传送到远程计算机上去。

3、在CentOS或者RedHat Linux上有自带ftp软件叫vsftpd

4、安装所需软件

(1)yum intall -y vsftpd

如果你想在Linux服务器上搭建一个安全,高性能,稳定性好的FTP服务,vsftpd将会是首选应用,vsftpd意思为“very secure FTP daemon(非常安全的FTP进程)”是一个基于GPL发布的类UNIX类操作系统上运行的服务器的名字(是一种守护进程      )

(2)yum install -y db4-utiles

db4-utils是一种数据库里面有与FTP协议对应的相关信息

5、使用vsftpd配置FTP服务,虚拟账号登陆

(1)建立虚拟账号相关联的系统账号并指定不许登陆

useradd vsftp -s /sbin/nologin

 

(2)建立虚拟账户相关文件 内容如下

user1

oralce

user2

oracle

单行为用户名,双行为密码,与前面的db4-utils数据库相呼应

 

 

(3)修改权限为只有所属用户可读写

chmod 600 /etc/vsftpd/vsftpd_login

 

(4)生成对应的库文件

db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db

(5)建立虚拟账号相关的目录以及配置文件

mkdir /etc/vsftpd/vsftpd_user_conf

cd /etc/vsftpd/vsftpd_user_conf  vim user1加入以下内容

 

(6)修改用户权限chwn -R vsftp:vsftp /home/vsftp

 

(7)添加认证vim /etc/pam.d/vsftpd 开头加入以下内容

 

(8)再修改主配置文件 /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

(9)启动vsftpd服务

systemctl start vsftpd

(10)在windows端远程连接

 

 

1)我们常用到的是get/mget,用来从远程下载文件,mget支持下载一批文件,put是将文件传输到远程

2)下载文件    windows下对应的目录

 

 

 

 

 

 

 

可以看到此时window端目录下只有一个文件1.bat,Linux端有一个文件passwd,可以将1.bat拷贝到Linux端,将passwd拷贝到windows端

二、NFS服务

NFS全称是network file system

NFS允许一个系统在网络上与其他人共享目录和文件,通过使用NFS,用户和程序可以像访问本地文件一样访问远端系统的文件。只适用于同构的系统 之间。

假如有三台机器A,B,C,他们需要同时访问同一个目录,目录中都是图片,传统的做法是把这些图片分别放到A,B,C,但是使用NFS只需要放到A上,然后A共享给B,C即可,访问的时候,B,C是通过网络的方式去访问A上的目录。

1、所需要两个安装包

yum install -y nfs-utils  nfs-utils是NFS服务主程序

yum install -y rpcbind  rpcbind是RPC主程序

2、服务端配置

(1)vim /etc/exports 加入以下内容

 

分为三个部分:第一部分为要共享出去的目录,第二部分为允许访问的主机(可以是一个IP也可以是一个IP段)第三部分为小括号内,一些权限。上图表示为:共享目录/u01,信任主机位192.168.10.0/24这个网段,全线为读写,同步,限定所有使用者。

rw:读写    ro:只读   

sync:同步模式,内存中数据实时写入磁盘

async:不同步,把内存中数据定期写入磁盘中

no_root_squash:加上这个选项后,root用户就会对共享目录拥有至高的权限控制,就像对本机的目录操作一样,不安全,不建议。

root_squash:root用户对共享目录权限不高,只有普通用户的权限,限制了root.

all_squash:不管使用NFS用户是谁,他的身份都会被限定成一个指定的普通用户身份

anonuid/anongid:要是root_squash以及all_squash一起使用,用于指定使用NFS的用户限定后的uid和gid,前提是本机的/etc/passwd存在这个uid和gid。

(2)启动服务

systemctl start rpcbind

systemctl start nfs

3、客户端配置

(1)yum install -y nfs-utils

(2)showmount -e 192.168.10.114 查看服务端都共享了哪些目录

 

(3)mount -t nfs 192.168.10.114:/u01 /mnt 挂载服务端NFS,这里为手动挂载,重启后失效,可以添加到/etc/fstab中,开机生效

(4)df -h 查看挂载情况

 

4、文件传输

 

 

可以看到服务端与客户端目录下都没有文件,此时在服务端创建文件1.txt,可以看到在客户端的挂载目录下已经有该文件

此时我在客户端也创建一个文件,发现服务端也能看到该文件

 

三、SAMBA服务

Samba是在Linux和unix系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Message Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统,打印机及其他资源。通过设置”NetBIOS over TCP/IP”使得Samba不但能与局域网主机分享资源,还能与全世界的电脑分享资源。

1、安装SAMBA服务,环境配置

(1)确保Linux下防火墙关闭或者清空防火墙规则iptables -F

(2)确保selinux关闭,sestatus查看状态

2、安装软件包 yum install -y samba

3、修改配置文件 /etc/samba/smb.conf

加入上图内容,其中/usr/yu/share为需要共享的目录,要将写的权限赋予用户13,需要共享的目录权限修改为775

4、添加用户到samba服务中,此用户是Linux系统中已存在的用户

smbapsswd -a 13

5、重启服务:systemctl restart smb.service

6、测试

连接成功

 

可以看到此时我的共享目录下没有文件

创建文件

 

 

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: FTPNFSSamba都是用于文件共享的协议,但它们的实现方式和适用场景有所不同。 FTP是一种基于TCP/IP协议的文件传输协议,用于在网络上传输文件。FTP服务器可以在Linux系统上使用,允许用户通过FTP客户端上传和下载文件。 NFS是一种网络文件系统协议,用于在网络上共享文件系统。它允许多个计算机通过网络访问同一个文件系统,就像它们在本地访问一样。NFS在Linux系统上使用较为广泛,特别是在大型网络环境中。 Samba是一种开放源代码的软件套件,用于在Linux系统上实现Windows文件共享服务。它允许Linux系统作为文件服务器,与Windows系统进行文件共享。Samba还支持其他协议,如FTPNFS。 总的来说,FTP适用于简单的文件传输NFS适用于多个计算机访问同一个文件系统,而Samba适用于Linux系统与Windows系统之间的文件共享。 ### 回答2: FTPNFSSamba 都是用来实现文件共享的协议,但是它们在实现上有一些不同。 FTP(File Transfer Protocol)是一个用来传输文件的协议,通常被用来将文件从一个计算机上传到另一个计算机。它使用客户端-服务器模型,即客户端从服务器端下载或上传文件。使用 FTP 必须有一个 FTP 服务器,并且需要使用 FTP 客户端才能访问服务器。FTP 是基于 TCP/IP 协议的,支持用户名和密码验证,可以使用加密的 SSL 层进行安全传输NFS(Network File System)是一种分布式文件系统,允许不同的计算机通过网络共享文件。它基于客户端-服务器模型,其中服务器端负责管理和存储文件,客户端可以通过网络访问这些文件。NFS 是 UNIX 和 Linux 等操作系统之间共享文件的首选方式之一。使用 NFS 时,需要在服务器端配置 NFS 服务器,并在客户端上安装 NFS 客户端,使用 NFS 时文件共享不需要用户名和密码认证。 Samba 是一种开放源代码软件,用于在 Linux 和 Unix 系统上实现 SMB/CIFS 协议,它可以使 Linux 和 Unix 系统与 Windows 系统间共享文件和打印机。Samba 允许 Linux 和 Unix 系统作为 SMB/CIFS 服务器或客户端使用,在 Linux 系统上可以使用 Samba 服务器来共享文件夹和打印机,也可以使用 Samba 客户端来连接 Windows 共享资源。Samba 支持基于用户身份验证的文件和打印机共享,可以为不同的用户提供不同级别的访问权限。 总体而言,在轻量级的文件共享中,FTP 是一个不错的选择,但在文件系统级别的共享中,NFS 是更好的选择,而在 Linux 和 Windows 平台之间的文件共享方案中,Samba 可以充分发挥其优势。这三个协议每个都有其优点和应用场景,使用时应根据具体需求进行选择。 ### 回答3: ftpnfssamba都是在Linux系统中用于实现文件共享的服务,但具体实现方式和应用场景有所不同。 ftp,全称为文件传输协议(File Transfer Protocol),是一种标准化的协议,用于将文件从一个主机传送到另一个主机。它可以通过命令行或者ftp客户端进行操作,是一种跨平台的文件传输方法。 nfs,全称为网络文件系统(Network File System),是Linux系统中一种常见的文件共享方式,它可以让计算机通过网络访问到另一台计算机上的共享文件。它也可以通过命令行或者图形化工具进行操作,主要应用于局域网内的文件共享。 samba,是一种开源软件,用于在Linux系统上与Windows系统之间共享文件和打印机。它支持各种Windows文件共享协议,包括SMB/CIFS协议,可以让Linux系统与Windows系统无缝交互。 总的来说,ftpnfssamba都可以用于在Linux系统中实现文件共享,但具体应用场景和操作方式有所不同。ftp是一种跨平台传输方式,适用于需要将文件从一个主机传输到另一个主机的场合;nfs适用于同一局域网内多台计算机之间的文件共享;samba则主要用于Linux系统与Windows系统之间的文件共享。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值