系统相关
首页 > 系统相关> > 带你深入了解nginx基本登录认证:使用openssl生成密码

带你深入了解nginx基本登录认证:使用openssl生成密码

作者:互联网

openssl passwd 手动生成密码

引言:在Linux系统中我们要向手动生成一个密码可以采用opensll passwd来生成一个密码作为用户账号的密码。Linux系统中的密码存放在/etc/shadow文件中,并且是以加密的方式存放的,根据加密方式的不同,所产生的加密后的密码的位数也不同。

选项说明:

示例:

/etc/nginx/.htpasswd换成你自己的文件存放路径

sudo sh -c "echo -n 'user:' >> /etc/nginx/.htpasswd" # user就是你要登陆的用户名
sudo sh -c "openssl passwd -apr1 >> /etc/nginx/.htpasswd" # 接下来会提示你输入密码和确认密码

系统将提示您创建密码。接下来,打开你的 Nginx 配置文件,并在 location / { 下添加这两行:

location / {
    auth_basic "Restricted Content";
    auth_basic_user_file /etc/nginx/.htpasswd;
    ...

将生成的密码串,手动添加到/etc/shadow中就可用作用户的登陆密码了。

关于openssl passwd文件,它生成的密码可以直接复制到/etc/shadow文件中,但openssl passwd因为不支持sha512,所以密码强度不够。如果要生成sha512的密码,可以使用grub-crypt生成,它是一个python脚本,只不过很不幸CentOS 7只有grub2,grub-crypt命令已经没有了。

本系列文章

带你深入了解nginx基本登录认证(包含所有配置步骤和深度解析)
带你深入了解nginx基本登录认证:使用htpasswd生成密码
带你深入了解nginx基本登录认证:使用openssl生成密码
带你深入了解nginx基本登录认证:使用python生成密码

标签:密码,etc,openssl,生成,nginx,htpasswd,认证
来源: https://www.cnblogs.com/moshuying/p/15244869.html