广告
返回顶部
首页 > 资讯 > 数据库 >samba服务及vsftp服务及nfs服务简单配置
  • 818
分享到

samba服务及vsftp服务及nfs服务简单配置

2024-04-02 19:04:59 818人浏览 独家记忆
摘要

1、建立samba共享,共享目录为/data,要求:(描述完整的过程)  1)共享名为shared,工作组为magedu;  2)添加组develop,添加用户gentoo,Centos

1、建立samba共享,共享目录为/data,要求:(描述完整的过程)

  1)共享名为shared,工作组为magedu;

  2)添加组develop,添加用户gentoo,Centosubuntu,其中gentoo和centos以develop为附加组,ubuntu不属于develop组;密码均为用户名;

  3)添加samba用户gentoo,centos和ubuntu,密码均为“mageedu”;

  4)此samba共享shared仅允许develop组具有写权限,其他用户只能以只读方式访问;

  5)此samba共享服务仅允许来自于172.16.0.0/16网络的主机访问;

 

以 centos7.2环境来搭建

[root@localhost ~]# yum -y install samba                              ###安装samba服务

[root@localhost ~]# mkdir /data                                       ###创建共享目录

[root@localhost ~]# useradd gentoo                                    ###添加用户

[root@localhost ~]# useradd centos

[root@localhost ~]# useradd ubuntu

[root@localhost ~]# echo "gentoo"|passwd --stdin gentoo

[root@localhost ~]# echo "centos"|passwd --stdin centos

[root@localhost ~]# echo "ubuntu"|passwd --stdin ubuntu

[root@localhost ~]# groupadd develop                            ###添加develop组

[root@localhost ~]# usermod -aG developgentoo                   ###gentoo附加组为develop

[root@localhost ~]# usermod -aG developcentos                   ###centos附加组为develop

###添加samba用户

[root@localhost ~]# smbpasswd -a gentoo

[root@localhost ~]# smbpasswd -a centos

[root@localhost ~]# smbpasswd -a ubuntu

[root@localhost ~]# pdbedit -L                                ###列出所有samba用户

[root@localhost ~]# setfacl -mg:develop:rwx /data             ###设置develop组具有写权限

[root@localhost ~]# vim /etc/samba/smb.conf                   ###编辑配置文件

[global]

       workgroup = magedu                                     ###所属工作组

       hosts allow = 192.168.0.0/16                    ###仅允许192.168.0.0/16网络主机访问

[shared]                                               ###共享名

       comment = data dir                              ###注释信息

       path = /data                                    ###路径

       browseable = yes                                ###能够被用户看到

       read only = yes                                 ###只读

       write list = @develop                           ###拥有写权限的组

[root@localhost ~]# testparm                           ###测试

[root@localhost ~]# systemctl reloadsmb.service         ###重载服务

 

###客户端测试

[root@localhost ~]# smbclient//192.168.0.188/shared -U gentoo

Enter gentoo's passWord:

Domain=[MAGEDU] OS=[windows 6.1]Server=[Samba 4.4.4]

smb: \> lcd /etc/

smb: \> put fstab

putting file fstab as \fstab (12.6 kb/s)(average 12.6 kb/s)   ###gentoo用户可上传

 

[root@localhost ~]# smbclient//192.168.0.188/shared -U centos

Enter centos's password:

Domain=[MAGEDU] OS=[Windows 6.1]Server=[Samba 4.4.4]

smb: \> lcd /etc

smb: \> put PHP.ini

putting file php.ini as \php.ini (1102.8kb/s) (average 1102.8 kb/s) ###centos用户可上传

 

[root@localhost ~]# smbclient//192.168.0.188/shared -U ubuntu

Enter ubuntu's password:

Domain=[MAGEDU] OS=[Windows 6.1]Server=[Samba 4.4.4]                                           

smb: \> lcd /etc

smb: \> put resolv.conf

NT_STATUS_ACCESS_DENIED opening remote file\resolv.conf        ###ubuntu用户无法上传

至此结束

 

2、搭建一套文件vsftp文件共享服务,共享目录为/ftproot,要求:(描述完整的过程)

  1)基于虚拟用户的访问形式;

  2)匿名用户只允许下载,不允许上传;

  3)禁锢所有的用户于其家目录当中;

  4)限制最大并发连接数为200:;

  5)匿名用户的最大传输速率512KB/s

  6)虚拟用户的账号存储在Mysql数据库当中。

  7)数据库通过NFS进行共享。

  以CentOS7.2环境来搭建

 

