安卓samba服务器搭建
① 笔记本怎么搭建samba服务器
1、首先需要登入安装了linux系统的计算机,安装Samba。Fedora发行版一般使用yum工具安装Samba服务器,可以使用“rpm -q samba”查询Samba服务器是否已经安装,当然,也可以直接使用“yum install samba”安装Samba服务器。如果Samba已经安装,yum会给出提示,否则按照步骤,输入“y”就可以直接下载安装Samba服务器了。
2、安装完成之后,需要查看一下Samba是否已经加入到自启动服务。使用“/sbin/chkconfig | grep smb”和“/sbin/chkconfig | grep nmb”命令可以查看smb和nmb是否加入到系统服务。(SMB是Samba共享服务,nmb是NetBIOS服务,为配合Windows使用,他们两个服务都要加入到系统服务中)。然后再使用“/sbin/service smb status”和“/sbin/service nmb status”查看服务是否已经启用。
3、接下来就要配置samba服务器了。编辑修改“/etc/samba/smb.conf”,设置共享和认证参数。如图就是我在用的Samba用户共享典型配置文件。编辑修改完成之后,可以使用“testparm /etc/samba/smb.conf”验证配置文件的有效性,以免因配置文件错误而导致Samba服务无法启动。
4、验证OK的话,接下来就是添加Samba共享用户了,使用“/usr/bin/smbpasswd -a <用户名称>”的方式添加Samba共享用户,并为每个用户设置Samba共享认证的密码。
5、到这里基本上Samba服务器配置就完成了,如果上述步骤中smb和nmb服务没有自动添加到系统服务中,可以使用“/sbin/chkconfig --level 2345 smb on”和“/sbin/chkconfig --level 2345 nmb on”将其加入到系统服务中,其中2345是Linux的运行级别,一般都不会超出这几个运行级别。然后我们就可以使用“/sbin/service smb restart”和“/sbin/service nmb restart”重启服务了。
6、重启完成之后,Windows就可以访问用户共享了。在Windows资源管理器输入“\\共享IP地址\共享用户”,就可以访问用户自己目录下的全部文件了。
7、为了测试共享权限,我们进入用户共享目录,尝试在Windows资源管理器中创建一个“test”目录。
8、回到Linux的用户目录,我们就可以看到,Windows和Linux查看到的用户共享目录是一致的。(你可能觉得看到的文件和目录说不一致,这是因为我的Windows设置了显示隐藏文件和文件夹的缘故。)
② samba如何加入ad域搭建文件共享
1、安装所需软件: 
# yum -y install samba samba-client samba-common samba-winbind samba-winbind-clients krb5-workstation ntpdate 
2、设置服务自启动并启动服务: 
# chkconfig smb on
# chkconfig winbind on
# service smb start
# service winbind start 
3、修改 /etc/hosts 文件,添加主机对应记录: 
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4::1 localhost localhost.localdomain localhost6 localhost6.localdomain
192.168.2.150  lemon20.contoso.com 
4、设置 DNS 地址并与 AD 服务器同步时间: 
# echo "192.168.44.108" >> /etc/resolv.conf
# ntpdate ad.contoso.com 
5、设置 Kerberos 票据(可选): 
销毁已经存在的所有票据: 
# kdestroy 
查看当前是否还存在票据: 
# klist klist: No credentials cache found (ticket cache FILE:/tmp/krb5cc_0) 
生成新的票据,注意域名大写。 
#kinit [email protected]  #检查krb5能否正确请求kerbroes票据
6、以命令方式设置 samba 与 Kerberos,并加入 AD 域: 
#authconfig --enablewinbind --enablewins --enablewinbindauth --smbsecurity domain --smbworkgroup=CONTOSO --smbrealm CONTOSO.COM  --smbservers=ad.contoso.com --enablekrb5 --krb5realm=CONTOSO.COM --krb5kdc=ad.contoso.com --krb5adminserver=ad.contoso.com --enablekrb5kdcdns --enablekrb5realmdns --enablewinbindoffline --winbindtemplateshell=/bin/bash --winbindjoin=administrator --update --enablelocauthorize --enablemkhomedir --enablewinbinsedefaultdomain 
注意命令中的大小写,此步骤也可以使用 authconfig-tui 完成,加入后会提示No DNS domain configured for pmsamba. Unable to perform DNS Update.              
DNS update failed: NT_STATUS_INVALID_PARAMETER    ,此警告可以忽略!
7、增加 sudo 权限(可选): 
# visudo 
加入下列设置: 
%MYDOMAIN//domain/ admins ALL=(ALL) NOPASSWD: ALL 
8、确认是否正确加入 AD 域: 
查看 AD 的相关信息 
# net ads info 
# wbinfo -u 
#wbinfo -t
#wbinfo -g
#getent passwd
#getent group
#testparm    #测试smb.conf是否正确
问题排错:
Cannot find KDC for requested realm while getting initial credentials  dns未正确指向
KDC reply did not match expectations while getting initial credentials  域名不对或者时间不同步
一般检测会提示:              
WARNING: The setting 'security=ads' should NOT be combined with the 'password server' parameter.             
(by default Samba will discover the correct DC to contact automatically).
系统认为己设置了“security = ADS”就不必设置“password server =”因为samba会自己认到,可以忽略此警告!
③ samba安装、配置、排错
 零:场景:
   | 共享名 | 路径 | 权限 |
   | SHAREDOC | /smb/docs | 所有人员包括来宾均可以访问 |
   | RDDOCS | /smb/tech | 仅允许特定组的用户进行读写访问 |
