1、系统环境变量

Fedora:

 yum install libacl-devel libblkid-devel gnutls-devel \
readline-devel python-devel gdb pkgconfig libattr-devel \
krb5-workstation

Debian or Ubuntu:

 apt-get install build-essential libacl1-dev libattr1-dev \
libblkid-dev libgnutls-dev libreadline-dev python-dev \
python-dnspython gdb pkg-config libpopt-dev libldap2-dev \
dnsutils libbsd-dev attr krb5-user docbook-xsl libcups2-dev acl

Red Hat Enterprise Linux or CentOS:

yum install gcc libacl-devel libblkid-devel gnutls-devel \
readline-devel python-devel gdb pkgconfig krb5-workstation \
zlib-devel setroubleshoot-server libaio-devel \
setroubleshoot-plugins policycoreutils-python \
libsemanage-python setools-libs-python setools-libs \
popt-devel libpcap-devel sqlite-devel libidn-devel \
libxml2-devel libacl-devel libsepol-devel libattr-devel \
keyutils-libs-devel cyrus-sasl-devel cups-devel bind-utils

我用的CentOS 6.4。

2、编译和安装Samba源文件

从Samba官网http://www.samba.org/下载最新的源代码,进行编译

我下载的是samba-.., 将下载文件解压,然后进入samba-..目录中,运行以下命令

./configure
make
make install #安装

samba的默认安装路径是:/usr/local/samba

3、配置Samba

(1)启动samba服务方法:

/usr/local/samba/sbin/samba
 
(2)将/usr/local/samba/sbin/samba这条路径添加到/etc/rc.d/rc.local中
 
(3)链接动态链接库,运行samba的中smbd和nmbd需要用到目录/usr/local/samba/lib下的动态链接库文件。但是该目录不是系统默认的动态链接库文件搜索路径,于是我们需要将该目录添加到文件ld.so.conf中。执行下面的命令

 vi /etc/ld.so.conf    #打开文件
/usr/local/samba/lib #在文件中添加一行,保存退出
ldconfig #更新动态链接库缓存
 
(4)配置环境变量
打开root目录下的.bash_profile文件
#.bash_profile
#Get the aliases and functions
if[ -f ~/.bashrc ]; then
.~/.bashrc
fi
#User specific environment and startup programs
PATH=$PATH:$HOME/bin:/usr/local/samba/bin:/usr/local/samba/sbin
export PATH
 
(5)建立域
/usr/local/samba/bin/samba-tool domain provision --use-rfc2307 --interactive
 
