测试centosx64 6.2安装samba4.1.0建立域服务(1)

本文涉及的产品
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介:

官网wiki:

https://wiki.samba.org/index.php/Samba_AD_DC_HOWTO

环境配置:

1
2
3
4
5
6
7
8
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



测试环境:centosx64 6.2 

主机名称:samba.xfs.com 

下载samba4.1.0www.samba.org

1、源码安装

解压后

1
2
3
4
cd /usr/src/samba-4 .1.0
. /configure
make
makeinstall



默认会安装到/usr/local/samba目录

2、启动samba服务方法

方法(1/usr/local/samba/sbin/samba

方法 2)将/usr/local/samba/sbin/samba增加到/etc/rc.d/rc.local

方法(3)增加自启动项:

建立文件samba4

以下是文件内容:

--------------------------------------------------


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
#!/bin/bash
#
#samba4        This shell script takes care of starting and stopping
#               samba4 daemons.
#
# chkconfig: - 58 74
# description: Samba 4.0 will be the next version of the Samba suite
# and incorporates all the technology found in both the Samba4 alpha
# series and the stable 3.x series. The primary additional features
# over Samba 3.6 are support for the Active Directory logon protocols
# used by Windows 2000 and above.
### BEGIN INIT INFO
# Provides: samba4
# Required-Start: $network $local_fs $remote_fs
# Required-Stop: $network $local_fs $remote_fs
# Should-Start: $syslog $named
# Should-Stop: $syslog $named
# Short-Description: start and stop samba4
# Description: Samba 4.0 will be the next version of the Samba suite
# and incorporates all the technology found in both the Samba4 alpha
# series and the stable 3.x series. The primary additional features
# over Samba 3.6 are support for the Active Directory logon protocols
# used by Windows 2000 and above.
### END INIT INFO
# Source function library.
/etc/init .d /functions
# Source networking configuration.
/etc/sysconfig/network
prog=samba
prog_dir= /usr/local/samba/sbin/
lockfile= /var/lock/subsys/ $prog
start() {
"$NETWORKING"  "no"  ] &&  exit  1
#       [ -x /usr/sbin/ntpd ] || exit 5
# Start daemons.
echo  -n $ "Starting samba4: "
daemon $prog_dir/$prog -D
RETVAL=$?
echo
[ $RETVAL - eq  0 ] &&  touch  $lockfile
return  $RETVAL
}
stop() {
"$EUID"  !=  "0"  ] &&  exit  4
echo  -n $ "Shutting down samba4: "
killproc $prog_dir/$prog
RETVAL=$?
echo
[ $RETVAL - eq  0 ] &&  rm  -f $lockfile
return  $RETVAL
}
# See how we were called.
case  "$1"  in
start)
start
;;
stop)
stop
;;
status)
status $prog
;;
restart)
stop
start
;;
reload)
echo  "Not implemented yet."
exit  3
;;
*)
echo  $ "Usage: $0 {start|stop|status|restart|reload}"
exit  2
esac

--------------------------------------------------------

保存这个文件,chmod755 改一下权限,放到

1
2
#chmod  755  /etc/init.d/samba4
#chkconfig samba4 on

4.配置动态链接库路径

运行samba的进行smbdnmbd需要到目录/usr/local/samba/lib下的动态链接库文件。但是该目录不是系统默认的动态链接库文件搜索路径,于是我们需要将该目录添加到文件ld.so.conf中。执行下面的命令

vi /etc/ld.so.conf

然后,打开ld.so.conf文件,并在该文件中加入下面这一行内容

/usr/local/samba/lib

然后执行命令

 
 
1
# ldconfig

来更新动态链接库缓冲。

5、配置环境变量:

[root@sambar~]# vim .bash_profile 

1
2
3
4
5
6
7
8
#.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



6、建立xfs.com域(如果没有smb.conf时,自动创建到/usr/local/samba/etc/)

备注:如果想删除刚建立的域,使用如下命令

