网络共享samba

Samba主要来实现磁盘和打印机共享

Nmbd  服务进程

Smbd  服务进程

开放的端口 137  138    139  445

137138  主要是资源的宣告   udp协议

139 445  主要是资源的共享及连接控制   tcp协议

samba的实现

Windows  下的很好实现,这里就不多说了

下面主要是Linux 下的实现

安装 

samba (主要包含了 samba 的主要 daemon文件 ( smbd 及 nmbd )、 samba的文档 ( document )、以及其它与 samba 相关的logrotate 设置文件及开机预设文件等;

samba-common  (smb 的主配置文件在这里smb.confsmb.conf 语法检验的测试程序 ( testparm )等等; 

samba-client   (提供了当 Linux 做为samba Client 端时,所需要的工具指令,例如挂载 samba 文件格式的执行 smbmount等等。

1、查看是否已经安装

2、安装samba-server

rpm -ivh samba-3.0.33-3.14.el5.i386.rpm     (可能需要安装依赖,你也可以直接yum -y install samba

3、编辑/etc/samba/smb.conf       

     workgroup = MYGROUP   指定samba的工作组

    server string = Samba Server Version %v   说明信息(%v是指samba服务器的版本)

;    netbios name = MYSERVER    samba服务器名

;    interfaces = lo eth0 192.168.12.2/24 192.168.13.2/24  监听的网卡接口

;    hosts allow = 127. 192.168.12. 192.168.13.          安全设置  

你可以设置samba服务器只监听某个网卡的ip

如:interfaces = 192.168.2.100/24

    bind interfaces only = YES    要加上这句话这样会更安全

将安全级别改为share即共享级别可以匿名访问

security = share

还有user级别    要身份验证   本地samba账号库

Server级别   要身份验证  其他server的账号库

Domain      要身份验证   域里的dc

4、启动samba服务

 service  smb  start

可以看到默认监听所有

关于samba的配置还有很多,下面就通过一个下例子简单介绍一下

共享根目录为/samba  

匿名用户访问到/samba/public目录里

用户user1 访问到/samba/user1目录里

用户user2访问到/samba/user2目录里

A、mkdir /samba    建立共享的目录

   cd /samba/

   mkdir user1 user2 public     

先建立这些目录,并在public user1 user2 里见一些文件,以便访问时可以看到

useradd user1  |useradd user2  建立这两个用户

chown user1.user1 user1 |chown user2.user2 user2  改变/samba/user1 /samba/user2的所用者和所属组

B、创建smb账号库

smbpasswd -a user1

Password

smbpasswd -a user2

Password

C、编辑smb.conf

security = user    安全级别改为user

网络共享samba_第1张图片

重启samba服务

D、在window下访问

有以下几种方式

(1)网上邻居 (2)计算机搜索 (3UNC路径 \\ip地址\共享名

(4)网络驱动器映射

网络共享samba_第2张图片

输入用户名和密码 就能看到如下的共享

网络共享samba_第3张图片

Public 文件夹,user1user2都可以进入   user2进不了 它会让你输入user2的用户名和密码。。。

E、在linux下访问windows下的共享

查看主机192.168.2.200的共享

1smbclient -L //192.168.2.200

Password     密码为空

2smbclient -L //192.168.2.200 -U wsm  wsmwindows的账户)

Password     密码为用户wsm的密码

访问共享

网络共享samba_第4张图片

也可以用wsm用户登录

smbclient  //192.168.2.200/win  -U wsm  

Password 

之后就可以访问共享资源了

也可以做网络驱动器映射 使之映射到本地

mount.cifs //192.168.2.200/win /mnt/win/ -o username=wsm,password='wsm'

或者 mount -t cifs //192.168.2.200/win /mnt/win/ -o username=wsm,password='wsm'

网络共享samba_第5张图片

开机自动挂载

编辑 /etc/fstab 文件 添加如下一句

//192.168.2.200/win     /mnt/win  cifs    defaults,username=wsm,password=wsm 0 0 

umount  /mnt/win

mount  -a

这样就可以了,但是fstab文件任何人都可以查看,我们的用户名和密码就会泄露

所以可以这样添加fstab

//192.168.2.200/win     /mnt/win        cifs    defaults,credentials=/root/use 0 0 

Vim  /root/use  root目录里新建use文件内容如下:

username=wsm

password=wsm

Chmod 400 use

这样就会更加安全了