在Centos 6.5上的Samba / smbd

我已经安装了Samba4并具有smb.conf文件,如下所示:

[global] workgroup = WORKGROUP server string = Samba Server realm = REXIALO.COM netbios name = REXIALO.COM security = user map to guest = Bad Password bind interfaces only = no interfaces = lo venet0 log file = /var/log/samba/samba.log max log size = 1000 [webroot] path = /usr/local/apache/htdocs comment = Example.com webroot directory read only = No 

我可以使用smbclient从同一台服务器进行连接。

本地主机:

#smbclient -L localhost -U root

Domain = [WORKGROUP] OS = [Unix] Server = [Samba 4.1.11]

  Sharename Type Comment --------- ---- ------- webroot Disk RexiAlo webroot directory IPC$ IPC IPC Service (RexiAlo Samba Server) Domain=[WORKGROUP] OS=[Unix] Server=[Samba 4.1.11] Server Comment --------- ------- Workgroup Master --------- -------Enter root's password: 

networking:

#smbclient -L rexialo.com -U

Domain = [WORKGROUP] OS = [Unix] Server = [Samba 4.1.11]

  Sharename Type Comment --------- ---- ------- webroot Disk RexiAlo webroot directory IPC$ IPC IPC Service (RexiAlo Samba Server) Domain=[WORKGROUP] OS=[Unix] Server=[Samba 4.1.11] Server Comment --------- ------- Workgroup Master --------- ------- 

问题是,当我尝试从Windows 7映射到smb webroot,它要求用户/通过,但只是超时,然后提示input凭据。 samba.log文件不显示除smbd进程启动以外的任何活动。

任何帮助,将不胜感激。

tcpdump输出(服务器端)

 # tcpdump|grep neal-pc tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on venet0, link-type LINUX_SLL (Linux cooked), capture size 65535 bytes 08:45:43.945262 IP rexialo.com.ssh > neal-pc.60224: Flags [P.], seq 4145385672:4145385880, ack 188947689, win 502, length 208 08:45:44.190147 IP neal-pc.60224 > rexialo.com.ssh: Flags [.], ack 208, win 53124, length 0 08:46:10.622737 IP neal-pc > rexialo.com: ICMP echo request, id 1, seq 216, length 40 08:46:10.622787 IP rexialo.com > neal-pc: ICMP echo reply, id 1, seq 216, length 40 08:46:27.901123 IP rexialo.com.ssh > neal-pc.60224: Flags [P.], seq 208:640, ack 1, win 502, length 432 08:46:28.144050 IP neal-pc.60224 > rexialo.com.ssh: Flags [.], ack 640, win 53016, length 0 08:46:29.528999 IP neal-pc.60497 > rexialo.com.http: Flags [S], seq 434975840, win 8192, options [mss 1460,nop,wscale 2,nop,nop,sackOK], length 0 08:46:29.529058 IP rexialo.com.http > neal-pc.60497: Flags [S.], seq 1268998490, ack 434975841, win 14600, options [mss 1460,nop,nop,sackOK,nop,wscale 6], length 0 08:46:29.574194 IP neal-pc.60497 > rexialo.com.http: Flags [.], ack 1, win 16425, length 0 08:46:29.581169 IP neal-pc.60497 > rexialo.com.http: Flags [P.], seq 1:133, ack 1, win 16425, length 132 08:46:29.581225 IP rexialo.com.http > neal-pc.60497: Flags [.], ack 133, win 245, length 0 08:46:29.907133 IP rexialo.com.ssh > neal-pc.60224: Flags [P.], seq 640:1488, ack 1, win 502, length 848 08:46:30.152728 IP neal-pc.60224 > rexialo.com.ssh: Flags [.], ack 1488, win 53248, length 0 08:46:31.077482 IP rexialo.com.http > neal-pc.60497: Flags [.], seq 1:1461, ack 133, win 245, length 1460 08:46:31.077508 IP rexialo.com.http > neal-pc.60497: Flags [.], seq 1461:2921, ack 133, win 245, length 1460 08:46:31.077520 IP rexialo.com.http > neal-pc.60497: Flags [.], seq 2921:4381, ack 133, win 245, length 1460 08:46:31.077530 IP rexialo.com.http > neal-pc.60497: Flags [.], seq 4381:5841, ack 133, win 245, length 1460 08:46:31.077541 IP rexialo.com.http > neal-pc.60497: Flags [.], seq 5841:7301, ack 133, win 245, length 1460 08:46:31.077552 IP rexialo.com.http > neal-pc.60497: Flags [.], seq 7301:8761, ack 133, win 245, length 1460 08:46:31.077572 IP rexialo.com.http > neal-pc.60497: Flags [.], seq 8761:10221, ack 133, win 245, length 1460 

您应该在Samba和Windows机器中configuration相同的WORKGROUP。

如果您有“workgroup = WORKGROUP”

那么你应该在Windows机器上更改为WORKGROUP。

仔细检查Windows机器上的防火墙和其他设置,在samba服务器端运行tcpdump来validationstream量实际上是否到达您的服务器。

我不确定这里到底发生了什么事情,但是又一次没有太多的信息。 由于没有任何协议parsing,我不太确定你的networking捕获。 所以我在这里可以这么说,这里有几个断言(猜测)

  1. 因为你得到提示用户/通行证基本连接正在工作。 由于已经有名称parsing(如果需要),或者您提供了一个IP来挂载。 此外,Windows试图login第一个IIRC的凭据

  2. 这意味着我们可能已经通过了SMB连接的协议协商阶段,并且在会话设置或树连接阶段失败。

我不确定你是否根据你的描述正确地定义了你的用户。 这里有几个解决scheme来适当地添加用户(也许 – 除非我生锈)

  1. smbpasswd -a <username> (你可以使用root,如果你想),它会要求input密码
  2. 当您通过Windowslogin时,使用您定义的密码指定您的samba netbios名称\用户名,如NETBIOS\username

BTW是“。” netBIOS的合法性? 也许把你的NB名改成REXIALOCOM?

或将客人映射到已知的帐户…例如将每个人映射到根目录您可以做

 map to guest = Bad User guest account = root 

这意味着,当桑巴舞会不能识别你的用户时 – 将它映射到根目录(除了你知道你正在做什么外,不要做这些testing以外的其他任何事情)

然后我觉得你需要一个客人在你的分享部分….