关于samba无法访问,你可能没有权限使用网络的解决办法

这个问题刚刚解决了,真是太爽了,现在总结一下:

运行环境:主机WINXP

虚拟机:Fedora 9

之前一直没有看到共享图标,原因归结没设置好。

1,在虚拟机下,设置samba服务器以及用户,添加目录

2,虚拟机网卡要和主机网卡在同一网关下

3,修改/etc/samba/smb.conf有一个localhostallow要改成你的主机所在的IP范围,之后其它选项也要修改

[global]
  workgroup=随便写
  sercurity=share
[共享名]
  path=路径
  browseable=yes
  writable=yes
  guest ok =yes
退出保存
 进入共享文件目录
改共享文件的所有者
  chown nobody:nobody 文件名
该一下权限774
 启动就可以拉
  那你就可以从WINDOWS访问并写东西进去拉。

4,关闭双边的防火墙,在虚拟机下,有setenforce 0 是关闭selinux,service iptablesstop关闭这个也是关闭防火墙

5,相互ping一下,如果相互能通,继续下一步

6,我在执行setenforce 0之后网上邻居出现图标但不能访问。由此,需要在XP下做一些设置

 1、检查计算机之间的物理连接。
网卡是否安装正确,在系统中是否存在资源冲突。交换机或者集线器等网络设备是否正常工作。网线是否都是通的,接法是不是正确(如果有中心节点的局域网,网线要用直通线,两头都是用568B的接法;双机通过网卡直接互联,网线应该用交叉线,一头为568A,一头为568B;没有UP-link端口的集线器级联要用交叉线,交换机和集线器级联,交换机和交换机级联都用直通线。568A接法:绿白、绿、橙白、蓝、蓝白、橙、棕白、棕;568B接法:橙白、橙、绿白、蓝、蓝白、绿、棕白、棕)。

 2、确保所有计算机上都安装了TCP/IP协议,并且工作正常。
    检测TCP/IP协议是否正常工作,可以PING 127.0.0.1,如果ping通,证明正常。
   在98和2k中添加删除协议是很简单,这里就不介绍了。但是该协议是Microsoft XP/2003的核心组件,是不能删除(不信你可以到XP里,卸载的按钮是灰色不可用的)。但是我们可以使用NetShell实用程序使TCP/IP协议恢复到初次安装操作系统时的状态。
    在命令提示符里运行该命令:
netsh int ip reset c:\resetlog.txt,
其中,Resetlog.txt记录命令结果的日志文件,一定要指定,这里指定了Resetlog.txt日志文件及完整路径。运行此命令的结果与删除并重新安装TCP/IP协议的效果相同。
    3、使用ping命令测试网络中两台计算机之间的连接和网络中名称解析是否正常
    ping对方IP是很简单的,这里不多说了,不明白的自己上网搜资料去。ping名称格式ping计算机的名称。通过ping命令用名称测试计算机连接,确定计算机的名称的方法是:在命令提示符处,输入SYSTEMINFO。或者在桌面上右击我的电脑-属性,然后单击计算机名称。如果看到该命令的成功答复,说明您在计算机之间具有基本连接和名称解析。
     4、正确设置网络:
     IP地址是否在同一个子网内。在TCP/IP协议上是否捆绑NETBIOS解析计算机名(在TCP/IP协议属性——高级——WINS——选择启用TCP/IP上的NETBIOS)。
     查看是否选定“文件和打印服务”组件,所有计算机也都必须启用“文件和打印共享”。在网上邻居和本地连接属性里可以看到是否安装了打印机与文件共享。如果在网上邻居中看不到自己的机器,说明你没有安装打印机与文件共享。
     5、启动"计算机浏览器"服务
   WIN2K/XP要确保计算机浏览服务正常启动。打开计算机管理->服务和应用程序->服务,查看“ComputerBrowser”没有被停止或禁用。
     6、运行网络标识向导,将你的计算机加入局域网
     控制面板——系统——计算机名,单击“网络ID”,开始“网络标识向导”下一步之后,选择第一项“本机是商业网络的一部分,用它连接到其他工作着的计算机”;继续“下一步”,选择“公司使用没有域的网络”;再下一步,就输入你的局域网的工作组的名称。完成之后,重新启动计算机!
     7、Win2k和XP安装NetBEUI协议(关于这个问题我还和一个网友进行争吵,这里向他表示歉意)
     在Win2k和XP中NetBEUI协议是一个高效协议在局域网中使,因此最好能安装此协议
