百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

CentOS 创建新用户并赋予 root 权限,禁止 root 登陆

itomcoil 2025-04-10 23:47 36 浏览

原文:https://lwebapp.com/zh/post/centos-adduser

需求

最近遇到了阿里云 ECS 服务器被 DDoS 攻击的问题,说明我们的服务器安全性有待提高。从 ssh 登陆方面考虑,可以给 linux 系统设置子用户,禁止 root 登陆,能够提升一定的安全性。

本文你将会学习到

  • 如何给 linux 系统、CentOS 系统创建新用户,并设置密码
  • 如何给 CentOS 新用户授予权限控制
  • 如何禁止 root 登陆提升服务器 ssh 远程连接安全
  • 如何重启 sshd 服务
  • 如何查看文件权限及修改文件权限

用户管理

  1. 创建用户,设置密码 先创建一个用户,起个名字,比如 lwebapp adduser lwebapp
    为用户 lwebapp 设置密码,会触发交互,输入密码即可 passwd lwebapp # 触发交互,输入密码 lwebappwd
  2. 授予 root 权限 修改sudoers,为新创建的用户赋予 root 权限,这样每次只需要用新用户lwebapp登录,就能完成所有服务器操作了。 sudoers文件在/etc目录下,首先修改下这个文件的权限为允许修改 chmod 777 /etc/sudoers
    然后用vim打开 敲击i进入编辑模式 vim /etc/sudoers
    接着在root ALL=(ALL) ALL这句话后面换行,输入 lwebapp ALL=(ALL) ALL # 为lwebapp赋予所有权限,和上面的root一样
    敲击Esc,输入冒号:进入 vim 命令模式,再输入wq,敲击Enter保存退出 保存完文件再把文件权限设置回来 chmod 444 /etc/sudoers
  3. 禁止 root 登入 因为有了新用户,就把 root 用户登陆的权限给禁止掉,这样黑客就没办法通过破解 root 登陆才操作服务器,至少我们的新用户名变了,给黑客攻击增加了一层难度 找到并编辑sshd_config文件 vim /etc/ssh/sshd_config
    找到PermitRootLogin yes,把yes改成no,意思就是不允许 root 账户登陆 PermitRootLogin no
  4. 重启 sshd 最后重启 sshd 才能生效 systemctl restart sshd.service

原文:https://lwebapp.com/zh/post/centos-adduser

扩展学习

文件权限

  1. 查看文件权限 stat -c '%A %a %n' *
  2. 让某个文件夹内所有文件都有 777 权限 chmod 777 -R ./webapps

vim 基本操作

  1. 打开一个文件 vim file.txt
  2. 进入编辑模式
    敲击
    i,终端界面底部显示-- INSERT --即为编辑模式
  3. 进入命令模式
    输入
    :,终端界面底部显示:和光标
  4. 退出编辑模式或者命令模式
    敲击
    Esc
  5. 保存退出
    命令模式下,输入
    wq,敲击确定Enter即完成保存退出
  6. 强制退出
    命令模式下,输入
    q!,敲击确定Enter即完成强制退出

sshd 服务

  1. 查看 sshd 服务状态 systemctl status sshd.service
    会显示一系列服务状态,比如running就表示是启动成功的状态
  2. 启动 sshd 服务 systemctl start sshd.service
  3. 重启 sshd 服务 systemctl restart sshd.service
  4. 设置为开机启动 systemctl enable sshd.service

参考

  • centos 创建新用户赋予 root 权限并禁止 root 登陆
  • centos7.5 创建新账号赋 root 权限
  • centos7 下重启 sshd 服务的操作方法

相关推荐

字节三面:MySQL数据同步ES的4种方法!你能想到几种?

如何进行数据同步MySQL是一种流行的关系型数据库,而Elasticsearch是一个强大的搜索引擎和分析平台。将MySQL数据同步到Elasticsearch中可以帮助我们更方便地搜索和分析数据。在...

Java 连接 MySQL 数据库(java连接mysql课设)

