且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Samba文件共享服务(共享脚本 让你工作更轻松)

更新时间:2022-09-16 13:32:23

Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。
实验环境:
根据公司信息化建设要求,需要在局域网内搭建一台文件服务器,便于对数据的集中和管理和备份,考虑到文件的安全性和运行效率及稳定,选择在RHEL6

上搭建 文件共享服务器!

实验截图与解释:window匿名访问 linux服务

首先挂载光盘安装Samba然后配置ip地址

mount: block device /dev/sr0 is write-protected, mounting read-only


Samba文件共享服务(共享脚本 让你工作更轻松)

Samba文件共享服务(共享脚本 让你工作更轻松)


Samba文件共享服务(共享脚本 让你工作更轻松)


Samba文件共享服务(共享脚本 让你工作更轻松)

安装软件

建测试文件夹

过滤配置文件 然后编辑配置文件:在 /etc/samba/smb.conf

查看 端口号smbd是占用的139和445端口。

netstat -tlnp | grep smb
tcp        0      0 0.0.0.0:139                 0.0.0.0:*                   LISTEN      13139/smbd
tcp        0      0 0.0.0.0:445                 0.0.0.0:*                   LISTEN      13139/smbd

备份smb.conf文件

Samba服务器的配置文件都位于/etc/samba目录中,服务器的主配置文件是smb.conf;也有用户配置文件 smbpasswd、smbusers和lmhosts等;还有一个文件是secrets.tdb,这个文件是Samba 服务器启动手自动生成的

mv /etc/samba/smb.conf /etc/samba/smb.conf.bak

ls /etc/samba
lmhosts  passdb.tdb  secrets.tdb  smb.conf.bak  smbpasswd  smbusers

4、设置samba服务器能实现匿名读写

[STEP 1]配置smb.conf文件

touch smb.conf

vim smb.conf

/*全局配置*/

[global]

workgroup = root                          //类似于在Windows中显示的工作组名称

netbios name = mabin-samba           //被netbios解析出来的计算机名

server string = samba testserver       //服务器说明

security = share                               //security是登录和验证方式,设置为share可以匿名访问;而如果是user这种验证方式的话,就需要用户名和密码

[root]                                          //在Windows中显示出来的共享目录名

path = /var/samba                         //共享目录的路径

writeable = yes                              //是否可写

browseable = yes                          //是否可浏览

guest ok = yes                              //设置匿名用户以guest身份登录


Samba文件共享服务(共享脚本 让你工作更轻松)

必须关掉防火墙

Samba文件共享服务(共享脚本 让你工作更轻松)

测试能不能访问

Samba文件共享服务(共享脚本 让你工作更轻松)

Samba文件共享服务(共享脚本 让你工作更轻松)

文字就是linux上建的文件夹

2:用户验证访问。我们利用Samba实现了最简单的匿名共享,但在大多数情况下,我们都希望能够对访问共享文件的用户进行身份验证,并分配相应的权限。

做个实验:

公司有3个部门,财务、人事、技术。
要求:
1、每个部门在文件服务器上都有一个公共文件夹,该文件夹只能被相应部门的员工访问,并向里面写文件,但是不能删除,也不能被非本部门员工访问。
2、每个员工在文件服务器上有一个自己独立的文件夹,该文件夹只能被该员工本人访问,其它任何人没有访问权限。

地址可能不一样 一个是我在学校做的 一个是在家做了,为了方便我就不改了!


[root@jack /]# mkdir /caiwu/share        建立几个测试文件夹
[root@jack /]# mkdir /renshi/share
[root@jack /]# mkdir /jishu/share


[root@jack /]# useradd caiwu      然后建立几个用户
root@jack /]# useradd renshi
[root@jack /]# useradd jishu

Samba文件共享服务(共享脚本 让你工作更轻松)


[root@jack /]# gpasswd -a tom caiwu 把用户加入组
dding user tom to group caiwu
[root@jack /]# gpasswd -a jack renshi
Adding user jack to group renshi
[root@jack /]# gpasswd -a jone jishu
Adding user jone to group jishu

[root@jack /]# echo "This is caiwu bu" > /caiwu/share/caiwu.txt                  测试文件
oot@jack /]# ls -l /caiwu/share/


