热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

让你的Linux支持WEB修改密码

让你的Linux支持WEB修改密码--Linux企业应用-Linux服务器应用信息,下面是详情阅读。
现在使用Linux做为服务器越来越普遍,一个中小机构采用Linux做邮件服务器、WEB服务器等都十分合适。而这些服务的用户(如E-Mail用户)常常并不是十分熟悉电脑,修改自己的密码比较费劲。所以,如果能够提供一个操作方便的修改密码的方法是十分有用的。下面,我们就一起来让你的Linux服务器支持用户通过WEB方式来修改密码。
自由软件chpasswd能够使你十分轻松地完成这个功能需求。

一、 下载软件

这个自由软件源于波兰,截止到笔者写这篇文章时,最新版本是2.1版。你可以在http://sic.popnet.pl/~mlody/chpasswd/下载到这个软件。
该软件已在Slackware 4.0/7.0、Debian GNU/Linux woody、RedHat 6.1/5.2中测试通过。
软件源程序包名称是:chpasswd.2.1.tar.gz,它是使用gzip压缩过的,压缩后大小为83K。笔者在此假设你将这个软件下载后,存放在/usr/local目录下。

二、 安装软件

这个软件的安装十分简单:
1. 以root用户登录系统;
2. 转到/usr/local目录,然后解压缩这个软件:
cd /usr/local
tar -zxvf chpasswd.2.1.tar.gz
成功执行后,会在/usr/local目录下新生成一个chpasswd.2.1目录。
3. 进入软件目录,安装软件:
cd chpasswd.2.1
./build.sh
这时将出现以下输出(中文部分是笔者加上去的注解):
create-html.sh for chpasswd 2.0, make by ml0dy
conwerting... 'error1' file
conwerting... 'error2' file
conwerting... 'error3' file
conwerting... 'error4' file
conwerting... 'error5' file
conwerting... 'error6' file
conwerting... 'error7' file
conwerting... 'error8' file
conwerting... 'index' file
conwerting... 'ok' file
done. (准备WEB页面文件)
Configure script for chpasswd 2.0, make by ml0dy
...finded HTTP daemon (/usr/local/apache/bin/httpd) (自动发现HTTP进程)
...COOL, Apache HTTP daemon (ver.1.3.14) (发现是Apache)
...configure file: /usr/local/apache/conf/httpd.conf (配置文件是httpd.conf)
...Group = nobody
CGI-BIN directory: /usr/local/apache/cgi-bin (找到CGI目录)
...correcting Makefile
gcc -DHAVE_CONFIG_H -I. -O2 -Wall -c libs/commonio.c -o libs/commonio.o
gcc -DHAVE_CONFIG_H -I. -O2 -Wall -c libs/commonio.c -o libs/commonio.o
gcc -DHAVE_CONFIG_H -I. -O2 -Wall -c libs/pwio.c -o libs/pwio.o
gcc -DHAVE_CONFIG_H -I. -O2 -Wall -c libs/shadowio.c -o libs/shadowio.o
gcc -DHAVE_CONFIG_H -I. -O2 -Wall -c libs/sgetpwent.c -o libs/sgetpwent.o
gcc -Wall -O2 -c salt.c
gcc -Wall -O2 -c pw_encrypt.c
gcc -Wall -O2 -c md5_crypt.c
gcc -Wall -O2 -c des_crypt.c
gcc -Wall -O2 -c cgilib.c
gcc -Wall -O2 -c mgets.c
gcc -Wall -O2 -DHAVE_SHADOW -o chpasswd chpasswd.c salt.o pw_encrypt.o md5_cryp(至此完成了编译过程)

cp chpasswd /usr/local/apache/cgi-bin/chpasswd.cgi
chown root /usr/local/apache/cgi-bin/chpasswd.cgi
chgrp nobody /usr/local/apache/cgi-bin/chpasswd.cgi
chmod u+s /usr/local/apache/cgi-bin/chpasswd.cgi
chmod a-rx /usr/local/apache/cgi-bin/chpasswd.cgi
chmod g+rx /usr/local/apache/cgi-bin/chpasswd.cgi
(将chpasswd.cgi拷贝到相应目录并做相应的权限设置)
到此为止,软件就安装完成了。

三、 使用WEB修改密码

软件就安装完成后,你只要将chpasswd.cgi链接到你主页上就可以完成了,或者在客户端浏览器上输入www.yourdomain.com/cgi-bin/chpasswd.cgi,你将看到以下界面:






在login栏中输入你的用户名,在current passwd栏中输入你原来的密码,并在new passwd和new passwd(confirm)栏中输入新密码(注意,两个密码需一致),然后按下change按钮。当出现以下画面,就表示修改成功:






