如何在Linux平台上架设文档服务器
在Linux平台上架设文档服务器是一个非常简单实用的功能,但是我们具体要如何架设文档服务器呢?接下来感兴趣的朋友们就跟随爱站小编的脚步一起去学习如何在Linux平台上架设文档服务器的内容吧。
1)准备工作:
samba-3.0.21c.tar.gz,samba
2).编译、安装
首先进入/tmp/samba/samba-3.0.21c.tar.gz目录下,执行解包指令
[root@erp4 samba]# gunzip samba-3.0.21c.tar.gz
[root@erp4 samba]# tar -vxf samba-3.0.21c.tar
然后进入samba-3.0.21c
--with-smbmount
--prefix=
好了,我们继续来编译
[root@erp4 samba-3.0.21c]#
./configure --with-smbmount --prefix=/usr/local/samba
[root@erp4 samba-3.0.21c]# make
[root@erp4 samba-3.0.21c]# make install
这样就将安装文件安装完了
2,SAMBA的配置。
1)普通配置。
首先要将源代码包中/examples/smb.conf.default文件拷贝到/usr/local/samba/lib下,并将其改名为smb.conf,然后通过运行/usr/local/samba/bin/testparm程序来测试smb.conf文件,如果testparm运行OK就会列出可装载的服务项,否则给出出错信息.
然后进入/usr/local/samba/lib目录下,去修改smb.conf配置文件,如果只是实现简单需求的话,只需要更改相应的几个简单的
选项即可:
以上只是最简单实现samba的方法,如果还需要其他的需求,可以根据自己的需求进行相应的设置
2)高级配置。
笔者希望能将SAMBA加入到已经在域控制器192.168.78.250上配置好的FILESERVER.SCUT.EDU.CN里,故在[global]里做了如下的修改:
[global]
workgroup = FILESERVER
realm = FILESERVER.SCUT.EDU.CN
netbios name = FILESERVER
server string = FILESERVER
security = ADS
password server = 192.168.78.250
passdb backend = tdbsam
log file = /usr/local/samba/var/log.%m
max log size = 10000
dns proxy = No
hosts allow = 202.112.18., 192.168.78., 127.
另外,由于WINDOWS2003上用的是KERBOROS的方式进行用户认证,故现在将SAMBA所在的LINUX也做相应的调整,具体就是运行“setup",若乱码就unset LANG(在环境变量里除去语言的环境变量),然后进入”Authentication configuration“进行修改,防火墙也应该关闭。
最后配置krb5.conf文件,路径在/etc/krb5.conf,建议先备份一份,然后再去vi.注意:大小写要区别。
笔者的配置如下:
[logging]
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log
[libdefaults]
default_realm = FILESERVER.SCUT.EDU.CN
dns_lookup_realm = false
dns_lookup_kdc = false
[realms]
FILESERVER.SCUT.EDU.CN = {
kdc = 192.168.78.250
kdc = 192.168.78.250
#admin_server = kerberos.example.com:749
default_domain = fileserver.scut.edu.cn
}
FILESERVER.SCUT.EDU.CN = {
}
[domain_realm]
.example.com = FILESERVER.SCUT.EDU.CN
example.com = FILESERVER.SCUT.EDU.CN
[kdc]
profile = /var/kerberos/krb5kdc/kdc.conf
[appdefaults]
pam = {
debug = false
ticket_lifetime = 36000
renew_lifetime = 36000
forwardable = true
krb4_convert = false
}
4,将samba加入到域控制器里。
1)连接2003服务器
kinit administrator@FILESERVER.SCUT.EDU.CN
Kerberos 的 kinit 命令将测试服务器间的通信,后面的域名FILESERVER.SCUT.EDU.CN是你的活动目录的域名,必须大写,否则会收到错误信息:
kinit(v5): Cannot find KDC for requested realm while getting initial credentials.
如果通信正常,你会提示输入口令(为域控制器上对应用户的口令,此处对应管理员口令),口令正确的话,就返回 bash 提示符,如果错误则报告:
kinit(v5): Preauthentication failed while getting initial credentials.
2)加入域,共享WINDOWS上的信息。
若上一步操作成功,则将服务器加入活动目录: /usr/local/samba/bin/net ads join
去 Windows 2003 服务器检查上面的工作:打开活动目录用户和计算机,查看其中的条目,如果成功的话,就可以看到你的 Linux 服务器。
然后在 Linux 机器上,你就可以采用 smbclient 命令连接到 Windows 的共享文件夹(我的共享文件夹为:fileserver),而不需要输入口令(因为采用了Kerberos )。
/usr/local/samba/bin/smbclient //192.168.78.250/fileserver -k
3)WINDOWS访问SAMBA。
在HOST ALLOW所允许的IP段内的WIN的机器里,在运行里输入:\\192.168.78.18;会弹出一个对话框,实质上是到域控制器(192.168.78.250)上去认证.输入已经建立好的域里的用户名和密码,就可以进去了.
注意:因为用户名的输入格式为:域名\用户名,故域名必须在本机里必须可以解析,故建议在本机的首选和次选DNS里均写192.168.78.250,因为在搭建AD的同时,该机器也被搭建成了一个DNS服务器.
5,SAMBA的启动和停止.
这是一个需要注意的地方,在以前的版本,包括2.2.5,2.2.6,2.2.7,2.2.8和2.2.8a都是通过执行
/usr/local/samba/bin/smbd -D
/usr/local/samba/bin/nmbd -D
来启动服务,但是3.0.0以后的版本却将守护进程smbd和nmbd放到/usr/local/sambd/sbin/的目录下(更确切的说应该是samba3.0
将命令和系统服务的守护进程进行了分离来提高了它的安全性),
这时就需要这样来启动服务了
/usr/local/samba/sbin/smbd -D (UDP相关)
/usr/local/samba/sbin/nmbd -D (TCP/IP相关)
/usr/local/samba/sbin/winbindd -D (NT4和ADS DOMAIN相关,此处必须要!)
如果希望开机时即运行samba服务,可以将服务启动的指令写道/etc/rc.d/rc.local的文件中,并在指令后边加入&,来将
程序放到后台运行.例如:
[root@erp4 lib]# vi /etc/rc.d/rc.local
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.
Touch /var/lock/subsys/local
/usr/local/samba/sbin/smbd -D &
/usr/local/samba/sbin/nmbd -D &
/usr/local/samba/sbin/winbindd -D &
停止的话就KILL相关进程,再起就可以了.
1使用“ ps -aux|grep smb” 查看SAMBA服务是否已经运行
2“ /etc/init.d/smb start ”启动它
3、验证一下:(在做这步之前可能要重启一下,如果你是按以上顺序做的话,应该是不要重启的)
[root@luxing root]# kinit administrator@TEST.COM
Password for administrator@TEST.COM:
[root@luxing root]#(上面输入密码后,如果正确,就直接到这里)
root@luxing root]# smbclient -L /dc -k
相信看完本文后大家都知道了如何在Linux平台上架设文档服务器的方法,如果你还有不清楚的地方可以随时留言给爱站小编哦。
上一篇:Squid实现反向代理的方法