千家信息网

Samba平台搭建和用户自行修改密码环境搭建笔记

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,Samba 平台搭建和用户自行修改密码环境搭建笔记系统:CentOS release 6.5 (Final)x86_64软件: samba #服务端samba-client #客户端samba-com
千家信息网最后更新 2026年10月31日Samba平台搭建和用户自行修改密码环境搭建笔记

Samba 平台搭建和用户自行修改密码环境搭建笔记
系统:CentOS release 6.5 (Final)x86_64
软件: samba #服务端
samba-client #客户端
samba-common #通用工具和库
Apache:httpd
Web: changepassword-0.9.tar.gz #需 GCC 编译源码包,make 安装
硬件:Vmware10
说明:工作组环境下的 Samba


Samba 平台搭建注意事项及遇到故障的解决方法
1. 共享目录权限设置及所属组员、组的关系;
2. Samba 服务的核心配置文件 smb.conf.中共享目录参数设置与上述 1 要对应,
否则出错;

3. 用户和组创建细节:
3-1 系统创建 OS 账户(不能登陆 OS)→创建密码 #changepassword 程序修改密码;

3-2 Samba 用户、密码创建 #smbpasswd 创建访问文件服务用户及密码;

3-3 创建组→用户加入组 #不同服务应用需求用户,加入不同的组;

4. 单机环境测试 samba 服务:

4-1 smbclient //IP/共享目录 -U 账号 #输入密码进入目录

4-2 smb>dir→list #读取文件及文件夹

4-3 testparm 测试 smb 加载是否正常

4-4 service smb status #检测 smbd 服务运行状态

5. 设置 smb 服务开机运行:chkconfig -level 345 smb on

Samba 服务 windows 平台不能访问解决方法:

1. 关闭 Selinux 安全机制

#vi /etc/selinux/config 修改 SELINUX=disabled #关闭安全检测

2. 防火墙添加规则开放 137.138.139.445 端口


#vi /etc/sysconfig/iptables

添加以下规则

-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 137 -j ACCEPT

-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 138 -j ACCEPT

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

说明一点:
samba3.x 的早期 版本默 认使用 tdb 库 也就是 smb.conf 默 认设定为 passdb backend = tdbsam , 只 需 要 注 释 掉 该 行 添 加 smb passwd file =/etec/samba/smbpasswd 即可使用 smbpasswd 存储加密密钥。从 samba3.5.6 开始 samba 规范了 passdb backend 参数的使用,取消了 smb passwd file 设定, 如果简单注释掉 passdb backend 参数,密钥文件也不会被存储到 smbpasswd。所 以很多人说怎么修改 smb.conf 的配置,smbpasswd 文件都无法生成,就算手工创建, 内 容也 是 0 字 节 。 要 用 传统 的 文 本方 式 存 储 只 需这 样 设 定 passdb backend = smbpasswd:/etc/samba/smbpasswd ( 后面 跟 的是 绝对 路 径 ), 不要 再 写 smb passwd file = /etc/samba/smbpasswd,该参数已经不适用于新版本的 samba 。


Apache:Httpd 服务安装遇到问题和解决方法:

1. 中文乱码解决:

把 httpd 的配置文件 /etc/httpd/conf/httpd.conf 中 :

1-1 AddDefaultCharset UTF-8 改为 AddDefaultCharset zh_CN.UTF-8

或者 AddDefaultCharset 的值改为 GB2312


1-2 防火墙端口开放添加规则:80 端口开放

Web-changepassword 客户端安装遇到问题解决方法:

1-1 在安装过程中可能会遇到以下一个报错 collect2:ld returned 1 exit status make:***[changepassword.cgi] Error 1
这是因为缺少一个依赖包的原因,这个依赖包就在 changepassword-0.9.tar.gz 的目录包里, 解压后在目录里有一个 smbencrypt 的目录,进入该目录,目录里有一个
libdes-4.0.tar.gz 文 件,这个是 changerpassword 的一个依赖包,解压缩

tar -zxvf libdes-4.0.tar.gz 解压后有一个 des 目录,进入后 make
cp libdes.a ../ 系统提示: cp:是否覆盖../libdes.a?
Enter 确认覆盖,退回 changepassword 目录

