第一步:
進入 /etc/samba 目錄,備份下smb.conf,然後刪除這個文件,自己重新建立一個,輸入如下內容
代碼如下:
[global]
workgroup = WORKGROUP
netbios name = www.e2fsck.org # 這裡重點中的重點,這個名字最好和機器名一樣,遠程訪問的時候就用這個名字
server string = e2fsck is samba server
security = share
load printers = no #不加載打印機
disable spoolss = yes #隱藏打印機
cups options = raw #打印機類型
unix charset = utf8
dos charset =GBK
display charset = utf8
client lanman auth = yes
client plaintext auth = yes
hosts deny = 192.168.0.55 #阻止這個IP訪問SMB
[wujie]
path = /var/wujie
writeable = yes
browseable = yes
guest ok = yes
簡單解釋下上面的內容 [global]全局配置,必須有。前3行都是顯示說什麼的,security 如果是share就是不用帳號密碼,如果是user就是要驗證的。
[wujie]這個是在客戶端顯示出來共享的目錄,path 就是共享的路徑了,guest ok 為yes就是不要身份驗證。
第二步:
在 /var/目錄建立個文件夾叫 wujie 用來做共享文件夾用
代碼如下:
[root@localhost ~]# id nobody
uid=99(nobody) gid=99(nobody) groups=99(nobody)
[root@localhost ~]# chown -R nobody:nobody /var/wujie
OK,然後重啟SMB服務器 service smb restart 和 service nmb start 一個簡單不用驗證的共享服務器就搞定了。
第三步: 做一個需要帳號密碼的共享服務器
1. 先用命令 useradd wujie -s /sbin/nologin(系統建立一個叫wujie的帳號且不能登陸系統)
2. 然後再用命令 smbpasswd -a wujie (用這個命令來添加一個SMB的帳戶叫wujie)
3. chown wujie:wujie /var/wujie (讓wujie帳戶可以有權限使用/var/wujie這個目錄)
4. 然後修改 /etc/samba/smb.conf 中:
代碼如下:
[global]
workgroup = WORKGROUP // 用來指定你的機器上網絡上所述的NT域名
netbios name = www.e2fsck.org //主機名,用來訪問用的地址,重要
server string = e2fsck is samba server
guest account = wujie //如果希望建立一個賬號,再次填入用戶名,同時在 /etc/passwd 中加入這個賬號,否則使用默認的’nobody’作為賬號
security = user
// 這是samba服務器的安全等級。默認為user等級。samba 一共有4種安全等級。
1. share級,共享安全級,用戶不需要輸入賬號和密碼就可以登陸
2. user級, 用戶安全級,用戶需要賬號和密碼才能登陸
3. server級, 服務器安全級, 檢查密碼的工作可以指定另一台samba服務器完成
4. domain域安全級, 需要指定一台XP等服務器驗證用戶密碼
代碼如下:
unix charset = utf8
dos charset = GBK
display charset = utf8
client lanman auth = yes
client plaintext auth = yes
代碼如下:
[wujie]
path = /var/wujie
writeable = yes
browseable = yes
guest ok = no //用戶需要密碼,yes為不需要密碼(需要配合上面的 security等級)
comment = wujie
valid users = wujie //可訪問的用戶
public = no //匿名用戶看不到
create mask = 0777
主要就是把security改成user guest ok改成no
5. 最後 service smb restart 和 service nmb start 這樣就做了個帶命令訪問的共享文件服務器了
6. 如果開了防火牆打開
代碼如下:
[root@s ~]# iptables -A INPUT -p tcp –dport 139 -j ACCEPT
[root@s ~]# iptables -A INPUT -p tcp –dport 445 -j ACCEPT
[root@s ~]# iptables -A INPUT -p udp –dport 137 -j ACCEPT
[root@s ~]# iptables -A INPUT -p udp –dport 138 -j ACCEPT
[root@s ~]# iptables -A INPUT -i lo -j ACCEPT