Linux禁止root远程登录_提升系统安全性技巧【教学】

发布时间 - 2025-12-17 00:00:00    点击率:

Linux系统默认允许root用户通过SSH远程登录,这虽然方便管理,但存在严重安全风险。攻击者一旦爆破或窃取root密码,即可获得最高权限,直接控制整个服务器。因此,禁止root远程登录是加固系统最基础、最关键的一步。

修改SSH配置禁用root登录

核心操作是编辑SSH服务主配置文件/etc/ssh/sshd_config,调整PermitRootLogin参数:

  • PermitRootLogin yes改为PermitRootLogin no(彻底禁止)
  • 或设为PermitRootLogin prohibit-password(仅允许密钥登录,禁用密码登录)
  • 修改后必须执行sudo systemctl restart sshd(或sshd,取决于系统)重载服务
  • 操作前建议先用普通用户建立好带sudo权限的账户,并验证其能正常提权,避免锁死自己

创建并配置普通管理用户

禁用root后,需用普通用户替代完成日常运维:

  • 运行sudo adduser admin新建用户(如admin),按提示设置密码
  • 执行sudo usermod -aG sudo adminDebian/Ubuntu)或sudo usermod -aG wheel admin(CentOS/RHEL)赋予sudo权限
  • 切换到该用户测试:su - adminsudo whoami应返回root
  • 后续所有远程登录均使用该用户,再用sudo执行需要特权的操作

推荐搭配密钥登录提升防护等级

仅禁用root还不够,配合SSH密钥认证可大幅降低暴力破解风险:

  • 本地生成密钥对:ssh-keygen -t ed25519(推荐ed25519算法)
  • 上传公钥到服务器:ssh-copy-id admin@your-server-ip
  • sshd_config中启用密钥认证:PubkeyAuthentication yes
  • 进一步增强安全:设PasswordAuthentication no关闭密码登录(务必确认密钥已生效后再重启sshd)

验证与应急准备

配置完成后必须验证有效性,同时保留退路:

  • 新开终端窗口,用普通用户尝试SSH登录:ssh admin@your-server-ip
  • 登录后执行sudo -i确认可切换到root环境
  • 检查sudo journalctl -u sshd --since "1 hour ago"有无拒绝root登录的日志
  • 确保服务器控制台(如云平台VNC、物理终端)可访问,防止SSH配置失误导致失联


# linux  # word  # centos  # go  # ubuntu  # 配置文件  # linux系统  # copy  # 算法  # ssh  # debian  # 普通用户  # 远程登录  # 该用户  # 切换到  # 设为  # 新开  # 再用  # 还不够  # 重启  # 先用 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel怎么实现前端Toast弹窗提示_Laravel Session闪存数据Flash传递给前端【方法】  晋江文学城电脑版官网 晋江文学城网页版直接进入  香港服务器部署网站为何提示未备案?  Python3.6正式版新特性预览  JavaScript中如何操作剪贴板_ClipboardAPI怎么用  如何确保西部建站助手FTP传输的安全性?  详解免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)  如何用ChatGPT准备面试 模拟面试问答与职场话术练习教程  网站建设整体流程解析,建站其实很容易!  宙斯浏览器文件分类查看教程 快速筛选视频文档与图片方法  Laravel如何实现数据导出到PDF_Laravel使用snappy生成网页快照PDF【方案】  Laravel如何使用Gate和Policy进行授权?(权限控制)  大连网站制作公司哪家好一点,大连买房网站哪个好?  制作无缝贴图网站有哪些,3dmax无缝贴图怎么调?  实例解析angularjs的filter过滤器  HTML5建模怎么导出为FBX格式_FBX格式兼容性及导出步骤【指南】  如何安全更换建站之星模板并保留数据?  Laravel怎么实现观察者模式Observer_Laravel模型事件监听与解耦开发【指南】  独立制作一个网站多少钱,建立网站需要花多少钱?  Laravel怎么使用Blade模板引擎_Laravel模板继承与Component组件复用【手册】  Laravel怎么为数据库表字段添加索引以优化查询  利用vue写todolist单页应用  高性能网站服务器配置指南:安全稳定与高效建站核心方案  无锡营销型网站制作公司,无锡网选车牌流程?  如何用美橙互联一键搭建多站合一网站?  Laravel如何优化应用性能?(缓存和优化命令)  Laravel如何实现多对多模型关联?(Eloquent教程)  高配服务器限时抢购:企业级配置与回收服务一站式优惠方案  b2c电商网站制作流程,b2c水平综合的电商平台?  php json中文编码为null的解决办法  BootStrap整体框架之基础布局组件  利用JavaScript实现拖拽改变元素大小  Laravel storage目录权限问题_Laravel文件写入权限设置  Laravel怎么发送邮件_Laravel Mail类SMTP配置教程  Laravel中DTO是什么概念_在Laravel项目中使用数据传输对象(DTO)  Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】  php后缀怎么变mp4格式错误_修改扩展名提示格式不对怎么办【技巧】  微信小程序 闭包写法详细介绍  edge浏览器无法安装扩展 edge浏览器插件安装失败【解决方法】  Windows10电脑怎么查看硬盘通电时间_Win10使用工具检测磁盘健康  详解MySQL数据库的安装与密码配置  Laravel怎么调用外部API_Laravel Http Client客户端使用  Laravel全局作用域是什么_Laravel Eloquent Global Scopes应用指南  作用域操作符会触发自动加载吗_php类自动加载机制与::调用【教程】  Laravel如何实现全文搜索功能?(Scout和Algolia示例)  Laravel怎么做缓存_Laravel Cache系统提升应用速度的策略与技巧  Laravel集合Collection怎么用_Laravel集合常用函数详解  如何用好域名打造高点击率的自主建站?  如何在万网自助建站中设置域名及备案?  Linux虚拟化技术教程_KVMQEMU虚拟机安装与调优