特定组的组名为RD,目前的Alice、Jack、Tom三个人
一、 安装Samba
//或者使用rpm安装
//查看安装版本信息
 Tips:也之前的SAMBA 3有一个重大的变化是:security不再支持share
   WARNING: Ignoring invalid value 'share' forparameter 'security'.
二、 配置Samba服务器
1.创建共享目录(假设共享/smb目录下的文件)
2.配置内核参数
 3.配置smb.conf文件
   1)备份原配置文件:
2)删除原有所有内容,添加如下内容:
 [global]
   workgroup=BIGCLOUD
   netbios name=ZZSRV2
   server string=Samba Server
 security=user
   map to guest = Bad User
   [SHAREDOCS]
   path=/smb/docs
   readonly=yes
   browseable=yes
   guest ok=yes
   [RDDOCS]
   path = /smb/tech/
   public = no
   writable = yes
   write list = @RD
   valisers = @RD
三、 创建用户并分配权限
1.创建操作系统用户
2.修改用户的组
uid=1000(alice) gid=1000(alice)groups=1000(alice),1003(RD)
3.创建SAMBA用户
4.修改目录权限
5.查看服务状态
drwxrwx--- 2 RD RD 4096 Aug 11 17:08 /smb/tech/
 smb.service - Samba SMB Daemon
   Loaded: loaded(/usr/lib/systemd/system/smb.service; enabled)
   Active: active (running) since Tue2014-08-12 11:38:29 CST; 14s ago
   Main PID: 16807 (smbd)
   Status: "smbd: ready to serveconnections..."
   CGroup: /system.slice/smb.service
   16807 /usr/sbin/smbd
   16808 /usr/sbin/smbd
 systemd[1]:Starting Samba SMB Daemon...
   smbd[16807]:[2014/08/12 11:38:29.255341,  0]../lib/util/become_daemon.c:136(daemon_ready)
   systemd[1]:Started Samba SMB Daemon.
   smbd[16808]:STATUS=daemon 'smbd' finished starting up and ready to serve connectionsfailedto retrieve print...CCESSFUL
   Hint:Some lines were ellipsized, use -l to show in full.