如果删除域使用以下命令:
rm -rf /usr/local/samba/etc/smb.conf
rm -rf /usr/local/samba/private/*
 
执行建立域命令后出现:
Realm[BTA.NET.CN]: test.com  #域名
Domain[xfs]: test
ServerRole (dc, member, standalone) [dc]: dc
DNSbackend (SAMBA_INTERNAL, BIND9_FLATFILE, BIND9_DLZ, NONE)[SAMBA_INTERNAL]:
DNSforwarder IP address (write 'none' to disable forwarding)[202.106.0.20]:
Administratorpassword:
Retypepassword:
 
创建完之后需要启动samba:
/usr/local/samba/sbin/samba
 
首先测试samba和smbclient的版本:
/usr/local/samba/sbin/samba -V
/usr/local/samba/bin/smbclient --version
 
然后运行下列命令列出samba服务器上共享的目录;
$ /usr/local/samba/bin/smbclient -L localhost -U%

       Sharename       Type      Comment
--------- ---- -------
netlogon Disk
sysvol Disk
IPC$ IPC IPC Service (Samba .x.y)
 
如果失败了,重新启动samba:
killall samba
/usr/local/samba/sbin/samba
 
测试认证正常工作,输入以下命令:
$ smbclient //localhost/netlogon -UAdministrator -c 'ls'

Domain=[SAMDOM] OS=[Unix] Server=[Samba .x.y]
. D Tue Dec ::
.. D Tue Dec ::
 
(6)配置DNS
 
刚才选择的是samba自带的dns,并已经设置了下一跳的dns服务器地址。
 
所以为了本地正常解析,所以配置本地的/etc/resolv.conf文件
domain test.com
nameserver 192.168.10.215 #本地IP地址 
 
测试DNS
输入以下命令:
$ host -t SRV _ldap._tcp.samdom.example.com.
_ldap._tcp.samdom.example.com has SRV record dc1.samdom.example.com. $ host -t SRV _kerberos._udp.samdom.example.com.
_kerberos._udp.samdom.example.com has SRV record dc1.samdom.example.com. $ host -t A dc1.samdom.example.com.
dc1.samdom.example.com has address 192.168.10.215
 
(7)配置Kerberos
Kerberos是由krb5.conf文件配置,kerberos的默认配置文件在/etc/krb5.conf中,但是/usr/local/samba/share/setup/krb5.conf是一个样板文件,你可以将该文件复制并覆盖原来的krb5.conf文件,并进行修改
[libdefaults]
default_realm = TEST.COM #大写
dns_lookup_realm = false
dns_lookup_kdc = true
 
测试kerberos正常工作,运行以下命令:
kinit administrator@TEST.COM
$ klist
Ticket cache: FILE:/tmp/krb5cc_1000
Default principal: administrator@SAMDOM.EXAMPLE.COM Valid starting Expires Service principal
// :: // :: krbtgt/TEST.COM@TEST.COM

4、从Windows客户端连接Samba服务器

(1)在windows上安装windows远程管理工具。win7或者Win XP详细下载请见:http://wiki.samba.org/index.php/Samba_AD_management_from_windows  并且安装组管理策略(仅XP需要),组管理策略需要.NET版本1.1。
(2)通过Windows客户端查看Samba AD。在开始->控制面板->管理工具->Active Directory用户和计算机。或者直接在运行中输入dsa.msc
(3)通过Windows客户端查看Samba的组管理策略。在开始->控制面板->管理工具->组策略管理

Samba服务器的配置与使用的更多相关文章

  1. ubuntu samba服务器多用户配置【转】

    转自:http://www.2cto.com/os/201204/127043.html ubuntu samba服务器多用户配置   在/home/下有多个用户目录A.B...,现通过samba共享 ...

  2. linux中Samba服务器的配置

    Samba简介 Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件 ...

  3. Ubuntu 18.04安装Samba服务器及配置

    Ubuntu 18.04安装Samba服务器及配置 局域网下使用samba服务在Linux系统与Windows系统直接共享文件是一项很方便的操作.以Ubuntu为例配置samba服务,Linux服务器 ...

  4. Samba服务器搭建配置

    本次环境: 服务端-centos6.8-192.168.2.200 客户端1-centos6.8-192.168.2.201 客户端2-Windows7-192.168.2.104 假设条件如下: 使 ...

  5. samba服务器详细配置(非域模式)

    组成Samba运行的有两个服务,一个是SMB,另一个是NMB:SMB是Samba 的核心启动服务,主要负责建立Samba服务器与Samba客户机之间的对话,验证用户身份并提供对文件和打印系统的访问,只 ...

  6. CentOS下Samba服务器的配置

    主要用途: 在两台计算机间共享文件.打印机 安装: yum install samba 启动服务: /etc/rc.d/init.d/smb start 添加用户  (必须是系统中真实存在的用户) s ...

  7. centos6.5下安装samba服务器与配置

    转自:http://www.centoscn.com/CentosServer/ftp/2014/1023/3989.html http://www.cnblogs.com/x_wukong/p/56 ...

  8. Ubuntu12.04下samba服务器共享配置

    1 . 前置工作 首先保证你的Ubuntu能上网:虚拟机网络连接方式为NAT:虚拟机雨物理机互ping可通: 2. 安装samba sudo apt-get insall samba sudo apt ...

  9. linux samba 服务器 简单配置

    1. rpm -qa|grep samba 查看是否有samba 2.使用yum -y install samba 安装samba 服务 进入/etc/samba/ 使用vi smb.conf 修改配 ...

随机推荐

  1. poj 1811 Prime Test 大数素数测试+大数因子分解

    Prime Test Time Limit: 6000MS   Memory Limit: 65536K Total Submissions: 27129   Accepted: 6713 Case ...

  2. JDBC增加、更新、删除数据

    JDBC增加.更新.删除数据 st.executeUpdate(sql) 进行插入.更新.删除操作返回的是受影响的记录的条数 注意:输入的sql语句中,vachar类型记住加单引号 完整代码如下: p ...

  3. jetbrains激活 webstorm激活 webstorm激活码

    License Activation的破解方式无效时,请采用以下方法1. 把下载的破解补丁放在你的idea的安装目录下的bin的目录下面(如下图所示),本文示例为C:\Program Files\Je ...

  4. Code Signal_练习题_Are Similar?

    Two arrays are called similar if one can be obtained from another by swapping at most one pair of el ...

  5. js事件队列

    前面跟网友讨论到了JS的事件队列 ,对这个有了一些理解,事件队列我认为就是把一些不按顺序执行的事件放到队列里面,然后按照自己制定的顺序去执行,那么什么情况下会用到这个呢?我首先想到的是动画,动画是会执 ...

  6. Uncaught TypeError: timeout.close is not a function. when try to use clearInterval

    It's because of your IDE! Make sure you have added automatic imports such as import { clearInterval ...

  7. NuGet 2.0 (.NET软件包管理器) 发布了-现在升级吧

    原文:https://blogs.msdn.microsoft.com/scott_hanselman/2012/07/10/nuget-2-0-net/ [原文发表地址]  NuGet 2.0 (. ...

  8. BAT脚本编写教程简单入门篇

    BAT脚本编写教程简单入门篇 批处理文件最常用的几个命令: echo表示显示此命令后的字符 echo on  表示在此语句后所有运行的命令都显示命令行本身 echo off 表示在此语句后所有运行的命 ...

  9. eclipse设置模板及格式

    1)     首先要有code_templates.xml 及 code_formatter.xml 两个文件,下面有代码,直接拷贝出来. code_formatter.xml: <?xml v ...

  10. Eclipse 中出现红色下划波浪线与红色感叹号

    一直用eclipse写Python,老是看到一些字符串都给出红色波浪线, 看着就不舒服.弄了老半天终于消除了,原来是拼写检查 Windows->Preferences->General-& ...