Linux如何禁止用户登录?nologin与锁定账户方法
发布时间 - 2025-07-03 00:00:00 点击率:次禁止用户登录linux系统主要有两种方法:使用/sbin/nologin和passwd -l。1. 使用usermod -s /sbin/nologin username可永久禁用用户登录,并可通过/etc/nologin.txt自定义提示信息;2. 使用passwd -l username临时锁定账户,密码前加!表示锁定,通过passwd -u username解锁;前者更彻底且支持提示信息,后者适合临时禁用并保留原shell配置;同时需注意系统路径差异及非密码认证的限制补充。
禁止用户登录在Linux系统管理中是一个常见的需求,通常是为了安全或维护目的。实现这一目标的方法主要有两种:使用/sbin/nologin shell和锁定用户账户。下面详细说明这两种方法的操作步骤和适用场景。
使用 /sbin/nologin 禁止用户登录
这种方法适用于需要永久或长期禁用用户登录的情况。当用户的默认shell设置为/sbin时,该用户将无法通过终端或SSH登录系统。
/nologin
-
修改用户的登录Shell
使用usermod命令更改用户的默认shell:sudo usermod -s /sbin/nologin username
这样一来,用户尝试登录时会收到一个提示信息,默认情况下是“此帐户目前不可用”。
-
自定义提示信息(可选)
如果需要给用户更具体的提示,可以编辑/etc/nologin.txt文件,并在里面写入想要显示的消息。例如:您的账号已被禁用,请联系管理员。
这种方式不会影响用户在系统中的其他权限,比如运行定时任务或作为服务账户使用。
使用 passwd -l 锁定用户账户
如果你只是想临时禁用某个用户登录,而不改变其登录Shell,可以使用 passwd -l 命令锁定账户。
-
锁定用户账户命令:
sudo passwd -l username
这个操作会在
/etc/shadow文件中将用户的密码前加上一个感叹号(!),表示密码被锁定。 -
解锁用户账户命令:
sudo passwd -u username
锁定账户后,用户仍然可以通过其他方式(如SSH密钥认证)登录,前提是这些认证方式没有被额外限制。因此,如果要完全禁止登录,建议结合PAM模块或其他机制进行补充控制。
nologin 与锁定账户的区别
两种方法各有优劣,选择取决于具体需求:
-
/sbin/nologin的优势:- 更彻底地阻止登录行为,包括非密码认证方式(如SSH密钥)。
- 可以提供友好的提示信息。
-
passwd -l的优势:- 更适合临时性禁用,便于快速恢复。
- 不会影响用户的登录Shell配置,保留原有环境。
需要注意的是,某些系统可能使用 /usr/sbin/nologin 或 /bin/false 替代 /sbin/nologin,效果类似但细节略有不同。使用前建议确认路径是否正确。
基本上就这些。根据实际需求选择合适的方式即可,不复杂但容易忽略的是提示信息的设置和路径差异问题。
# linux
# 区别
# ssh
# 提示信息
# 用户登录
# 的是
# 两种
# 自定义
# 解锁
# 是一个
# 您的
# 如果你
# 已被
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Laravel Livewire是什么_使用Laravel Livewire构建动态前端界面
如何在云主机快速搭建网站站点?
如何正确选择百度移动适配建站域名?
bing浏览器学术搜索入口_bing学术文献检索地址
Laravel如何实现邮件验证激活账户_Laravel内置MustVerifyEmail接口配置【步骤】
laravel服务容器和依赖注入怎么理解_laravel服务容器与依赖注入解析
Internet Explorer官网直接进入 IE浏览器在线体验版网址
Laravel怎么在Controller之外的地方验证数据
Laravel如何使用withoutEvents方法临时禁用模型事件
如何快速打造个性化非模板自助建站?
phpredis提高消息队列的实时性方法(推荐)
Python函数文档自动校验_规范解析【教程】
1688铺货到淘宝怎么操作 1688一键铺货到自己店铺详细步骤
教学论文网站制作软件有哪些,写论文用什么软件
?
浏览器如何快速切换搜索引擎_在地址栏使用不同搜索引擎【搜索】
如何在新浪SAE免费搭建个人博客?
laravel怎么为API路由添加签名中间件保护_laravel API路由签名中间件保护方法
Laravel如何自定义分页视图?(Pagination示例)
Laravel如何将应用部署到生产服务器_Laravel生产环境部署流程
创业网站制作流程,创业网站可靠吗?
Python文本处理实践_日志清洗解析【指导】
Laravel怎么清理缓存_Laravel optimize clear命令详解
JavaScript 输出显示内容(document.write、alert、innerHTML、console.log)
微博html5版本怎么弄发超话_超话进入入口及发帖格式要求【教程】
C++用Dijkstra(迪杰斯特拉)算法求最短路径
VIVO手机上del键无效OnKeyListener不响应的原因及解决方法
edge浏览器无法安装扩展 edge浏览器插件安装失败【解决方法】
Laravel如何获取当前用户信息_Laravel Auth门面获取用户ID
Win11任务栏卡死怎么办 Windows11任务栏无反应解决方法【教程】
Laravel如何实现文件上传和存储?(本地与S3配置)
JavaScript如何实现类型判断_typeof和instanceof有什么区别
JavaScript Ajax实现异步通信
Laravel如何创建自定义中间件?(Middleware代码示例)
Android利用动画实现背景逐渐变暗
香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
如何在IIS管理器中快速创建并配置网站?
Laravel如何实现多表关联模型定义_Laravel多对多关系及中间表数据存取【方法】
魔毅自助建站系统:模板定制与SEO优化一键生成指南
Win11搜索栏无法输入_解决Win11开始菜单搜索没反应问题【技巧】
Laravel怎么发送邮件_Laravel Mail类SMTP配置教程
如何在建站宝盒中设置产品搜索功能?
Laravel如何处理JSON字段_Eloquent原生JSON字段类型操作教程
如何做网站制作流程,*游戏网站怎么搭建?
Laravel distinct去重查询_Laravel Eloquent去重方法
国美网站制作流程,国美电器蒸汽鍋怎么用官方网站?
如何在宝塔面板中修改默认建站目录?
Laravel如何安装使用Debugbar工具栏_Laravel性能调试与SQL监控插件【步骤】
java ZXing生成二维码及条码实例分享
阿里云网站搭建费用解析:服务器价格与建站成本优化指南

