linux之samba服務的簡單運用

    能提供文件共享的常見服務:ftp, nfs,sambanode

在windows中藉助netbios(廣播方式,主要功能是主機名解析),cifs(common internet file system),smb(service message block)來實現文件共享。linux

samba主要有兩個進程:ios

nmbd:模擬netbios的功能,讓linux主機能出如今windows主機上的網上鄰居里vim

smbd:實現文件共享功能windows

samba用戶賬號:安全

必須是系統用戶,但samba本身維護一個訪問samba服務的專用密碼。

samba安全級別:bash

share:容許匿名訪問samba服務器

user:提供有效的賬號密碼才能訪問dom

server:集中身份認證(提供一臺專門的認證服務器)ide

domain:賬號和密碼在DC(域控)

samba接受SELinux控制

samba支持基於IP的訪問控制

samba經過[homes]支持本地用戶經過samba訪問本身的家目錄

Web GUI: swat (xinet)

創建一個samba服務器,達到以下要求:

一、每一個用戶登錄samba後都有一個自家的目錄,對自家目錄擁有rwx的權限,且限定其所使用的空間大小;

二、每一個用戶登錄後均可查看到一個公共的共享目錄,此目錄對普通的用戶只有讀取權限;

思路:

一、準備一個獨立的分區,此分區啓用磁盤配額,對各個用戶設置配額;

二、編輯smb.conf配置文件,增長獨立的共享目錄;

samba用戶家目錄及共享目錄的準備:

事先準備好一個獨立的分區。要想啓用quota,那必須是單獨的分區,因此得準備一個分區,並掛載到系統中

[root@bogon ~]# mkdir /samba
[root@bogon ~]# blkid /dev/sda4   #/dev/sda4是一個獨立的分區
/dev/sda4: LABEL="SAMBA_HOME" UUID="504627df-fa43-4768-9459-6f01ef991e2e" TYPE="ext4"
[root@bogon ~]# vim /etc/fstab   #在最後加入下邊一行
UUID=504627df-fa43-4768-9459-6f01ef991e2e     /sambahome                 ext4      defaults,usrquota,acl     0 0

注:「acl」的意思開啓掛載分區的訪問控制,便於使用「setfacl命令」,否則會報Operation not supported」錯誤。

[root@bogon ~]# mount -a
[root@bogon ~]# mount
/dev/sda2 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")
/dev/sda1 on /boot type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
/dev/sda4 on /sambahome type ext4 (rw,usrquota,acl)
[root@bogon ~ ]# mkdir /samba/{home,share}

普通用戶及管理用戶的建立:

[root@bogon ~]# useradd -c "samba user" -d /samba/home/samba1 samba1
[root@bogon ~]# smbpasswd -a samba1
[root@bogon ~]# useradd -c "samba admin user" -d /samba/home/sambaadmin sambaadmin
[root@bogon ~]# smbpasswd -a sambaadmin

samba安裝配置:

系統環境:

[root@bogon ~]# cat /etc/redhat-release
CentOS release 6.4 (Final)
[root@bogon ~]# uname -r
2.6.32-358.el6.x86_64
[root@bogon ~]# yum -y install samba
[root@bogon ~]# yum -y install samba-client   #samba客戶端工具單獨安裝
[root@bogon ~]# cd /etc/samba/
[root@bogon samba]# ls #主配置文件爲smb.conf
lmhosts     smb.conf     smbusers
[root@bogon samba]# cp smb.conf smb.conf.back
[root@bogon samba]# vim smb.conf

說明:smb.conf配置文件在咱們的通常運用中,要修改的地方很少,通常在[global]中修改」workgroup = MYGROUP「

爲」workgroup = WORKGROUP「便可,而後在最後的」Share Definitions「增長相應配置以下:

[sambashare]
       comment = sambashare
       path = /samba/share
       public = yes
writable = yes
        write list = +sambaadmin     #只有sambaadmin這個組中的成員纔能有寫的操做
       guest ok = yes
       browseable = yes
[root@bogon ~]# setfacl -m u:sambaadmin:rwx /samba/share/   #設置samba管理用戶對share目錄的權限。
[root@bogon ~]# for i in nmb smb;do service $i start;done   #啓動服務
[root@bogon ~]# smbclient -L 192.168.1.200 -Usamba1   #用客戶端工具本地測試服務器已共享了哪目錄
[root@bogon ~]# smbclient //192.168.1.200/samba1 -Usamba1  #進入samba的交互模式

啓用磁盤配額:

[root@bogon ~]# yum list | grep quota
quota.x86_64 1:3.17-20.el6 base
quota-devel.i686 1:3.17-20.el6 base
quota-devel.x86_64 1:3.17-20.el6 base
[root@bogon ~]# yum -y install quota
[root@bogon ~]# quotacheck -cvu /samba/
[root@bogon ~]# ls /samba/
aquota.user     home     share
[root@bogon ~]# edquota samba1   #對普通用戶啓動配額,設置空間的使用限制爲10MB。
Disk quotas for user samba1 (uid 500):
 Filesystem                    blocks    soft       hard         inodes        soft        hard
 /dev/sda4                         20           0      10240            5                0           0                     #這裏的單位是KB
[root@bogon ~]# quotaon -auv  #激活quota的功能
[root@bogon ~]# for i in nmb smb;do service $i restart;done  #重啓服務

接下來就能夠在windows端進行測試了。

注意:

samba有兩個守護進程:smbd監聽139TCP端口

nmbd監聽137和138UDP端口

smbd進程的做用是處理smb請求包,負責用戶驗證和文件共享;nmbd進程的做用是處理瀏覽共享各計算機名稱解析。

所在windows下用"運行-->\\IP地址"的方式來訪問共享時,能夠不啓用nmb這個服務,也同樣可使用共享資源。

在windows 下用命令"net use"查看已創建的鏈接,用「net use \\192.168.1.200\IPC$ /delete」命令清除已創建的鏈接。

[root@bogon ~]# repquota -a   #打印出各個用戶的配額使用報告
*** Report for user quotas on device /dev/sda4
Block grace time: 7days; Inode grace time: 7days
                                           Block limits                                                                        File limits
User                   used              soft         hard           grace           used           soft           hard              grace
-------------------------------------------------------------------------------------------------------  
root --                   12                0              0                                       3                 0               0
samba1 --           3800              0            10240                                40                0               0
sambaadmin --     16                0             0                                        5                 0               0

至此結束!!!

相關文章
相關標籤/搜索