2K中的安装:网上邻居->属性->本地连接->属性---->安装------>协议------->NetBEUIProtocol
NetBEUI 通讯协议已不是 Windows XP 的一部份 ,但仍然将它保存在 Windows XP 的光盘内,安装办法如下:
将 Windows XP 的光盘放入光驱内,并开启 \\VALUEADD\\MSFT\\NET\\NETBEUI目录;
复制 nbf.sys 到 %SYSTEMROOT%\\SYSTEM32\\DRIVERS\\ 目录
复制 netnbf.inf 到 %SYSTEMROOT%\\INF\\ 目录
网上邻居——属性——本地连接——属性——安装——协议—— 选NetBEUI Protocol——添加,便进行安装重新启动电脑生效
     8、启用Guest(来宾)帐户
     XP和2k的Guest帐户允许其他人使用你的电脑,但不允许他们访问特定的文件,也不允许他们安装软件。可以使用下面的命令授予来宾帐户网络访问:
     net user guest /active:yes
     或者打开控制面板->用户帐户或者在管理工具->计算机管理->本地用户和组中打开Guest帐户
     9、查看本地安全策略设置是否允许Guest(来宾)帐号从网络上访问。
     在运行里输入gpedit.msc,弹出组策略管理器,在‘计算机配置-Windows设置-本地策略-用户权利指派’中,有“拒绝从网络访问这台计算机”策略阻止从网络访问这台计算机,如果其中有GUEST帐号,解决办法是删除拒绝访问中的GUEST帐号。或者在“从网络上访问该计算机”添加帐号
     10、正确设置防火墙:
     确保WINXP自带的防火墙没有开启,打开本地连接属性->高级,关掉Internet连接防火墙。如果使用了第三方的防火墙产品,参考其使用手册,确保防火墙没有禁用以下端口:UDP-137、UDP-138、TCP-139、TCP-445。
   11、检查RPC、Plug and Play服务已启动,检查相应的系统文件夹的权限,重新注册以下的动态链接库:
     regsvr32 netshell.dll
     regsvr32 netcfgx.dll
     regsvr32 netman.dll
     14、设置帐号和密码
     由于WinNT内核的操作系统,在访问远程计算机的时候,好像总是首先尝试用本地的当前用户名和密码来尝试,可能造成无法访问,可以在要访问的计算机中把用户密码添加进去,并在‘计算机配置-Windows设置-本地策略-用户权利指派’中,在“从网络上访问该计算机”中添加用户就可以了。
     15、尝试用多种方法访问“网络计算机”。
     通过IP访问,在地址栏上输入在地址输入栏中输入“\\IP地址\”,单击“确定”。   通过计算机用计算机名访问,在地址栏输入“\\计算机名字\”,单击“确定”。
     用搜索计算机的方法访问,计算机更新列表需要时间,搜索计算机可以加快更新列表。点击“网上邻居”右键中的“搜索计算机”,输入计算机名,点击“立即搜索”,就可以看到你要访问的计算机。直接双击右边计算机名就可以打开它了。
     用映射驱动器的方法访问,进入命令提示符,输入“NET VIEW\计算机名”,回车?这是查看对方计算机上有哪些共享文件夹,如E。再输入NET USEZ:\计算机名字\E?将对方计算机共享的文件夹E映射为H:盘,在命令提示符下键入“H:”。你会发现你已经连到计算机上了。
     16、改变网络访问模式试试咯:
     打开组策略编辑器,依次选择“计算机配置→Windows设置→安全设置→本地策略→安全选项”,双击“网络访问:本地账号的共享和安全模式”策略,将默认设置“仅来宾—本地用户以来宾身份验证”,更改为“经典:本地用户以自己的身份验证”。
    现在,当其他用户通过网络访问使用Windows XP的计算机时,就可以用自己的“身份”进行登录了(前提是WindowsXP中已有这个账号并且口令是正确的)。