四、 测试连通性
1.Linux上测试
Domain=[BIGCLOUD] OS=[Unix] Server=[Samba 4.1.1]
Domain=[BIGCLOUD] OS=[Unix] Server=[Samba 4.1.1]
2.Windows上测试
 1)使用虚拟机(如VMware)安装Linux(如Ubuntu)系统时,为方便Windows和Linux文件互通方便(主要是Windows下访问Linux文件了),一般都会在LINUX下安装Samba服务器。
   在XP下,可以通过[//192.168.3.104](file://192.168.3.104/)(Linux系统IP)进行访问其共享文件,但在WIN7或VISTA下却不行,因为Samba只支持NTLM认证,而WIN7或VISTA则采用NTLMv2认证,因此必须经过一些设置才行,具体设置如下:
   开始->运行->secpol.msc->本地策略->安全选项->网络安全:LAN管理器身份验证级别->发送 LM 和 NTLMv2 ,如果已协商,则使用NTLMv2 (会话安全 &)->完成设置。(如下图所示)
   这时,再使用[//192.168.3.104](file://192.168.3.104/)(Linux系统IP)就可以访问Linux共享文件了   _ 
 2)C:>netuse * /del
   您有以下的远程连接:
继续运行会取消连接。
 您想继续此操作吗? (Y/N) [N]: y
   命令成功完成。
 C:>netuse 192.168.188.12 P@ssw0rd /U:alice
   命令成功完成。
3)打开资源管理器进行写入测试
 4)如果windows下登录samba服务器后无法访问linux下共享目录,提示没有权限。则检查:
   a、确保linux下防火墙关闭或者是开放共享目录权限;
   b、确保samba服务器配置文件smb.conf设置没有问题,可网上查阅资料看配置办法  ;
   c、确保setlinux关闭,可以用setenforce 0命令执行。 默认的,SELinux禁止网络上对Samba服务器上的共享目录进行写操作,即使你在smb.conf中允许了这项操作。
