方便的文本传输服务之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、测试

连接成功

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

创建文件

猜你喜欢

转载自blog.csdn.net/weixin_42774383/article/details/81368687