当该策略改变后,文件的共享方式也有所变化,在启用“经典:本地用户以自己的身份验证”方式后,我们可以对同时访问共享文件的用户数量进行限制,并能针对不同用户设置不同的访问权限。
    但是用户的口令为空时,访问还是会被拒绝。这是应为在“安全选项”中有一个“账户:使用空白密码的本地账户只允许进行控制台登录”策略默认是启用的,根据WindowsXP安全策略中拒绝优先的原则,密码为空的用户通过网络访问使用WindowsXP的计算机时便会被禁止。我们只要将这个策略停用即可解决问题。

 

17 XP 需要修改机码才能登陆
修改登錄檔:執行 -> regedit,將下列機碼改為 0

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\netlogon\parameters
"RequireSignOrSeal"=dword:00000000

此機碼是設定安全通道的資料進行加密或簽名,Windows 2000 的預設值為 0,XP 的預設值則為1。根據微軟的官方網頁,此機碼是當所處的信任網域均支援加密簽名通訊時才可設為 1。看來,微軟希望增加網域通訊的安全性,認為 XP所處的信任網域


<think>好的,我需要帮助用户解决在Ubuntu 24.04上配置Samba服务时,Windows客户端只有读取权限而无法写入的问题。首先,我应该回顾一下用户提供的引用内容,看看里面有没有有用的信息。 用户提到了三个引用:[^1]、[^2]、[^3]。引用[^1]提到正确设置后,Windows用户可以通过Samba共享的文件夹进行写入。引用是关于如何在Windows中映射网络驱动器的步骤。引用[^3]则提到了安装Samba服务和创建共享文件夹的基本流程。 接下来,我需要根据这些信息构建解决方案。首先,确保Samba服务已正确安装和配置。可能权限问题可能出在Samba的配置文件上,特别是共享文件夹的权限设置。用户可能没有正确设置Samba的写入权限或者Linux文件系统的权限。 首先,检查Samba配置文件/etc/samba/smb.conf中的共享定义部分。需要确认共享目录的writable或writeable参数是否设置为yes。例如: \[ [share] path = /path/to/shared/folder writable = yes guest ok = yes \] 然后,确保Linux文件系统上的共享目录权限允许写入。可能需要使用chmod更改目录权限,比如设置为775或777,或者确保用户所属的组有写入权限。同时,使用chown更改目录所有者,例如设置为nobody:nogroup或者对应的Samba用户。 此外,Samba用户账户可能需要单独设置,使用smbpasswd -a username命令添加用户并设置密码,这样Windows客户端可以使用该用户登录以获得写入权限。 还有可能需要检查SELinux或AppArmor的安全策略是否阻止了写入操作,临时禁用或调整这些设置以测试是否是问题所在。 最后,重新加载Samba服务使配置生效,并确保Windows客户端使用正确的凭据连接共享文件夹,而不是以guest身份访问。 总结步骤应该是:1. 检查Samba配置中的写入权限;2. 设置正确的文件和目录权限;3. 配置Samba用户;4. 处理可能的安全策略;5. 重新加载服务并测试。同时引用用户提供的参考中的安装和映射步骤,确保整个流程正确。</think>### Ubuntu 24.04 Samba共享写入权限配置指南 #### 1. **检查Samba配置文件权限设置** - 打开Samba主配置文件: ```bash sudo nano /etc/samba/smb.conf ``` - 在共享目录定义中添加以下参数: ```ini [共享名称] path = /path/to/shared/folder writable = yes create mask = 0775 directory mask = 0775 force user = your_username # 可选,强制文件归属用户 ``` 关键参数说明: - `writable=yes`:允许写入操作 - `create mask`和`directory mask`:控制新建文件和目录的权限[^3] - `force user`:可解决用户权限不一致问题 #### 2. **设置Linux文件系统权限** ```bash sudo chmod -R 775 /path/to/shared/folder # 设置目录权限 sudo chown -R your_username:users /path/to/shared/folder # 设置归属用户和组 ``` #### 3. **配置Samba用户认证** ```bash sudo smbpasswd -a your_username # 添加Samba用户并设置密码 sudo systemctl restart smbd # 重启服务生效 ``` #### 4. **验证安全策略** - 临时禁用SELinux(如系统启用): ```bash sudo setenforce 0 ``` - 检查防火墙规则: ```bash sudo ufw allow samba ``` #### 5. **Windows客户端连接测试** 1. 在文件资源管理器地址栏输入: ``` \\ubuntu_ip_address\共享名称 ``` 2. 右键映射网络驱动器时选择"使用其他凭据",输入Samba用户名和密码 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值