(1) 编译安装pam_mysql-0.7RC1.tar.gz

[root@localhost ~]# yum -y install vsftpd                      ###安装vsftpd

[root@localhost dylan]# yum -y groupinstall"Development Tools" "Server PlatfORM Development" 

[root@localhost dylan]# yum -y installmariadb-server mariadb-devel openssl-devel pam-devel

[root@localhost dylan]# tar -xfpam_mysql-0.7RC1.tar.gz

[root@localhost dylan]# cdpam_mysql-0.7RC1/

[root@localhost pam_mysql-0.7RC1]#./configure --with-mysql=/usr --with-openssl=/usr --with-pam=/usr--with-pam-mods-dir=/lib64/security

[root@localhost pam_mysql-0.7RC1]# make

[root@localhost pam_mysql-0.7RC1]# makeinstall

(2) 配置并创建所需库表

[root@localhost pam_mysql-0.7RC1]# mysql-uroot -pxiaozhang        ###配置mysql数据库

Welcome to the MariaDB monitor.  Commands end with ; or \g.

Your MariaDB connection id is 11

Server version: 5.5.52-MariaDB MariaDBServer

 

Copyright (c) 2000, 2016, oracle, MariaDBCorporation Ab and others.

 

Type 'help;' or '\h' for help. Type '\c' toclear the current input statement.

 

MariaDB [(none)]> create databasevsftpd;                      ###创建vsftpd库

Query OK, 1 row affected (0.01 sec)

MariaDB [(none)]> use vsftpd;

Database changed

MariaDB [vsftpd]> create table users(                         ###创建表结构

   -> id int auto_increment not null primary key,

   -> name char(30) not null,

   -> password char(48) binary not null);

Query OK, 0 rows affected (0.02 sec)

MariaDB [vsftpd]> insert intousers(name,password) values('tom',password('xiaozhang'));                           ###表中插入两条数据

Query OK, 1 row affected (0.00 sec)

 

MariaDB [vsftpd]> insert intousers(name,password) values('jerry',password('xiaozhang1'));

 Query OK, 1 row affected (0.01 sec)

MariaDB [vsftpd]> grant select onvsftpd.* to vsftpd@localhost identified by 'xiaozhang';          

###授权vsftpd用户

Query OK, 0 rows affected (0.00 sec)

 

MariaDB [vsftpd]> grant select onvsftpd.* to vsftpd@'127.0.0.1' identified by 'xiaozhang'

;Query OK, 0 rows affected (0.00 sec)

MariaDB [vsftpd]> flush privileges;

Query OK, 0 rows affected (0.01 sec)

(3)创建pam配置文件并创建系统虚拟用户vuser

[root@localhost dylan]# vim /etc/pam.d/vsftpd.mysql                                                                                      ###创建vsftpd.mysql作为pam认证文件

auth required pam_mysql.so user=vsftpdpasswd=xiaozhang host=localhost db=vsftpd table=users usercolumn=namepasswdcolumn=password crypt=2

account required pam_mysql.so user=vsftpd passwd=xiaozhang host=localhostdb=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2                      

[root@localhost dylan]# useradd -s /sbin/nologin-d /ftproot vuser                                                               ###创建系统虚拟用户vuser

[root@localhost dylan]# chmod Go+rx/ftproot/

(4)修改vsftpd配置文件

anonymous_enable=YES                                        ###启用虚拟用户

local_enable=YES                                            ###启用本地用户

write_enable=YES                                            ###允许用户有写权限

anon_upload_enable=NO                                       ###匿名用户不允许上传

chroot_local_user=YES                                       ###禁锢所有的用户于其家目录当中

max_clients=200                                             ###限制最大并发连接数为200

anon_max_rate=512000                                     ###匿名用户的最大传输速率512KB/s

guest_enable=YES                                             ###激活虚拟用户

guest_username=vuser                                         ###创建vuser用户作为虚拟对应用户        

pam_service_name=vsftpd.mysql                              ###vsftpd.mysql作为pam认证文件

(5)测试

[root@localhost ~]# ftp 192.168.0.104                     ###ftp远程连接

Connected to 192.168.0.104 (192.168.0.104).

220 (vsFTPd 3.0.2)

Name (192.168.0.104:root): tom

331 Please specify the password.

Password:

500 OOPS: vsftpd: refusing to run withwritable root inside chroot()

Login failed.

421 Service not available, remote serverhas closed connection    ###连接失败

[root@localhost ~]# chmod -w /ftproot                            ###去掉服务端家目录的写权限

