【Github】PwGen用户友好的Web应用密码生成器

弱密码问题一直是网络安全领域的一个重大挑战。许多人为了方便记忆,倾向于使用简单、常见的密码,如“123456”、“password”或者他们的生日等,这些密码很容易被猜测或通过暴力破解方法攻破。弱密码的使用大大增加了账户被黑客入侵的风险,可能导致个人信息泄露、财产损失甚至更严重的后果。一个强大的密码可以帮助保护我们的个人信息和网络资产免受未经授权的访问。虽然Linux系统中的pwgen命令行工具能够生成安全的随机密码,但它可能对于非技术用户来说不够直观和友好。为了解决这个问题,PwGen安全密码生成器应运而生,它是一个通过Docker部署的基于Web的应用程序,旨在为用户提供一个更加友好和易于使用的密码生成解决方案。

特性

  1. 用户友好的界面:提供了一个直观的界面,方便用户查看和复制生成的密码或短语。

  2. 安全检查:通过与haveibeenpwned数据库的API集成,确保生成的密码未被泄露,增强了密码的安全性。

  3. 离线模式:允许在没有外部API访问的环境下使用,适用于隔离网络或注重隐私保护的情况。

  4. 环境变量配置:用户可以通过环境变量自定义密码和短语生成的默认设置,便于快速生成符合特定要求的密码。

  5. 多重生成:支持同时生成多达5个密码或短语,提高了效率和便捷性。

  6. 渐进式Web应用(PWA):确保了跨设备的无缝体验,用户可以在不同的设备上方便地使用。

  7. 全面的密码生成选项:提供了包含大写字母、数字、特殊字符的密码生成选项,并可以选择排除容易混淆的字符。

  8. 灵活的短语生成:用户可以选择单词的首字母大写、分隔符类型以及是否包含数字或特殊字符。

在这里插入图片描述

官方提供了在线演示:https://pwgen.joonatanh.com

部署

docker cli 命令行部署,确保5069端口未被使用,如果有在使用可以使用其他未被使用的端口。

docker run -d \
  --name pwgen \
  -p 5069:5069 \
  -e MULTI_GEN=true \
  -e PW_LENGTH=12 \
  -e PW_INCLUDE_UPPERCASE=true \
  -e PW_INCLUDE_DIGITS=true \
  -e PW_INCLUDE_SPECIAL=true \
  -e PW_EXCLUDE_HOMOGLYPHS=true \
  --restart unless-stopped \
  jocxfin/pwgen:latest

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: '3'

services:
  pwgen:
    image: jocxfin/pwgen:latest
    container_name: pwgen
    ports:
      - 5069:5069
    environment:
      - MULTI_GEN=true
      - PW_LENGTH=12
      - PW_INCLUDE_UPPERCASE=true
      - PW_INCLUDE_DIGITS=true
      - PW_INCLUDE_SPECIAL=true
      - PW_EXCLUDE_HOMOGLYPHS=true 
    restart: unless-stopped

然后执行下面的命令:

# 新建文件夹 pwgen 并进入 pwgen 目录
mkdir -p ./pwgen && cd ./pwgen

# 将上面的 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

使用

在浏览器中输入 http://IP:5069 (IP是Docker宿主机的IP) 就能看到主界面
在这里插入图片描述

安全密码

  • Include Uppercase Letters:包含大写字母
  • Include Digits:包含数字
  • Include Special Characters:包含特殊字符
  • Exclude Homoglyphs: 排除容易混淆的字符
  • Length:生成的密码长度

前四项为开关项,可根据需要启用或关闭,每次开关,或者点 Generate 会生成新的密码
在这里插入图片描述

密码短语

开启 Generate Passphrase 后,会生成密码短语

  • Capitalize Words:大写单词
  • Include Numbers:包含数字
  • Include Special Characters:包含特殊字符
  • Language:支持英语/芬兰语/自定义列表
  • Separator:分隔符,支持下面几种模式:
    • Dash:使用破折号作为分隔符或添加到密码短语的特定位置
    • Random Number:表示在密码中插入一个随机生成的数字
    • Random Special Character:表示在密码中插入一个随机生成的特殊字符,例如 !@#$%^&* 等
    • Space : 使用空格作为分隔符或添加到密码短语的特定位置
    • User Defined:表示用户可以自定义密码生成模式中的某些元素,例如指定特定的单词、符号、数字等
  • Max Word Length:最大单词长度
  • Word Count:单词数量

结语

PwGen安全密码生成器为用户提供了一个简单、安全且易于使用的方式来生成和管理他们的密码。无论你是技术专业人士还是普通用户,都可以从PwGen的便捷性和强大的功能中受益。通过使用PwGen,你可以确保自己的密码强度和安全性,从而更好地保护自己的数字生活。

参考文档

jocxfin/pwgen: Simple self hosted password generator
地址:https://github.com/jocxfin/pwgen
在这里插入图片描述

  • 18
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
GitHub上有很多开源的代码生成器,这些代码生成器可以帮助开发人员快速生成项目代码,提高开发效率。其中一些知名的代码生成器包括: 1. MyBatis Generator:这是一个专门针对Java开发的代码生成器,它可以通过解析数据库表结构,自动生成与数据库交互的持久层代码。开发人员只需要编写简单的XML配置文件,就可以轻松生成数据库表对应的实体类、DAO接口和映射文件。使用MyBatis Generator可以省去大量的重复劳动,提高代码的可读性和可维护性。 2. CodeIgniter CLI:CodeIgniter是一款流行的PHP框架,它提供了一个命令行界面(CLI)工具,可以帮助开发人员快速生成代码。通过CLI工具,开发人员可以生成控制器、模型、视图等常用的文件和目录结构,减少手动编写重复代码的工作量。这个代码生成器可以大大提升CodeIgniter框架的开发效率。 3. JHipster:这是一个用于生成现代化Web应用的工具。JHipster可以帮助开发人员快速搭建基于Java和JavaScript的应用架构,包括Spring Boot、Angular/React/Vue.js等技术栈的集成。通过JHipster,开发人员只需要回答一些基本配置问题,就可以自动生成整个项目的基础代码、数据库模型和前端页面等。这个代码生成器可以帮助开发人员节省大量的时间,快速创建现代化的Web应用。 总结起来,GitHub上的开源代码生成器提供了一种便捷的方式,可以帮助开发人员快速生成项目代码,减少重复劳动,提高开发效率。无论是针对不同的编程语言还是不同的应用场景,都可以找到适合自己的代码生成器,加快开发进度,降低开发成本。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值