1-2 编译 changepassword 源码包自定义路径等:


./configure --enable-cgidir=/var/www/cgi-bin --enable-language=Chinese


--enable-smbpasswd=/etc/samba/smbpasswd --disable-squidpasswd


--enable-logo=samba.jpg

注意:logo 图片只能放在/var/www/html 目录下调用才会生效,html 是 cgi-bin 默认目录

注:

--enable-cgidir=/var/www/cig-bin:指定 httpd 下的 cig-bin 路径

--enable-language=Chinese:设定语言为中文

--enable-smbpasswd=/etc/samba/smbpasswd:指定 smbpasswd 路径

--disable-squidpasswd:关闭 squid 密码(changepassword 是支持 squid 认证用户 密码更改的)
Samba 用户系统密码修改与系统账号密码同步:重要修改以下文件和配置参数

1. 修改 samba/smb.conf 配置

security = user

passdb backend = smbpasswd:/etc/samba/smbpasswd pam password change = no
passwd chat = **NEW*UNIX*password* %n\n *Retype*new*UNIX*password* %n\n

*successfully*

passwd program = LANG=en_US /usr/bin/passwd %u unix password sync = yes
2.专门用于使用 pam 来管理密码的模块:

pam_smbpass.so 位置位于:
x86 : /lib/security/pam_smbpass.so #32 位系统 x64 : /lib64/security/pam_smbpass.so
#64 位系统 然后我们只需要将这个模块加入到密码验证的机制里即可: vim /etc/pam.d/system-auth
编辑 system-auth 这个 pam 文件
修改里面的 password 段插入一行新的 password 行(这里我的 system-auth 的配置,注意我加了一行
关于 pam_smbpass.so 的内容):

auth required pam_env.so

auth sufficient pam_unix.so nullok try_first_pass auth requisite
pam_succeed_if.so uid >= 500 quiet auth required pam_deny.so
account required pam_unix.so

account sufficient pam_succeed_if.so uid < 500 quiet account required
pam_permit.so
password requisite pam_cracklib.so try_first_pass retry=3

password required /lib64/security/pam_smbpass.so nullok use_authtok try_first_pass
password sufficient pam_unix.so md5 shadow nullok try_first_pass use_authtok password
required pam_deny.so
session optional pam_keyinit.so revoke session required
pam_limits.so
session [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session required pam_unix.so


组环境问题:在浏览器上通过 changepassword 修改用户密码时,输入正确也提示旧密码错误

原因:1-1 changepassword 修改密码,必须和/etc/passwd 内的密码同步,如果只设 置 samba 密码,不 设置系统密码,该程序是无法修改用户密码的;用户必
须具有系统密码,并且这个系统密码要与 samba 密码一致
1-2 创建 samba 用户是不能登录系统的用户,所以也忘记给用户设置系统密码了

解决方法:passwd 命令创建修改 samba 系统用户与 samba 服务用户相同的密码,在浏
览器上 changepassword 可以成功修改密码


密码 用户 目录 系统 服务 文件 配置 参数 方法 环境 平台 端口 规则 路径 问题 开放 不同 安全 一行 原因 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网加科技 科技信息互联网 睿民互联网科技 互联网科技logo设计 新浪科技互联网 互联网科技股有哪些 互联网科技大会案例 科技伦理 互联网公司 北京华百购互联网科技有限公司 湖南诚度互联网科技有限公司 昊天互联网科技有限公司 青岛科技大学互联网大赛研究生 中国互联网十大科技股排名 徐州市互联网科技有限公司 上海钢联属于互联网科技股吗 领航科技大厦互联网公司 广州梦谷互联网科技有限公司领导 互联网科技平台产品运营 唐山双旺合互联网科技产业园 安徽九吞吴互联网科技有限公司 中关村互联网科技集团 互联网实体化科技化 互联网科技产品 互联网媒体平台算高科技产业 山东大美朱楼互联网科技有限公司 张家口科技产业互联网平台 上海旺乐尼互联网科技有限公司 互联网大会出现的黑科技 每日互联网科技新闻 株洲百竞科技的互联网营销顾问
0