如果出现了什么错误,则会出现相应的提示,其中包括:
1) ERROR:You didn't write your login, that's stupid...
你没有填写你的用户名,真笨!
2) ERROR:You didn't write your current password...
你没有填写你的当前密码;
3) ERROR:Your new password and confirmed new password do not match.
你两次输入的新密码不一样;
4)ERROR:You can't change password by WWW, contact to your administrator!
你不能通过WEB方式修改密码,请与管理员联系;
5)ERROR:Incorrect password...
当前密码不对(防止别人知道用户名情况下修改你密码)
6)ERROR:You didn't write your new password...
你没有填写你新密码;
7)ERROR:Unknown user.
用户名不存在,估计你输错了;
8)ERROR:You didn't write your new password (confirm)...
你没有输入new password (confirm)。
这八种错误都有出现一个类似于上面的这个的网页,给您提示。

四、 使用技巧

1. 禁止某些用户通过WEB方式修改密码:
有些系统帐号如root、ftp等帐号一般是不需要通过WEB方式来修改的,另外,有时你会不想让某个用户通过WEB方式修改密码,你只需修改一下配置文件就行了。
安装chpasswd后,会生成一个/etc/www.deny文件,在这个文件中列出的用户均不能通过WEB方式进行修改密码。你只需将用户添加进去就可以了,马上生效。

2. 修改chpasswd的页面
如果你对chpasswd自带的这些页面不满意的话,你可以自己修改它。

它们在/usr/local/chpasswd.2.1/html目录中,这个目录有以下几个文件:
index.html:修改的主界面
ok.html:修改成功的界面
error1.html
error2.html
……
error8.html:就是上面所述的8个错误的界面。
你可以直接修改它们,修改完成后后转到/usr/local/chpasswd.2.1目录下,执行./create-html.sh命令。然后再执行./bulid.sh完成安装。
另外请注意:在有些系统中为了追求更大的安全性,连root用户都没对/etc/shadow写的权限,这样会出现一些问题。
推荐阅读
  • 目录浏览漏洞与目录遍历漏洞的危害及修复方法
    本文讨论了目录浏览漏洞与目录遍历漏洞的危害,包括网站结构暴露、隐秘文件访问等。同时介绍了检测方法,如使用漏洞扫描器和搜索关键词。最后提供了针对常见中间件的修复方式,包括关闭目录浏览功能。对于保护网站安全具有一定的参考价值。 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • Apache Shiro 身份验证绕过漏洞 (CVE202011989) 详细解析及防范措施
    本文详细解析了Apache Shiro 身份验证绕过漏洞 (CVE202011989) 的原理和影响,并提供了相应的防范措施。Apache Shiro 是一个强大且易用的Java安全框架,常用于执行身份验证、授权、密码和会话管理。在Apache Shiro 1.5.3之前的版本中,与Spring控制器一起使用时,存在特制请求可能导致身份验证绕过的漏洞。本文还介绍了该漏洞的具体细节,并给出了防范该漏洞的建议措施。 ... [详细]
  • Tomcat安装与配置教程及常见问题解决方法
    本文介绍了Tomcat的安装与配置教程,包括jdk版本的选择、域名解析、war文件的部署和访问、常见问题的解决方法等。其中涉及到的问题包括403问题、数据库连接问题、1130错误、2003错误、Java Runtime版本不兼容问题以及502错误等。最后还提到了项目的前后端连接代码的配置。通过本文的指导,读者可以顺利完成Tomcat的安装与配置,并解决常见的问题。 ... [详细]
  • 如何查看电脑系统版本_腾讯云服务器系统版本怎么看?Windows和Centos版本怎么选?...
    腾讯云服务器系统版本怎么看?想要知道自己的腾讯云服务器系统版本是哪个,可以登录云服务器后台管理系统查看,或者使用命令行查询,如果不会操作& ... [详细]
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • Ubuntu 9.04中安装谷歌Chromium浏览器及使用体验[图文]
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • PHP组合工具以及开发所需的工具
    本文介绍了PHP开发中常用的组合工具和开发所需的工具。对于数据分析软件,包括Excel、hihidata、SPSS、SAS、MARLAB、Eview以及各种BI与报表工具等。同时还介绍了PHP开发所需的PHP MySQL Apache集成环境,包括推荐的AppServ等版本。 ... [详细]
  • Kali Linux 简介
    KaliLinux是世界渗透测试行业公认的优秀的网络安全审计工具集合,它可以通过对设备的探测来审计其安全性,而且功能完备,几乎包含了目前所 ... [详细]
  • 如何将CentOS8转换为CentOSStream
    CentOS Stream是一个持续交付的Linux发行版,它在RHEL之前处于领先地位。它将具有滚动发布,即不断进行更改。CentOS将成为一个上游版本,它将具有测试补丁和更新。 ... [详细]
  • Linux神奇漏洞:长按回车键70秒 即可轻松拿到Root权限
    一般来说获取系统root权限是很困难的,尤其是加密系统中,但西班牙安全研究员hectormarco、ismaelripoll发现,linux系统下只需按住回车键70秒钟,就能轻 ... [详细]
  • 系统安装Debian系统的安装方式和Ubuntu系统的安装方式几乎是一样的,毕竟Ubuntu系统是基于Debian的,就如同CentOS基于Redhat ... [详细]
author-avatar
mobiledu2502882721
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有