④ samba怎么给安卓共享局域网
Samba是SMB协议的一个免费软件,由服务器及客户端程序构成。SMB意思就是 Server Messages Block,也就是信息服务块,通过smb协议,实现不同的平台不同的路径进行数据分享的一种技术,一般需要服务端提供用户名、账户、访问路径等。
下面我基于ubuntu分步骤写下samba新增用户和共享文件路径,这里假定用户是test,用户组是testgroup:
1、新增用户
sudo useradd test -g testgroup
2、修改用户密码
sudo passwd testpassword //可以改为你自己的密码
3、修改samba密码
sudo smbpasswd -a testsmbpassword //可以改为你自己的samba密码
4、新增或修改访问路径
sudo vi /etc/samba/smb.conf
输入一下
[test]
comment = test folder
browseable = yes
writable = yes
path = /test/test
create mask = 0777 //创建权限
directory mask = 0777 //目录权限
valid users = test //用户名
public = yes
available = yes
:wq保存退出就可以访问了,这样全部就配置完成了。
⑤ 如何搭建一台存储服务器呢
搭建存储服务器需要先准备一台拥有足够存储空间和配置的服务器,并配置相关的网络连接。
对于 Windows 系统,可以使用 Windows Server 搭建存储服务器:
安装 Windows Server 操作系统。
启动服务器,进入控制面板。
在“程序”选项卡中,选择“启用或关闭 Windows 功能”。
选择“存储服务器”功能,然后单击“确定”。
按照提示,完成存储服务器的配置。
对于 Ubuntu 系统,可以使用 Samba 搭建存储服务器:
在终端中,执行以下命令安装 Samba:sudo apt-get install samba
创建一个存储文件夹,并配置存储权限。
编辑 Samba 配置文件 /etc/samba/smb.conf,添加以下内容:
[共享名称]
path = /路径/到/存储文件夹
writable = yes
browsable = yes
guest ok = yes
重启 Samba 服务:sudo service smbd restart
在客户端中,添加存储服务器,并验证是否能够正常连接。
注意:以上步骤是大致步骤,具体步骤及详细配置方式可以参考官方文档或者搜索教程
⑥ 如何配置samba服务器
1、安装有关Samba的RPM包(samba、samba-common、samba-client)
2、创建Samba用户
3、修改配置文件
4、重启samba服务
5、设置目录访问权限
6、测试
具体步骤如下:
1、安装RPM包(缺省情况下RHEL5安装了samba的相关软件包,可以用如下命令查看)
[root@localhost ~]#rpm -qa | grep samba
samba -----samba服务器程序的所有文件
samba-common -----提供了Samba服务器和客户机中都必须使用的公共文件
samba-client -----提供了Samba客户机的所有文件
samba-swat -----以Web界面的形式提供了对Samba服务器的管理功能
2、创建samba用户
[root@localhost ~]#smbpasswd -a user1 (“-a”是创建samba用户,“-x”是删 [root@localhost ~]#smbpasswd -a user2 除samba用户,“-d”是禁用samba用
[root@localhost ~]#smbpasswd -a user3 户帐号,“-e”是启用samba用户帐号)
3、修改配置文件
samba配置文件的位置:/etc/samba/smb.conf
[root@localhost ~]#vim /etc/samba/smb.conf
Vi大开配置文件后,首先介绍一下Samba服务器的安全级别,如图所示:系统默认设置“user”
Samba服务器的安全级别分为5种,分别是user、share、server、domain和ads。在设置不同的级别时,samba服务器还会使用口令服务器和加密口令。
1、user -----客户端访问服务器时需要输入用户名和密码,通过验证后,才能使用服务器的共享资源。此级别使用加密的方式传送密码。
2、share -----客户端连接服务器时不需要输入用户名和密码
3、server -----客户端在访问时同样需要输入用户名和密码,但是,密码验证需要密码验证服务器来负责。
4、domain -----采用域控制器对用户进行身份验证
5、ads -----若samba服务器加入到Windows活动目录中,则使用ads安全级别,ads安全级别也必须指定口令服务器
共享目录的配置
[homes] -----samba用户的宿主目录
comment = Home Directories -----设置共享的说明信息
browseable = no -----目录浏览权限
writable = yes -----用户对共享目录可写
这个共享目录只有用户本身可以使用,默认情况下,用户主目录位于/home目录下,每个Linux用户有一个以用户名命名的子目录。
以下是共享打印机的设置:
[printers] -----共享打印机
comment = All Printers -----设置共享的说明信息
path = /var/spool/samba -----指定共享目录的路径
browseable = no -----目录浏览权限
guest ok = no -----允许来宾访问
writable = no -----用户对共享目录可写
printable = yes -----可以打印
以上是系统默认设置
添加自定义的共享目录:( user1对/ASUS有所有权,user2拥有只读权限,其他用户不能访问;public共享目录允许所有用户访问及上传文件)
[ASUS]
comment = user1 Directories -----设置共享的说明信息
browseable = yes -----所有samba用户都可以看到该目录
writable = yes -----用户对共享目录可写
path = /ASUS -----指定共享目录的路径
[public]
comment = all user Directories -----设置共享的说明信息
browseable = yes -----所有samba用户都可以看到该目录
writable = yes -----用户对共享目录可写
path = /public -----指定共享目录的路径
guest ok = yes -----允许来宾访问
4、修改完配置文件后需要重启samba服务
[root@localhost ~]#service smb restart
Samba服务器包括两个服务程序
2 smbd
? smbd服务程序为客户机提供了服务器中共享资源的访问
2 nmbd
? nmbd服务程序提供了NetBIOS主机名称的解析,为Windows网络中域或者工作组内的主机进行主机名称的解析
5、设置目录权限
[root@localhost ~]#mkdir /ASUS ------创建要共享目录
[root@localhost ~]#mkdir /public ------创建要共享的目录
[root@localhost ~]#chmod 750 /ASUS ------修改/ASUS权限(属主拥有
所有权,属组只读,其它用户不能访问)
[root@localhost ~]#chown user1 /ASUS ------将/ASUS的属主改为user1
[root@localhost ~]#groupadd ASUS ------添加ASUS组
[root@localhost ~]#usermod –G ASUS user1 ------将user1加入到ASUS组
[root@localhost ~]#usermod –G ASUS user2 ------将user2加入到ASUS组
[root@localhost ~]#chgrp ASUS /ASUS ------将/ASUS的属组改为
ASUS
[root@localhost ~]#chmod 777 /public ------给所有用户分配完全控制
权限
配置完成后,还要检查/etc/service文件中以“netbios”开头的记录,正确的文件
记录如下所示,如果这些记录前有#或没有这些记录,应手工添加,否则用户无
法访问Linux服务器上的共享资源
6、测试
找一台内网windows客户端,打开“网上邻居 ”,输入samba服务器的IP点击
“搜索”
如图所示:已经搜索到
双击打开,如图所示:提示输入用户名和密码,先来输入user1的用户名和密码
作测试。
登录成功,
打开user1的宿主目录,此目录user1是拥有所有权限的,创建一个目录测试一
下,如图所示:可以创建
Public目录是允许任何用户上传、下载及删除文件,如图所示
User1对ASUS目录拥有完全控制权限,所以user1可以在此目录下作任何操作
切换另一个用户测试,由于我们在同一台计算机上作测试,测试之前首先要清楚
计算机上的缓存,如图所示:打开 “命令提示符模式”,“net use /del *”是清
除计算机上缓存
重新打开网上邻居,找到Samba 服务器的共享资源,以user2的身份登录
以下几幅图片可以看到,user2对ASUS目录拥有只读权限,对public、user2目
录拥有所有权
再切换一个用户登录,记得要清除缓存哦,输入user3的用户名及密码
如图所示:user3无法访问ASUS目录
User3只对user3和public目录拥有所有权
⑦ 大家的云服务器能配置好Samba么
1. 安装iptables防火墙
安装iptables和iptables-services
yum install iptables
yum install iptables-services
*关闭centos自带的防火墙
systemctl stop firewalld
systemctl mask firewalld
2. 清空防火墙默认规则和自定义规则
iptables -P INPUT ACCEPT
iptables -F
iptables -X
iptables -Z
3. 防火墙开放samba服务所需端口和常用端口
vi /etc/sysconfig/iptables
添加以下内容到iptables中
-A INPUT -m state –state NEW -m tcp -p tcp –dport 139 -j ACCEPT
-A INPUT -m state –state NEW -m tcp -p tcp –dport 445 -j ACCEPT
-A INPUT -m state –state NEW -m udp -p udp –dport 137 -j ACCEPT
-A INPUT -m state –state NEW -m udp -p udp –dport 138 -j ACCEPT
-A INPUT -p tcp –dport 22 -j ACCEPT
-A INPUT -p tcp –dport 21 -j ACCEPT
-A INPUT -p tcp –dport 80 -j ACCEPT
-A INPUT -p tcp –dport 443 -j ACCEPT
-A INPUT -p icmp –icmp-type 8 -j ACCEPT
-A INPUT -m state –state RELATED,ESTABLISHED -j ACCEPT
-P OUTPUT ACCEPT
4. 开启iptables防火墙
注册iptables服务
systemctl enable iptables.service
开启服务
systemctl start iptables.service
查看状态
systemctl status iptables.service
5. 安装和配置samba
yum install samba
设置samba开机启动
chkconfig smb on
vim /etc/samba/smb.conf,粘贴复制以下内容
[global]
unix charset = gbk
dos charset = gbk
workgroup = img
netbios name = img
server string = uc
security = user
smb ports = 1315 1314 #很重要,貌似阿里云屏蔽了samba默认的端口
[img]
comment = uc
path=/home/xuhaoguang/work
create mask = 0664
directory mask = 0775
writable = yes
valid users = work #登录samba服务的账号
browseable = yes
给samba添加work账号:
smbpasswd -a work
启动samba:
service smb restart
6. 客户端连接samba服务
mac:
command +k ; smb://ip_address:1314
windows:
运行输入:Samba服务器的ip
我是按照上面的步骤完成阿里云服务器上的samba配置的,仅供大家参考!
⑧ Linux下如何搭建SAMBA服务器
1、相关的文件
   samba-common   samba服务器的主文件
   samba          服务器端的软件
   samba-client   客户端的软件
   redhat-config-samba    图形界面的配置文件
   samba-swat     web配置工具
   2、步骤
   1)安装SAMBA服务器
   (1)检测是否安装samba
    #rpm -qa | grep samba
    (2)安装:将第一张光盘放入光驱
    #mount /mnt/cdrom
    #cd /mnt/cdrom/RedHat/RPMS
    #ls samba*.*
    #rpm -ivh samba-common-2.2.7a-7.9.0.i386.rpm
    #rpm -ivh samba-2.2.7a-7.9.0.i386.rpm
    #rpm -ivh samba-client-2.2.7a-7.9.0.i386.rpm
    #cd /
    #umount /mnt/cdrom
    #eject
   2)设置samba的密码文件
    (1)成批用户密码文件的生成
     #cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd
     (2)删除一些无用的shell帐户
     #vi /etc/samba/smbpasswd
     从1到9。
     (3)设置目录和文件的权限
    #chown root.root /etc/samba/smbpasswd
    #chmod 500 /etc/samba
    #chmod 600 /etc/samba/smbpasswd
    #ll -d /etc/samba
     (4)单个用户设置samba密码
     #useradd wujianan
     #passwd wujianan
     #smbpasswd -a wujianan
  3)启动samba服务器
     #service smb start
     #pstree | grep mbd
     #smbclient -L localhost或者IP地址
  4)配置samba的共享
    #vi /etc/samba/smb.conf
    [global]
      workgroup = workgroup
      server string = samba server
     ;hosts allow = 192.168.1. 192.168.2. 127.
     printcap = /etc/printcap
     load prints = yes
     printing = cups
     ;guest account = pcguest
     log file = /var/log/samba/%m.log
     max log size = 0
     安全选项
     security = user(share)
     encrypt passwords = yes
     smb passwd file = /etc/samba/smbpasswd
   ;interfaces = 192.168.12.2/24 192.168.13.2/24
    dns proxy = no
     设置每个用户主目录共享
     [homes]
     comment = Home Directries
     browseable = no  不允许浏览共享文件夹
     writeable = yes  允许写入
     valid users = %s    
     create mode = 0664
     directry mode = 0775  
     [printers]
     comment = All prints
     path = /var/spool/samba
     browseable = no 
     printable = yes
     [doc]
     comment =  doc
     path = /home/doc
     browseable = no
     writeable = no或 read only = yes
     guest ok = yes
   示例:
   要求:创建一个共享目录,所有用户都可访问,权限为只读。  
   #vi /etc/samba/smb.conf
   workgroup = workgroup
   server string = samba server
   netbios name = RH9
   dos charset = cp936
   unix charset = cp936
   secrity = share
   [read]
    comment = read
    path = /home/read
    public = yes
    guest ok = yes
    read only = yes
