linux samba 配置

Samba

Windows文件共享

         Windows主機之間使用SMB/CIFS網絡協議實現文件和打印資源的共享

         Windows無法與UNIX/Linux主機之間實現資源共享

Samba服務器

         Samba服務器在UNIX系統中實現了SMB/CIFS協議

         通過Samba服務可以實現UNIX/Linux主機與Windows主機之間的資源互訪

 

 

特點:

         必須是系統用戶,但使用獨立密碼訪問

         默認安裝samba並添加用戶(smbpasswd -a 用戶名),即可訪問自己的宿主目錄(可讀寫)

 

一、samba的安裝

查看是否安裝了samba

         rpm-q samba

         查到samba-3.0.33-3.28.el5說明已安裝

 

默認安裝了客戶端:

rpm -qa | grep samba

         samba-client-3.0.33-3.28.el5

         samba-common-3.0.33-3.28.el5

 

 

安裝

yum -y install samba

 

 

啓動服務

/etc/rc.d/init.d/smb start

service smb start

 

 

兩個進程:

         smbd   ---> tcp 139  用戶驗證和文件共享

         nmbd   --->udp 137  138  瀏覽共享和計算機名解析

 

ps -le | grep smbd

ps -le | grep nmbd

 

 

 

一、用戶管理

1.首先必須是系統用戶,添加Linux系統用戶

         useradd用戶名                        #添加用戶

         passwd用戶名                         #設置密碼

 

 

2.然後設置samba的密碼(samba自帶的用戶管理工具)

         smbpasswd-a 用戶名             #加用戶

         smbpasswd用戶名                 #smb密碼

 

         root可以使用管理命令(系統自動的samba用戶數據庫管理工具)

         pdbedit-a username:新建Samba賬戶。

         pdbedit-x username:刪除Samba賬戶。

         pdbedit-L:列出Samba用戶列表,讀取/etc/samba/passdb.tdb數據庫文件。

         pdbedit-Lv:列出Samba用戶列表的詳細信息。

 

二、建立samba連接

爲了安全,不要把root設爲samba用戶

 

重啓服務

service smb restart

 

Windows中如何連接:

 

         \\服務器地址

         \\192.168.88.88

         可以映射網絡驅動器

 

net use

net use * /del /y

net use \\192.168.88.88"password" /user:your_user

 

查看有哪些客戶端連接

         smbstatus

 

查看日誌

         cat/var/log/samba

 

 

------------------------------

如果不能訪問:

防火牆

         iptables-L         查看

         iptables-F         清空防火牆規則,拆除防火牆

        

         即時生效,重啓後復原

         serviceiptables stop

 

         永久性生效,重啓後不會復原

         chkconfigiptables off

        

SELinux

         允許訪問

         setsebool-P samba_enable_home_dirs on

         或完全禁用SELinux

         vi/etc/selinux/config 改爲SELINUX=disabled

 

三、配置文件

如果查找配置文件在哪裏

rpm -ql samba-common | grep smb.conf

 

 

編輯配置文件

vi /etc/samba/smb.conf

 

[global]     全局環境選項

         workgroup        工作組或域

         serverstring    描述信息

         security    安全模式,有如下選項

                   share        不驗證權限,直接共享

                   user缺省,推薦,由LinuxSamba服務器做驗證

                   server       第三方主機驗證

                   domain     第三方主機驗證(必須是Windows 域控制器)

         hostsallow       哪些主機可以訪問(如果沒有配置,全部主機都可以)

                            如果是ip直接寫上,如果是ip段只寫網段部份,多個用空格分隔: 192.168.1. 192.168.2.

                            哪些主機不允許訪問,hosts deny 一般不和hosts allow同時使用

         logfile      日誌文件(最好啓用日誌)

 

[homes]             只要有這個配置段,用戶默認就可以通過自己的用戶名,訪問自己的宿主目錄

         comment          描述

         browseable=no        無權限訪問的目錄,不顯示出來

         writable=yes    可寫

 

[自定義的共享1]

[自定義的共享2]

 

四、samba實例

需求:配置/software目錄的共享,允許user1 user2兩個用戶完全訪問

 

創建目錄

         mkdir/software

 

添加用戶

         useradduser1

         passwduser1

         useradduser2

         passwduser2

添加samba密碼

         pdbedit-a user1

         pdbedit-a user2

 

編輯配置文件

         vi/etc/samba/smb.conf

         建議寫在配置文件尾

         [software]                           共享名,不能有特殊符號,一般是字母或數字組成

         path= /software               共享目錄,只能是一個目錄

         validusers = user1 user2         多個用空格分開。如果沒配置此項,所有用戶都可以訪問

         writable= yes                     寫權限 yes  no

 

Samba服務器配置檢測命令

         testparm

         如果配置文件寫錯,例valid users=user1 寫成了validuser=user1 將提示

 

重啓服務

         /etc/rc.d/init.d/smbrestart

        

設置目錄權限

 

         直接改爲777,但這樣不安全

         chmod-R 777 /software

 

         創建一個用戶組,改變目錄所屬組,對組授權,然後從新連接就可以了

         groupaddsoftadmin

         usermod-aG softadmin user1

         usermod-aG softadmin user2

         chgrpsoftadmin /software

         chmodg+w /software

        

         推薦用acl

         setfacl-R  -m u:user1:rwx /software    #user1rwx權限 (已有目錄或文件)

         setfacl-R  -m d:u:user1:rwx /software          #讓以後新創建的文件或目錄,user1也有rwx權限

         setfacl-R  -m u:user2:rwx /software

         setfacl-R  -m d:u:user2:rwx /software

 

windows 下,重新連接

         netuse * /del /y

         netuse \\192.168.88.88 "password" /user:your_user

 

 

 

提供一個共享目錄,所有有戶都能使用,卻不能刪除別人的文件

[test]

path = /test

wrieable=yes

然後,設置目錄爲  chmod 1777 /test

 

五、擴展

Linux之間使用samba

問題:如何在linux中使用SAMBA服務器的共享目錄?

解答:mount  //192.168.88.88/software  /mnt/software -o username=your_user

>輸入密碼

 

 

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章