1 安裝
yum -y install samba linux
2 修改配置文件
vi /etc/samba/smb.conf
1)全局配置
[global]
workgroup = WORKGROUP #要訪問的電腦的工做組名,windows通常默認都爲這個
hosts allow = 127. 192.168.128. #去掉前面的分號,並修改能訪問的網段(注意,因爲本地與虛擬機是經過nat聯網的,因此這裏的網段是虛擬機的網段)
security = share #訪問的方式,share不須要密碼,user須要用戶名和密碼windows
2)文檔最後添加共享的目錄,而且容許寫操做
[public]
comment = public Stuff
path = /home/samba
public = yes
writable = yes服務器
3 建立共享文件
mkdir /home/samba網絡
4 修改共享文件權限
chmod 777 /home/sambatcp
添加samba用戶ide
使用smbpasswd添加samba用戶,用戶必須是linux系統中已有的用戶,密碼則沒必要和系統用戶相同。ui
若是沒有,添加用戶先。spa
#useradd smbrest
# smbpasswd smb (在windows下訪問linux須要的密碼)
New SMB password:
Retype new SMB password:
Failed to find entry for user root.
Failed to modify password entry for user rootorm
出現上面這個錯的緣由是由於須要爲root用戶建立一個用戶,使用smbpasswd –a root就能夠解決了。
說明是沒有該用戶,請使用 -a 參數
OPTIONS
-a
This option specifies that the username following should be added to the local smbpasswd file, with the new
password typed (type <Enter> for the old password). This option is ignored if the username following
already exists in the smbpasswd file and it is treated like a regular change password command. Note that
the default passdb backends require the user to already exist in the system password file (usually
/etc/passwd), else the request to add the user will fail.
This option is only available when running smbpasswd as root.
解決方法:
加參數‘-a’:
# smbpasswd -a 用戶便可,以下:
# smbpasswd -a smb
New SMB password:
Retype new SMB password:
Added user root.
(5)修改/etc/samba/smb.conf,在其中添加:
[public]
valid users = smb(用戶名)
5 防火牆開放端口(或者是直接關閉 /etc/init.d/iptables stop)
1)開放端口
iptables -I INPUT -p udp --dport 137 -j ACCEPT
iptables -I INPUT -p udp --dport 138 -j ACCEPT
iptables -I INPUT -p tcp --dport 139 -j ACCEPT
iptables -I INPUT -p tcp --dport 445 -j ACCEPT
2)保存配置
/etc/init.d/iptables save
3)重啓防火牆
/etc/init.d/iptables restart
selinux設置
默認的,SELinux禁止網絡上對Samba服務器上的共享目錄進行寫操做,即便你在smb.conf中容許了這項操做。 假設你已經配置了共享目錄/share並容許用戶進行讀寫,而你又不想關閉SELinux的話,能夠試試如下操做:
程序代碼:
#/usr/sbin/setsebool -P allow_smbd_anon_write=1 #chcon -t public_content_rw_t /home/samba
其中第一條語句設置SELinux放行標記了public_content_rw_t的內容,第二條語句把欲共享的/share目錄標記爲public_content_rw_t。 附SELinux資料:selinux簡介SElinux 在linux內核級別上提供了一個靈活的強制訪問控制系統(MAC),這個強制訪問控制系統是創建在自由訪問控制系統(DAC)之上的。
6 啓動samba服務
/etc/init.d/smb start
7 開機啓動
chkconfig smb on