1
2
rm -rf /usr/local/samba/etc/smb.conf
rm -rf /usr/local/samba/ private /*

建立域命令:

1
/usr/local/samba/bin/samba-tool  domain provision --use-rfc2307 --interactive



Realm[BTA.NET.CN]: xfs.com

Domain[xfs]: xfs

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

service samba4 start /usr/local/samba/sbin/samba

如果忘记了密码,可以使用命令更改域管理员密码方法:

 

1
samba-tool user setpassword administrator

 


7、测试建立的域:

1
2
3
4
5
6
7
8
9
10
11
12
# smbclient -L //localhost -Uadministrator
Enterroot's password:
Domain=[XFS]OS=[Unix] Server=[Samba 4.1.0]
Sharename Type Comment
--------- ---- -------
netlogon Disk
sysvol Disk
IPC$ IPC IPC Service (Samba 4.1.0)
Domain=[XFS]OS=[Unix] Server=[Samba 4.1.0]
Server Comment
--------- -------
Workgroup Master

--------- -------

表明建立成功。

1
2
3
[root@sambar~] # smbclient //localhost/netlogon -Uadministrator%此处输入设置的密码
Domain=[XFS]OS=[Unix] Server=[Samba 4.1.0]
smb:\>

如果出现错误:

session setup failed: NT_STATUS_INVALID_SERVER_STATE

这是因为执行smbclient命令的用户ID没有成为samba服务的用户,解决方法如下:

先将改用户ID加入到samba

# smbpasswd -a root

按要求设置密码


8设置DNS
      samba4
自带有一个dns服务,也可以自己另外搭建DNS服务。比如用带DLZbind9的话,在先前建域的命令中加入参数--dns-backend=BIND9_DLZ。我用的是samba4自带的dns
修改/etc/resolv.conf加入domainxfs.comnameserver 172.16.0.1 “主机的局域网IP”两行,

nameserver要放在其它nameserver前面(如果不止一行nameserver的话)检查一下/usr/local/samba/etc/smb.conf配置文档里[global]项有没有dnsforwarder = “当地的DNS地址。这是DNS转发功能,可以解析除自己的test.org域名以外的其它网域。
执行

检查DNS端口是否占用:

1
#netstat -tunpe | grep ":53"

1
2
#host-t SRV _ldap._tcp.xfs.com.
#host -t SRV_kerberos._udp.xfs.com


正常会返回

1
2
3
4
[root@sambar ~]# host -t SRV _ldap._tcp.xfs.com
_ldap._tcp.XFS.COM has SRV record  0  100  389  sambar.xfs.com
[root@sambar~]# host -t SRV _kerberos._udp.xfs.com
_kerberos._udp.XFS.COMhas SRV record  0  100  88  sambar.xfs.com

证明dns能解析域的srv记录。

注意点:重启后resolv.conf会自动恢复原来状态。所以我的方法是复制一份备份,放到rc.local中开机自动执行

如:[root@sambarshare]# cat /etc/rc.d/rc.local 

增加此行:

1
\cp/usr/local/samba/etc/resolv.conf /etc/resolv.conf



9配置kerberos (最好是yuminstall -y krb5*) 再安装一下,相关软件,或升级。

1
cp  /usr/local/samba/share/setup/krb5 .conf  /etc/krb5 .conf


修改:

 
 

1
2
3
4
5
[libdefaults]
default_realm = XFS.COM (大写)
dns_lookup_realm =  false
dns_lookup_kdc =  true
其它与域有关的都得改成相在域名

然后把krb5.conf中的default_realm= 填成XFS.COM
kinit administratorXFS.COM命令测试一下,会要你输密码,输入正确密码会没任何提示,
如果不是用的自带的dns,这时要改下你的dns配置,使它通过kerberos验证。

测试结果如下:

1
2
3
4
5
6
7
8
9
[root@sambar~]# kinit administrator@XFS.COM
Passwordfor administrator@XFS.COM:
Warning:Your password will expire  in  41  days on Sat Nov  23  17 : 23 : 07  2013
[root@sambar~]# klist
Ticketcache: FILE:/tmp/krb5cc_0
Defaultprincipal: administrator@XFS.COM
Validstarting Expires Service principal
10 / 13 / 1315 : 24 : 29  10 / 14 / 13  01 : 24 : 29  krbtgt/XFS.COM@XFS.COM
renewuntil  10 / 14 / 13  15 : 24 : 19


10、管理域控制器:

1
2
3
4
5
6
7
(1)Windows系统客户机加域(加域时记得关掉服务器iptables,因为不知道都开什么端口,所以就干脆关了它,否则加不了域,以后再研究,都需开什么端口)
(2)这里以XP系统为例。把xp的首选DNS改为samba4主机的ip地址。
检查时间与samba4主机相差不能太多。
(3)在“我的电脑”上鼠标右键,点“属性”-“计算机名”-“更改”-“域”,改成XFS.COM,确定。会提示输入有权让你加域的账号、密码,用户名输入administrator,密码输入先前建域时设置的密码。确定,重启电脑。
(4)按Ctrl+Alt+Delete键打开登录框,第三行“登录到”选“XFS”,账号、密码还是输入administrator和密码
(因为现在只有这个账号,以后给多个用户添加账号后就应该让用户各自使用各自账号、密码登录)。
进入桌面,说明samba4建域成功。


11、客户机管理域控制器
 

1
2
3
4
5
6
(1)下载微软的adminpak.msi软件包,windows2003光盘上也有。安装。
(2)然后打开“开始”-“运行”输入dsa.msc。如果打不开,请安装了SupportTools和gpmc工具或重启电脑.
(3)用administrator登录xfs.com域,再打开dsa.msc。
(4)如果是windows7请安装RSAT(remoteserver administration tools)工具。
打开“开始”-“管理工具”能看到“ActiveDirectory Users andComputers”,如果看不到,就要手动“开始”-“运行”输入dsa.msc确定。
(5)接下来建组织单位、建组、建用户就跟windowsAD一样









本文转自 lcpljc 51CTO博客,原文链接:http://blog.51cto.com/lcpljc/1309158,如需转载请自行联系原作者
目录
相关文章
|
1月前
|
JSON Java 测试技术
SpringCloud2023实战之接口服务测试工具SpringBootTest
SpringBootTest同时集成了JUnit Jupiter、AssertJ、Hamcrest测试辅助库,使得更容易编写但愿测试代码。
60 3
|
2月前
|
自然语言处理 机器人 Python
ChatGPT使用学习:ChatPaper安装到测试详细教程(一文包会)
ChatPaper是一个基于文本生成技术的智能研究论文工具,能够根据用户输入进行智能回复和互动。它支持快速下载、阅读论文,并通过分析论文的关键信息帮助用户判断是否需要深入了解。用户可以通过命令行或网页界面操作,进行论文搜索、下载、总结等。
63 1
ChatGPT使用学习:ChatPaper安装到测试详细教程(一文包会)
|
2月前
|
前端开发 JavaScript 应用服务中间件
linux安装nginx和前端部署vue项目(实际测试react项目也可以)
本文是一篇详细的教程,介绍了如何在Linux系统上安装和配置nginx,以及如何将打包好的前端项目(如Vue或React)上传和部署到服务器上,包括了常见的错误处理方法。
690 0
linux安装nginx和前端部署vue项目(实际测试react项目也可以)
|
3月前
|
Linux
kickstart自动安装系统 --DHCP 配置及测试
PXE+Kickstart自动安装系统需配置DHCP服务器分配IP。dhcpd.conf示例:设置更新样式、忽略客户端更新、指定下一服务器及启动文件。定义子网、网关、掩码、动态地址池并预留特定MAC地址。重启xinetd、NFS、DHCP服务,确保新服务器与Kickstart服务器在同一网络,避免误装其他机器。注意隔离测试网络以防干扰生产环境。
84 18
|
2月前
|
测试技术 PHP 开发工具
php性能监测模块XHProf安装与测试
【10月更文挑战第13天】php性能监测模块XHProf安装与测试
33 0
|
4月前
|
测试技术 Linux 虚拟化
iOS自动化测试方案(五):保姆级VMware虚拟机安装MacOS
详细的VMware虚拟机安装macOS Big Sur的保姆级教程,包括下载VMware和macOS镜像、图解安装步骤和遇到问题时的解决方案,旨在帮助读者顺利搭建macOS虚拟机环境。
172 3
iOS自动化测试方案(五):保姆级VMware虚拟机安装MacOS
|
4月前
|
存储 Ubuntu 安全
ROS2教程02 ROS2的安装、配置和测试
本文是关于ROS2(机器人操作系统2)的安装、配置和测试的教程。内容包括使用一键安装脚本快速安装ROS2 Humble版,手动安装步骤,设置语言环境、添加软件源、更新软件包、安装ROS2桌面版和开发工具,配置ROS2环境,创建工作空间,配置ROS2领域以避免网络冲突,以及如何删除ROS2。此外,还包括了测试ROS2是否安装成功的两个案例:基本的Topic通信测试和使用Turtlesim演示程序。适用于Ubuntu 22.04操作系统。
373 1
ROS2教程02 ROS2的安装、配置和测试
|
3月前
|
安全 测试技术 Linux
CentOS7 安装vulhub漏洞测试环境
CentOS7 安装vulhub漏洞测试环境
124 0
|
3月前
|
Web App开发 Linux Python
linux上安装selenium环境及测试
该文章提供了在Linux CentOS上安装Selenium环境、Chrome浏览器及Chromedriver的详细步骤,并演示了如何以无头模式进行测试。
276 0
|
4月前
|
测试技术 开发工具 虚拟化
iOS自动化测试方案(一):MacOS虚拟机保姆级安装Xcode教程
这篇文章提供了一份保姆级的教程,指导如何在MacOS虚拟机上安装Xcode,包括环境准备、基础软件安装以及USB扩展插件的使用,以实现iOS自动化测试方案的第一步。
215 0
iOS自动化测试方案(一):MacOS虚拟机保姆级安装Xcode教程