[root@localhost ~]# mkdir /ftproot/{pub,upload}                   ###创建家目录两个目录

[root@localhost ~]# ftp 192.168.0.104                             ###重新连接

Connected to 192.168.0.104 (192.168.0.104).

220 (vsFTPd 3.0.2)

Name (192.168.0.104:root): tom

331 Please specify the password.

Password:

230 Login successful.                                                                                  ###登陆成功

Remote system type is UNIX.

Using binary mode to transfer files.

ftp> ls                                                           ###查看目录

227 Entering Passive Mode(192,168,0,104,150,82).

150 Here comes the directory listing.

drwxr-xr-x    2 0       0               6 Jul 05 02:11 pub

drwxr-xr-x    2 0       0               6 Jul 05 02:11 upload

226 Directory send OK.                                              ###测试成功

(6)另:如果想upload目录匿名用户可上传文件,需:

[root@localhost ~]# chown vuser/ftproot/upload/

[root@localhost ~]# vim/etc/vsftpd/vsftpd.conf

anon_upload_enable=YES                                       ###开启匿名用户上传即可

[root@localhost ~]# systemctl restartvsftpd.service

如果两个虚拟用户,一个可上传,一个不可上传,需这样配置:

主配置文件中支持每一个虚拟用户可以有自己的单独的配置文件这样的方式解决

[root@localhost ~]# mkdir /etc/vsftpd/vuser.conf.d            ###创建配置目录

[root@localhost ~]# vim/etc/vsftpd/vuser.conf.d/tom                                         ###目录中创建以虚拟用户名为文件名文件        

anon_upload_enable=YES                                        ###添加此项,表示允许上传

[root@localhost ~]# vim/etc/vsftpd/vuser.conf.d/jerry

anon_upload_enable=NO                                          ###表示不允许上传

[root@localhost ~]# vim /etc/vsftpd/vsftpd.conf                ###编辑主配置文件

#anonymous_enable=YES                                          ###注释此项

user_config_dir=/etc/vsftpd/vuser.conf.d/                      ###添加用户目录

[root@localhost ~]# systemctl restartvsftpd.service           ###重启服务即可实现

(7)数据库通过NFS进行共享

[root@localhost ~]# yum install nfs-utils-y                    ###安装nfs-utils

[root@localhost ~]# systemctl startnfs.service

[root@localhost ~]# ss -tnl

LISTEN    0      64               :::2049                         :::* 

mysql数据目录为datadir=/var/lib/mysql

[root@localhost ~]# vim/etc/exports.d/mydata.exports

/var/lib/mysql 192.168.0.0/16(rw,root_squash)             ###读写权限及压缩root用户权限

[root@localhost ~]# exportfs -r                           ###导出共享目录

[root@localhost ~]# showmount -e192.168.0.104             ###查看共享目录

Export list for 192.168.0.104:

/var/lib/mysql 192.168.0.0/16

[root@localhost /]# mkdir /mydata/data -p                 ###客户端创建挂载目录

[root@localhost /]# mount -t nfs192.168.0.104:/var/lib/mysql /mydata/data                     ###客户端挂载

[root@localhost /]# mount                                  ###查看挂载信息

192.168.0.104:/var/lib/mysql on/mydata/data type nfs4(rw,relatime,vers=4.0,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=192.168.0.104,local_lock=none,addr=192.168.0.104)

至此完成

您可能感兴趣的文档:

--结束END--

本文标题: samba服务及vsftp服务及nfs服务简单配置

