• [OS-Linux] 创建新用户以及 使用私钥登录Linux


    简介

    💻Linux发行版本:CentOS 7.x

    🔊 我们使用ssh 服务登录服务器时,如果用用户名和密码登录时(超户基本都叫root,名字知道了,下面你们懂得),极其不安全。如果使用密钥对登录的方式,对咱们的服务器来说,等于又添加了一道枷锁,(让坏人更加难以进入我们的服务器为所欲为)。那么我们就来看一下密钥对如何设置吧

    方法 / 步骤

    一: 添加用户

    1.1 创建新用户

    Linux 创建新用户,当前用户必须为 root 用户

    useradd [用户名]  	// 默认主文件夹在 `/home` 目录 
    passwd [用户名]		// 设置用户密码
    
    • 1
    • 2

    在这里插入图片描述

    1.2 新用户授权

    新创建的用户并不能使用 sudo 命令,需要给他添加授权。

    chmod -v u+w /etc/sudoers
    
    • 1

    在这里插入图片描述

    • 修改 sudoers 文件,使用 vim 编辑器打开 sudoers 文件

    在 sudoers 文件中找到如下位置并添加如下内容:

    [用户名]    ALL=(ALL)    ALL (若新用户需要使用 sudo 时不输密码, 则将此行最后一个 ALL 改为 NOPASSWD:ALL 即可)
    
    • 1

    在这里插入图片描述

    用户操作其他命令

    Linux 删除用户账号和主目录

    userdel -r [用户名]
    
    
    • 1
    • 2

    二: 设置私钥登录Linux

    2.1 生成密钥

    进入MobaXterm - 工具 - SSH密钥生成器
    在这里插入图片描述

    第二步:选择算法,生成密钥对(点击generate即可)

    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述
    保存公钥 ssh-ras.pub
    保存私钥 ssh-rsa-xx-key.ppk

    2.2 服务配置

    将公钥文件ssh-ras.pub 上传的目标服务器 /root/.ssh/ 目录下

    2.2.1 配置 ssh 使用密钥

    #进入 ssh 目录
    cd /root/.ssh/
    
    #将ssh-ras.pub 公钥信息 追加写入到 authorized_keys 文件中(如果没有则创建)
    cat id_rsa.pub >> authorized_keys
    #设置公钥权限(用户读写权限)
    chmod 600 authorized_keys
    #设置ssh文件夹权限(用户读写执行权限)
    chmod 700 ~/.ssh
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    2.2.2 修改 ssh 配置文件

    
    #打开修改
    vi  /etc/ssh/sshd_config
    
    
    # 然后对应如下修改:
     
    StrictModes no  
    AuthorizedKeysFile  .ssh/authorized_keys      #ssh文件位置,此项默认设置相同
    RSAAuthentication  yes		# RSA秘钥认证
    PubkeyAuthentication  yes	# 公钥认证
    PasswordAuthentication  no	#使用密码  no为不使用密码
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    为了保证安全,我们建议密码和密钥同时使用。完成以上步骤设置后,重启 sshd 服务:

    systemctl restart sshd.service
    service sshd restart
    
    • 1
    • 2

    参考资料 & 致谢

  • 相关阅读:
    【正点原子STM32连载】 第九章 STM32启动过程分析 摘自【正点原子】MiniPro STM32H750 开发指南_V1.1
    数据结构与算法 树 课后习题 选择题部分
    DataGrip 连接 Centos MySql失败
    EN 14846建筑五金件锁和闩锁—CE认证
    云计算基础知识
    redis---分布式锁存在的问题及解决方案(Redisson)
    【ES】---field、field.keyword的区别
    ELK 单机安装
    2022年9月19日--9月25日(ue4热更新视频教程为主,)
    SQL语句书写规范
  • 原文地址:https://blog.csdn.net/YangCheney/article/details/126253379