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

上搭建 文件共享服务器!

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

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

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


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

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


Samba文件共享服务(共享脚本 让你工作更轻松)_局域网 Samba 脚本 共享_03


Samba文件共享服务(共享脚本 让你工作更轻松)_局域网 Samba 脚本 共享_04

安装软件

建测试文件夹

过滤配置文件 然后编辑配置文件:在 /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 脚本 共享_05

必须关掉防火墙

Samba文件共享服务(共享脚本 让你工作更轻松)_局域网 Samba 脚本 共享_06

测试能不能访问

Samba文件共享服务(共享脚本 让你工作更轻松)_局域网 Samba 脚本 共享_07

Samba文件共享服务(共享脚本 让你工作更轻松)_局域网 Samba 脚本 共享_08

文字就是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文件共享服务(共享脚本 让你工作更轻松)_局域网 Samba 脚本 共享_09


[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文件共享服务(共享脚本 让你工作更轻松)_window_10

然后访问

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


可以进入自己的组

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

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

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

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

清楚远程列表信息

Samba文件共享服务(共享脚本 让你工作更轻松)_局域网 Samba 脚本 共享_15

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

建个测试文件

Samba文件共享服务(共享脚本 让你工作更轻松)_局域网 Samba 脚本 共享_17

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

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

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

Samba文件共享服务(共享脚本 让你工作更轻松)_局域网 Samba 脚本 共享_20

Samba文件共享服务(共享脚本 让你工作更轻松)_局域网 Samba 脚本 共享_21


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

Samba文件共享服务(共享脚本 让你工作更轻松)_局域网 Samba 脚本 共享_22

Samba文件共享服务(共享脚本 让你工作更轻松)_局域网 Samba 脚本 共享_23

Samba文件共享服务(共享脚本 让你工作更轻松)_局域网 Samba 脚本 共享_24

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


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


3:用window共享 linux访问服务


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

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

Samba文件共享服务(共享脚本 让你工作更轻松)_局域网 Samba 脚本 共享_27

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

然后挂载进去!

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

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

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

下面直接访问自己的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文件共享服务(共享脚本 让你工作更轻松)_window_31

Samba文件共享服务(共享脚本 让你工作更轻松)_局域网 Samba 脚本 共享_32

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

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


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