搭建samba、apache、changepassword,用户手动修改samba用户密码
2014-03-03 20:11
585 查看
一、源码安装samba:
1、源码安装samba服务器:
安装包版本samba-3.6.22.tar.gz,下载地址:http://samba.org/samba/ftp/samba-latest.tar.gz# tar -xzvf samba-latest.tar.gz编译安装
# cd samba-3.4.2/source3
source3目录里是samba-3.x的源文件,source4目录里是samba-4.x的源文件
# ./autogen.sh
# ./configure --prefix=/usr/local/samba
samba默认是安装在/usr/local/samba目录下,你可以通过指定prefix=your location的方式来指定安装目录
# make
# make install
配置动态链接库路径
# vi /etc/ld.so.conf
加入一行/usr/local/samba/lib
# ldconfig 不是i的大写而是L的小写
执行ldconfig命令让配置生效
2、配置samba服务器,修改smb.conf文件:
首先要将源代码包中/examples/smb.conf.default文件拷贝到/usr/local/samba/lib下,并将其改名为smb.conf,[global] security = user load printers = yes log file = /usr/local/samba/var/log.%m max log size = 50 pam password change = no passdb backend = smbpasswd smb passwd file = /usr/local/samba/smbpasswd注:上述修改其实将tdbsam认证方式修改该成smbpasswd,并将认证文件加密保存在/usr/local/samba/smbpasswd下[homes] comment = Home Directories browseable = no writable = yes[printers] comment = All Printers path = /usr/spool/samba browseable = no guest ok = no writable = no printable = yes[public] comment = Public Stuff path = /home/samba public = yes writable = no printable = no public = no writable = yes printable = no create mask = 0765在/usr/local/samba/bin下面运行testparm程序,测试smb.conf文件:[root@desktop111 ~]# cd /usr/local/samba/[root@desktop111 samba]# cd bin/[root@desktop111 bin]# pwd/usr/local/samba/bin[root@desktop111 bin]# ./testparm Load smb config files from /usr/local/samba/lib/smb.confrlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)Processing section "[homes]"Processing section "[printers]"Processing section "[public]" Loaded services file OK. ######OK则表示没问题Server role: ROLE_STANDALONEPress enter to see a dump of your service definitions[global] smb passwd file = /usr/local/samba/smbpasswd passdb backend = smbpasswd log file = /usr/local/samba/var/log.%m max log size = 50 idmap config * : backend = tdb[homes] comment = Home Directories read only = No browseable = No.......3、启动samba服务器进程:
/usr/local/samba/bin/smbd -D/usr/local/samba/bin/nmbd -D ####这个可以不用启动,启动的smbd进程之后nmbd守护进程就会自动启动。[root@desktop111 bin]# ps -ef |grep smbdroot 11723 12538 0 03:49 ? 00:00:00 ./smbdroot 11769 4392 0 04:25 pts/1 00:00:00 grep --color smbdroot 12538 1 0 02:56 ? 00:00:00 ./smbdroot 12539 12538 0 02:56 ? 00:00:00 ./smbdroot 12559 12538 0 02:57 ? 00:00:00 ./smbd
4、添加samba服务器用户,注意用户必须是系统存在的用户:
useradd jamepasswd jame/user/local/samba/bin/smbpasswd -a jame ####设置为samba服务器的用户注:这里创建samba账户时必须设置系统账户密码,以及smb账户密码因为changepassword更改密码的机制是,先修改系统账户密码,然后将系统账户密码同步到 /usr/local/samba/smbpasswd SMB密码库文件下。
这样添加了之后,在samba的配置文件中我们设置了密码保存在/usr/local/samba/smbpasswd文件中,我们可以查看这个文件:
5、验证:
访问成功,说明samba服务器我们已经搭建好了。
二、安装changepassword程序实现客户端更改密码,必须设置系统密码和samba密码同步
1、下载地址:http://prdownloads.sourceforge.net/changepassword/changepassword-0.9.tar.gz
# tar -zxvf changepassword-0.9.tar.gz# cd changepassword-0.9
2.编译changepassword前需要安装一个依赖包
# cd smbencrypt/# tar -xzvf libdes-4.04b.tar.gz
# cd des/
# make
# cp libdes.a ../
# cd ../..
3.编译安装changepassword
# ./configure -enable-cgidir=/usr/local/apache/htdocs/samba -enable-language=Chinese -enable-smbpasswd=/usr/local/samba/smbpasswd -disable-squidpasswd -enable-logo=samba/logo.jpg注:-enable-cgidir=... # 自定义apache根目录路径
-enable-language=Chinese # 设置页面为简体中文
-enable-smbpasswd=/etc/samba/smbpasswd # 自定义samba密码的库文件
(这里smbpasswd并非修改smb用户密码的系统命令,请注意不要混淆)
-disable-squidpasswd # 禁用squid
-enable-logo=... # 设置web根目录logo文件,此处的相对路径对应的是apache根目录
# 也就是 samba/logo.jpg对应/usr/local/apache/htdocs/samba/logo.jpg
# make && make install
三、源码安装apache服务器:
准备安装环境
yum -y install gcc* openssl-devel expat-devel openssl openssl-devel libxml2-devel glibc-common gd-devel下载源码包
wget http://archive.apache.org/dist/httpd/httpd-2.2.23.tar.gz;
wget http://archive.apache.org/dist/apr/apr-1.4.6.tar.gz
wget http://archive.apache.org/dist/apr/apr-util-1.5.1.tar.gz
安装apr
tar zxvf apr-1.4.6.tar.gzcd apr-1.4.6
./configure --prefix=/usr/local/apr
make
make install
如果在编译中出现如下报错
/bin/rm: cannot remove `libtoolT': No such file or directory 编辑文件:vim configure--->将 RM='$RM'修改为 RM='$RM -f'即可。
安装apr-util
tar zxvf apr-util-1.5.1.tar.gzcd apr-util-1.5.1
./configure --with-apr=/usr/local/apr
make
make install
安装apache
#tar zxvf httpd-2.2.23.tar.gz#cd httpd-2.2.23
#./configure --prefix=/usr/local/apache --enable-dav --enable-so --enable-maintainer-mode --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config
#make
#make install
设置apache支持cgi模块
# vi /usr/local/apache2/conf/httpd.conf搜索cgi 去掉如下注释:
--------------
#LoadModule cgid_module modules/mod_cgid.so #####这个当时没有
AddHandler cgi-script .cgi
--------------
搜索 DocumentRoot,在/usr/local/apache/htdocs类目下找到Options选项,修改为:
--------------
Options Indexes FollowSymLinks ExecCGI
--------------
ServerName 127.0.0.1:80
-----------------
重启服务
# /usr/local/apache/bin/apachectl restart
5.访问web后台: http://192.168.1.103/samba/changepassword.cgi 按照提示修改密码提交即可
清除window访问samba的缓存:
本文出自 “依痕” 博客,请务必保留此出处http://escaping.blog.51cto.com/7764791/1367016
相关文章推荐
- CentOS+Apache+Mysql+PHP+phpMyadmin源码安装
- Apache Kafka源码分析 – Replica and Partition
- 外网访问EC2 Apache被拒:打开80端口
- [2]PHP开发环境搭配之整合Apache2.2与PHP5.2
- 在WebLogic服务器下 使用Apache Web 服务插件
- Apache Hadoop 2.2.0 HDFS HA + YARN多机部署
- Ubuntu中完全删除Apache2的办法
- REQUEST_FILENAME apache 虚拟主机中值不”正确“
- Apache Kafka源码分析 – ReplicaManager
- WebService体系之——复杂对象的传递
- Apache Rewrite 规则的常见应用
- apache启动失败,80端口被占
- WebService体系之——HelloWorld搭建
- 严重: Exception starting filter struts java.lang.NoClassDefFoundError: org/apache/commons/lang3/StringUtils
- apache两种工作模式详解
- apache的prefork和workder模式
- Apache Rewrite语法
- Apache配置中文域名
- Apache 安全配置方法 详细出处参考
- OS X Mountain Lion 系统配置 Apache+Mysql+PHP 详细教程