一、环境准备1.1依赖管理(Maven)在项目的pom.xml中添加MySQL驱动依赖:<dependency><groupId>mysql</gro...

Spring Boot 连接 MySQL 数据库(spring boot配置数据库连接)

一、环境准备1.1依赖管理(Maven)<!--方案1:JdbcTemplate--><dependency><groupId>org.sprin...

java连接mysql数据库达成数据查询详细教程

前言:本篇文章适用于所有前后端开发者众所周知,只要是编程,那肯定是需要存储数据的,无论是c语言还是java,都离不开数据的读写,数据之间传输不止,这也就形成了现代互联网的一种相互存在关系!而读写存储的...

既然有MySQL了,为什么还要有MongoDB?

大家好,我是哪吒,最近项目在使用MongoDB作为图片和文档的存储数据库,为啥不直接存MySQL里,还要搭个MongoDB集群,麻不麻烦?让我们一起,一探究竟,了解一下MongoDB的特点和基本用法,...

用 JSP 连接 MySQL 登入注册项目实践(JSP + HTML + CSS + MySQL)

目录一、写在前面二、效果图三、实现思路四、实现代码1、login总界面2、registercheck总代码3、logoutcheck总代码4、amendcheck总代码相关文章一、写在前面哈喽~大家好...

MySQL关联查询时,为什么建议小表驱动大表?这样做有什么好处

在SQL数据库中,小表驱动大表是一种常见的优化策略。这种策略在涉及多表关联查询的情况下尤其有效。这是因为数据库查询引擎会尽可能少的读取和处理数据,这样能极大地提高查询性能。"小表驱动大表&...

mysql8驱动兼容规则(mysql8.0驱动)

JDBC版本:Connector/J8.0支持JDBC4.2规范.如果Connector/J8.0依赖于更高版本的jdbclib,对于调用只有更高版本特定的方法会抛出SQLFea...

mysql数据表如何导入MSSQL中(mysql怎样导入数据)

本案例演示所用系统是windowsserver2012.其它版本windows操作系统类似。1,首先需要下载mysqlodbc安装包。http://dev.mysql.com/downloa...

MySQL 驱动中虚引用 GC 耗时优化与源码分析

本文要点:一种优雅解决MySQL驱动中虚引用导致GC耗时较长问题的解决方法虚引用的作用与使用场景MySQL驱动源码中的虚引用分析背景在之前文章中写过MySQLJDBC驱动中的虚引用导致...

ExcelVBA 连接 MySQL 数据库(vba 连接sqlserver)

上期分享了ExcelVBA连接sqlite3数据库,今天给大家分享ExcelVBA连接另一个非常流行的MySQL数据库。一、环境win10Microsoftoffice2010(...

QT 5.12.11 编译MySQL 8 驱动教程- 1.01版

安装编译环境:qt5.12.11mysql8.0.28修改mysql.pro工程文件,编译生成动态库mysql.pro文件位置:D:\Alantop_Dir\alantop_sde\Qt\Qt5....

「Qt入门第22篇」 数据库(二)编译MySQL数据库驱动

导语在上一节的末尾我们已经看到,现在可用的数据库驱动只有两类3种,那么怎样使用其他的数据库呢?在Qt中,我们需要自己编译其他数据库驱动的源码,然后当做插件来使用。下面就以现在比较流行的MySQL数据库...

(干货)一级注册计量师第五版——第四章第三节(三)

计量标准的建立、考核及使用(三)PS:内容都是经过个人学习而做的笔记。如有错误的地方,恳请帮忙指正!计量标准考核中有关技术问题1检定或校准结果的重复性重复性是指在一组重复性测量条件下的测量精密度。检定...

声学测量基础知识分享(声学测量pdf)

一、声学测量的分类和难点1.声学测量的分类声学测量按目的可分为:声学特性研究(声学特性研究、媒质特性研究、声波发射与接收的研究、测量方法与手段的研究、声学设备的研究),声学性能评价和改善(声学特性评价...