保存退出
    #mkdir /home/read
    #service iptables stop
    #service smb start
    #testparm
   \\ip地址
 创建一个可写的目录,允许所有用户可写入。 
 [write]
   comment = write
   path = /home/write
   public = yes
   guest ok = yes
   writeable = yes
  保存退出
   #mkdir /home/write
   #chmod 777 /home/write
   #service iptables stop
   #service smb restart
   为指定的用户和组访问samba服务器
   #useradd mehost
   #passwd wujianan
   #smbpasswd -a wujianan
   #mkdir /var/samba/wujianan
   #chown stu1.stu1 /var/samba/wujianan
   #vi /etc/samba/smb.conf
   
    security = user
    
    [wujianan]
      comment = wujianan
      path = /var/samba/wujianan
      valid users = wujianan
      public = yes
      writeable = yes
   保存退出
    #service smb restart
      最简单的电影服务器的配置
    #vi /etc/samba/smb.conf
     workgroup = workgroup
     server string = movies server
     guest account = nobody
     security = share
     client code page = cp936
     wins support = yes
    [movies]
      comment = movies
      browseable = yes
      writeable = no
      path = /movies
      guest ok = yes
      read only = yes
     保存退出
     #mkdir /movies
     #useradd admin -d movies
     #passwd admin
     #vi /etc/passwd
     admin:x:0:500::/movies:/bin/bash
     保存退出
     #ntsysv
       选择smb和vsftp项
     #service smb start
     #service vsftpd start
     #service iptables stop
