linux中密码管理命令 linux密码管理工具

linux mysql修改密码命令想知道linux下怎么修改密码吗?下面由我为大家整理了linux mysql修改密码命令,希望大家喜欢!
linux mysql修改密码命令
1.修改root密码
linux mysql修改密码命令方法1:使用mysqladmin命令
--适用于记得root旧密码,修改root密码
语法:
mysqladmin -u用户名 -p旧密码 password 新密码
例如:
# mysqladmin -u root -proot password mysql
--注意:如当旧密码输入错误时会报如下错误
# mysqladmin -u root -proot1 password mysql
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: YES)'
linux mysql修改密码命令方法2:直接更新user表password字段
--适用于忘记root密码,而对root密码进行重置
Step 1: 修改MySQL的登录设置
# vi /etc/my.cnf
--windows系统是my.ini文件
--在[mysqld]的段中加上一句:skip-grant-tables,如没有[mysqld]字段,可手动添加上
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
skip-name-resolve
skip-grant-tables
Step 2: 重新启动mysql
[root@gc ~]# service mysql restart
Shutting down MySQL..[确定]
Starting MySQL...[确定]
Step 3: 登录并修改MySQL的root密码
--此时直接用mysql即可无需密码即可进入数据库了
[root@gc ~]# mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.5.24 MySQL Community Server (GPL)
Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql use mysql;
Database changed
mysql update user set password=password('new_password') where user='root';
Query OK, 5 rows affected (0.00 sec)
Rows matched: 5 Changed: 5 Warnings: 0
mysql flush privileges;
Query OK, 0 rows affected (0.00 sec)
--注意:如果没做step1,直接用mysql登录时会报如下错误
[root@gc ~]# mysql
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
Step 4: 将MySQL的登录设置修改回来
再删除/etc/my.cnf文件中的skip-grant-tables
Step 5: 重新启动mysql
[root@gc ~]# service mysql restart
Shutting down MySQL..[确定]
Starting MySQL...[确定]
2.修改mysql其它用户密码
同样,普通用户也可以用上面的方法
--使用mysqladmin命令
[root@njdyw ~]# mysqladmin -u user1 -ppass1 password pass2
--直接修改数据库表
[root@njdyw ~]# mysql -u user1 -ppass1 –Dmysql
mysql update user set password=password('pass2') where user='user1';
mysql flush privileges;
Linux修改用户密码的命令是什么?命令:passwd [-k] [-l] [-u [-f]] [-d] [-S] [username] 。
名称:passwd 。
使用权限:所有使用者 。
说明:用来更改使用者的密码 。
Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统 。它能运行主要的UNIX工具软件、应用程序和网络协议 。它支持32位和64位硬件 。Linux继承了Unix以网络为核心的设计思想 , 是一个性能稳定的多用户网络操作系统 。
如何在Linux上使用命令行管理密码可以使用passwd命令,passwd用于修改用户的密码 。命令格式:passwd [参数] [用户名] 如果没有提供用户名参数 , 则默认修改当前登录用户的密码 。用法示例: 修改用户名为zhidao的用户的密码$ sudo passwd zhidao 修改密码需要root用户的权限 。...
Linux帐号管理详解对于Linux管理者来说linux中密码管理命令,“帐号管理”是再也普通不过linux中密码管理命令的一个环节了 , 但每次都要去查一大本的手册实在是很浪费时间 。linux中密码管理命令我还是老老实实地花点心思把这些常用的功能都整理成一份文档,方便以后的使用和学习,以后也都会继续这样做下去 。
本文的所有案例与说明都是基于Ubuntu 16.04.3 LTS 64位操作系统,如果你的操作系统与我的不一样 , 可能会出现不一样的结果 。但Linux的原理都是通用的,善于使用man可以帮助你更好的管理你的操作系统 。
上图一共列出了9个相关文件,但这里我只重点讲解前三个文件,也即是 /etc/passwd、/etc/shadow 与 /etc/group 。
1、/etc/passwd
User account information. --(明文的)用户账号信息
这个文件每一行都代表一个帐号,有几行就代表有几个帐号在你的系统中!不过需要特别注意的是,里面很多帐号本来就是系统正常运行所必须的,我们可以简称它为系统帐号 。这些帐号都是你不能随便删除的!
通过查看passwd(5)手册可以查看/etc/passwd的文件结构:
文件结构说明:
“/etc/passwd” 第二项的内容说明
2、/etc/shadow
Secure user account information. -- 安全加密的用户账号信息
通过查看shadow(5)手册也可以查看/etc/shadow的文件结构:
如shadow(5)中所述,这个文件中被 “:” 分隔的每项含义如下 。
3、/etc/group
Group account information.-- 组信息
通过查看group(5)手册也可以查看/etc/group的文件结构:
如group(5)中所述,这个文件中被“:”分隔的每项含义如下 。
注意:
“/etc/gshadow” 为 “/etc/group” 提供了与 “/etc/shadow” 相似的功能,但没有被真正地使用 。
4、/etc/gshadow
Secure group account information. -- 安全加密的组信息
5、/etc/default/useradd
Default values for account creation.-- 创建用户时的默认设置
6、/etc/skel/
Directory containing default files.-- 用户主目录的默认内容
7、/etc/subgid
Per user subordinate group IDs.
8、/etc/subuid
Per user subordinate user IDs.
9、/etc/login.defs
Shadow password suite configuration.
1、添加用户 -- useradd
useradd -- create a new user or update default new user information.
常用参数:
例1:最简单的例子
例2:创建一个可以使用的帐号
例3:查看useradd默认设置
使用useradd创建用户时还会参考文件/etc/login.defs的设置 , 比如UID/GID的指定数值、用户主文件夹设置值、用户删除与密码设置值等,这里也不做深入讨论了 。
2、用户密码管理 -- passwd
passwd - change user password
常用参数:
3、用户密码管理 -- chage
chage - change user password expiry information
4、用户信息修改 -- usermod
usermod - modify a user account
当然,以上的修改你也可以通过手动修改相关的配置文件来达到一样的目的 。
5、删除用户 -- userdel
userdel - delete a user account and related files
注意:
1)一般而言,该帐号如果只是暂时不启用的话,那么将/etc/shadow里面帐号失效日期(第八字段)设置为0就可以让该帐号无法登录 , 但所有相关的数据都会留下来 。使用userdel的时候通常是你真的确定不要该用户在主机上面用任何数据了!
2)如果想要完整地将某个帐号删除 , 最好可以执行userdel -r username之前,先以“find / -user username”查出整个系统内属于username的文件,然后再进行删除 。
1、初始用户组(initial group)与 有效用户组(effective group):
在/etc/passwd里面的第四列有一个所谓的GID,它就是“ 初始用户组 ” 。也就是说,当用户登录系统,立刻就拥有这个用户组的相关权限的意思 。
有效用户组:即帐号当前(实时)所使用的用户组 。
次要用户组:次要用户组就是除了用户的初始用户组外的其它所属组,在/etc/group的最后一个字段中所设置,可以有多个(多个用逗号','隔开) 。
使用usermod -g可以修改初始用户组,而使用usermod -G则可以修改次要用户组 。
例1:修改用户次要用户组
例2:有效与支持用户组的查看
在这个输出的信息中,可知道nosee这个用户同时属于nosee及users这两个组 , 而且,第一个输出的即为“ 有效用户组 ” 。也就是说,上面例子中的有效用户组为nosee 。
2、有效用户组的切换 -- newgrp
上面例子中,nosee的有效用户组从nosee转变成了users 。
现在我们来深入讨论下newgrp这个命令 , 这个命令可以更改目前用户的有效用户组,而且是另外以一个新的shell来提供这个功能 。因此如果你想要回到原本的环境中,只需要输入exit即可 。
3、新增用户组 -- groupadd
groupadd - create a new group
常用参数:
4、用户组参数修改 -- groupmod
groupmod - modify a group definition on the system
常用参数:
注意:不要随意改动GID,容易造成系统资源的错乱 。
5、删除用户组 -- groupdel
groupdel - delete a group
注意,只有在/etc/passwd内没有任何用户使用该用户组的作为初始用户组的时候 , 才可以成功删除 。
6、用户组管理员功能 -- gpasswd
gpasswd - administer /etc/group and /etc/gshadow
1)系统管理员(root)的常用参数
2)用户组管理员(Group administrators)的常用参数
1、su
su - change user ID or become superuser
su是最简单的身份切换命令了 , 它可以进行任何身份的切换 。
常用参数:
注意:
1)这个su的用法当中 , 有没有加上“-”差很多的,转为涉及login-shell与not-login shell的变量读取方法 。即想要完整的切换到新用户的环境,可以利用“su - username”或“su -l username” 。
2)使用root切换到任何用户时,都不需要输入密码
3)当从其它用户切换到root用户时都必须输入root的密码,这样root的密码就很容易流传出去,这是很不妥当的,所以才会有sudo这个命令的出现 。
2、sudo
sudo, sudoedit — execute a command as another user
sudo的执行仅需要自己的密码,甚至可以设置不需要密码即可执行sudo 。由于sudo可以让你以其他的用户身份执行命令(通常是root的身份),因此并不是所有人才能执行sudo,而是仅有/etc/sudoers内的用户才能够执行sodu这个命令 。
/etc/sudoers文件内容如下:
常用参数:
例:使用nosee的身份在/home/nosee/目录下新建一个test文件
sudo的执行流程:
1)当用户执行sudo时,系统于/etc/sudoers文件查找该用户是否有执行sudo的权限linux中密码管理命令;
2)若用户具有可执行sudo的权限后,便让用户输入自己的密码来确认linux中密码管理命令;
3)若密码输入成功,便开始进行sudo后续接的命令(但root执行sudo时不需要输入密码);
4)若欲切换的用户与执行者身份相同,那也不需要输入密码 。
因为/etc/sudoers文件有一定的规则 , 所以我们一帮不直接用vi去编辑 。一般,我们都是使用visudo来修改这个文件 。
3、visudo
因为/etc/sudoers是有语法的,如果设置错误那会造成无法使用sudo的不良后果,因此才会使用visudo去修改 。
一般来说,visudo的设置方式有几种简单的方法,正面我们以几个简单的例子来说明:
1)单一用户可以进行root的所有命令与sudoer文件语法
例:让用户nosee可以使用root的所有命令
2)利用用户组及免密功能处理visudo
例:让nosee用户组可以使用root的所有命令 , 并且不需要输入密码
注意:用户组的表示只需要在前面加一个百分号%即可,NOPASSWD则是免密的关键字 。
3)有限制的命令操作
例:让user1用户仅能使用passwd这个命令帮root修改其他用户的密码
注意:最后一个参数一定要用绝对路径才行,否则visudo会出现语法错误 。
但这里有个可怕的地方,就是用户user1竟然也可以去修改root的密码了,这是不应该允许发生的 , 为了避免上述的问题,应该使用下面的这种配置:
上面参数的意思是,用户user1可以执行“passwd 任意字符串”,但是“passwd”与“passwd root”两个命令除外 。
4)通过别名设置visudo
5)sudo的时间间隔问题
两次执行sudo的间隔时间在5分钟内,那么再次执行sudo时就不需要再次输入密码 。
6)sudo搭配su的使用方式
很多时候我们需要大量执行很多root的工作 , 所以一直sudo觉得麻烦 。这里有一个变身root用户的办法,而且还不会外泄root密码,前提是你要非常信任你将要为他们做此次设置的用户 。
1、查看用户当前所用的shell
1)实时查看当前进程中使用的shell种类:推荐
2)最常用的查看shell的命令 , 但不能实时反映当前shell
3)环境变量中shell的匹配查找
4)口令文件中shell的匹配查找
2、强制踢出已登录用户
或也可以给他发送一条信息 。
3、adduser
adduser也可以用于用户的添加 , 感觉兴趣的同学可以自行去查阅相关的资料 。
1、《鸟哥的Linux私房菜基础学习篇》-- 鸟哥
2、Debian官方参考手册
如发现有写得不对或不好的地方非常欢迎到评论区指出与交流,感谢阅读!
——《完》
【linux中密码管理命令 linux密码管理工具】关于linux中密码管理命令和linux密码管理工具的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息 , 记得收藏关注本站 。

    推荐阅读