[root@jack /]# chown root:caiwu /caiwu/share/                          修改目录的属主和属组
root@jack /]# ls -l /caiwu/

drwxrwx---. 2 root caiwu 4096  5月 28 20:51 share

Samba文件共享服务(共享脚本 让你工作更轻松)

然后访问

Samba文件共享服务(共享脚本 让你工作更轻松)


可以进入自己的组

Samba文件共享服务(共享脚本 让你工作更轻松)

查看别的文件夹就会提示这个

Samba文件共享服务(共享脚本 让你工作更轻松)

Samba文件共享服务(共享脚本 让你工作更轻松)

清楚远程列表信息

Samba文件共享服务(共享脚本 让你工作更轻松)

Samba文件共享服务(共享脚本 让你工作更轻松)

建个测试文件

Samba文件共享服务(共享脚本 让你工作更轻松)

Samba文件共享服务(共享脚本 让你工作更轻松)

Samba文件共享服务(共享脚本 让你工作更轻松)

不能创建文件 但是能写入文件要求达到!

Samba文件共享服务(共享脚本 让你工作更轻松)

Samba文件共享服务(共享脚本 让你工作更轻松)


每个用户都家目录 自己的家肯定都可以进

Samba文件共享服务(共享脚本 让你工作更轻松)

Samba文件共享服务(共享脚本 让你工作更轻松)

Samba文件共享服务(共享脚本 让你工作更轻松)

[root@jack /]# echo "my name is jone" > /home/jone/jone.txt   在linux加这一句话 window共享也可以看到


Samba文件共享服务(共享脚本 让你工作更轻松)


3:用window共享 linux访问服务


首先我在真机上共享了自己的技术资料

Samba文件共享服务(共享脚本 让你工作更轻松)

Samba文件共享服务(共享脚本 让你工作更轻松)

Samba文件共享服务(共享脚本 让你工作更轻松)

然后挂载进去!

Samba文件共享服务(共享脚本 让你工作更轻松)

如果有的人无法挂载 可能cifs 软件包没安装,如果不知道 我们可以直接猜, 想以后工作经常用到,比如某个软件包没有 也不知道名字,但是可以用猜的方式 在光盘 过滤 掉 名字,比如网络 就猜 network ,这里 cifs 一样 就猜cifs 就可以了 直接安装

Samba文件共享服务(共享脚本 让你工作更轻松)

下面直接访问自己的window 文件了 很方便吧!


为了更加方便本人自己做的脚本:

@ECHO Off
color 1F
ECHO.
ECHO              ╭════════════════╮
ECHO ╭═════┤===  局域网共享  ===├═════╮
ECHO ║          ╰════════════════╯          ║
ECHO ║  本程序可以共享局域网文件    技术空制作                ║ 
ECHO ║                                                        ║              
ECHO ╰══┤================================├══╯
echo.
echo -----------------------------------------------------------
set/p ip=请输入本地连接的IP地址:
set/p sh=共享名:
set/p us=请输入用户名:
set/p pa=请输入密码:
echo -----------------------------------------------------------
net use 
\\%ip%\%sh%"%pa%" /user:"%us%"
net share
echo -----------------------------------------------------------
net use Z: 
\\%ip%\%sh%
echo -----------------------------------------------------------
net use /d *
echo -----------------------------------------------------------
echo.
echo 按回车退出
echo.
echo -----------------------------------------------------------
set /p test=
exit

有问题可以找我 直接做成共享脚本,直接双击使用特别方便


Samba文件共享服务(共享脚本 让你工作更轻松)

Samba文件共享服务(共享脚本 让你工作更轻松)

Samba文件共享服务(共享脚本 让你工作更轻松)

Samba文件共享服务(共享脚本 让你工作更轻松)


亲们,是不是很方便,维护起来很方便 直接双击自己的电脑有个网盘 直接打开就是文件共享的文件夹!使你工作轻松很多,在公司里面FTP和文件共享经常使用。但是有很多人不会访问,所以管理员有时压力很大,如果每个人都问你一遍,你来来回回增加很大的工作量,一个小脚本搞定!



本文转自 cs312779641 51CTO博客,原文链接:http://blog.51cto.com/chenhao6/1218028