本文链接: https://www.lsjlt.com/news/42924.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • samba服务及vsftp服务及nfs服务简单配置
    1、建立samba共享,共享目录为/data,要求:(描述完整的过程)  1)共享名为shared,工作组为magedu;  2)添加组develop,添加用户gentoo,centos...
    99+
    2022-10-18
  • linux下Samba服务和NFS服务配置方法
    这篇文章主要介绍“linux下Samba服务和NFS服务配置方法”,在日常操作中,相信很多人在linux下Samba服务和NFS服务配置方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”linux下Samba...
    99+
    2023-06-13
  • docker搭建NFS服务器(超简单)
    docker 安装 NFS服务端与客户端 一:服务端: 下载镜像到本地。 地址:https://www.aliyundrive.com/s/LUQ4A4yuZcY 启动镜像 解压镜像 docker ...
    99+
    2023-10-06
    docker 服务器 运维
  • NFS介绍及服务器搭建
    一、NFS 简介 NFS,英文全称 Network File System,主要功能:通过网络,让不同的机器、不同的操作系统可以共享文件。类似windows的共享文件夹 ​ NFS服务器共享本机目录,客户端机器挂载该目录后,就可以像自己本机...
    99+
    2023-08-19
    NFS介绍 NFS部署 NFS固定端口
  • Ubuntu 安装配置Samba服务器
    一、描述 Samba文件服务器可以在网络上实现不同操作系统的文件共享。它可以让你从笔记本电脑访问你的桌面文件,并与Windows和macOS用户共享文件。 Samba是通过Network (LAN)局域网来实现的。 二、安装 要安装...
    99+
    2023-09-12
    linux 服务器 物联网 ubuntu Powered by 金山文档
  • 如何配置Linux Samba服务器
    本篇内容介绍了“如何配置Linux Samba服务器”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!系统环境为Ubuntu 7.04...  ...
    99+
    2023-06-10
  • Linux服务器如何配置nfs
    这篇文章主要介绍了Linux服务器如何配置nfs,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。配置nfsNFS服务的主要配置文件为/etc/exports。/etc/expo...
    99+
    2023-06-05
  • Ubuntu中怎么配置NFS服务
    这篇文章主要介绍了Ubuntu中怎么配置NFS服务的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Ubuntu中怎么配置NFS服务文章都会有所收获,下面我们一起来看看吧。NFS(Network File Syst...
    99+
    2023-06-27
  • 浅析NFS服务器原理以及搭建配置部署步骤
    目录NFS服务简介什么是NFS?NFS挂载原理NFS服务器到底使用哪个端口来进行数据传输呢?RPC与NFS通讯原理那么RPC又是如何知道每个NFS功能的端口呢?NFS客户端和NFS服...
    99+
    2022-11-12
  • Centos7下Samba服务器配置(实战)
    Samba概述 Samba是在linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信...
    99+
    2022-06-04
    Centos7 Samba服务器配置 Centos7配置Samba服务器
  • 配置samba服务器详细步骤
    先配置虚拟机的静态ip, cd /etc/sysconfig/network-scripts/ifcfg-eno16777736 #z最后的ifcfg是网卡名称。每个人可能都不一样。 安装samba服务 yum install -y sa...
    99+
    2023-09-01
    服务器 运维 linux
  • centos配置nfs服务详细步骤
    这篇文章主要介绍“centos配置nfs服务详细步骤”,在日常操作中,相信很多人在centos配置nfs服务详细步骤问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”centos配置nfs服务详细步骤”的疑惑有所...
    99+
    2023-06-10
  • Linux系统如何配置NFS服务
    小编给大家分享一下Linux系统如何配置NFS服务,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!NFS(Network File System)即网络文件系统,是...
    99+
    2023-06-28
  • Samba文件共享服务器的配置
    一、Samba服务: 1)SMB(Server Message Block)协议实现文件共享,也称为CIFS(Common Internet File System) 2)是Windows和类Unix系统之间的共享文件的一种协议。NFS是L...
    99+
    2023-10-25
    服务器 linux
  • Ubuntu samba怎么配置服务文件包
    本篇内容介绍了“Ubuntu samba怎么配置服务文件包”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Ubuntu samba服务配置是很...
    99+
    2023-06-17
  • Linux系统下怎么配置samba服务
    小编给大家分享一下Linux系统下怎么配置samba服务,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Samba是在Linux和UNIX系统上实现SMB协议的一个...
    99+
    2023-06-28
  • 如何进行Linux Samba服务器配置
    小编今天带大家了解如何进行Linux Samba服务器配置,文中知识点介绍的非常详细。觉得有帮助的朋友可以跟着小编一起浏览文章的内容,希望能够帮助更多想解决这个问题的朋友找到问题的答案,下面跟着小编一起深入学习“如何进行Linux Samb...
    99+
    2023-06-28
  • Linux服务器怎样进行配置samba
    Linux服务器怎样进行配置samba,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。配置samba使用用户名和密码登录  当samba配置文...
    99+
    2023-06-06
  • 如何在Debian下配置Samba服务器
    这篇文章主要讲解了“如何在Debian下配置Samba服务器”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何在Debian下配置Samba服务器”吧!1 介绍 如果某一个单位,他们的桌面计...
    99+
    2023-06-13
  • linux环境下samba服务器的配置
    linux服务器怎么创建用户 在Linux服务器上,可以使用以下步骤创建用户: 使用adduser命令创建新用户: sudo adduser username 将 username 替换为你要创建的用户名。这个命令会提示你输入新用户的密码以...
    99+
    2023-12-23
    服务器 linux c++
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作