CentOS系统中创建用户并启用SSH密钥登录的步骤
187 浏览量
更新于2024-08-28
收藏 86KB PDF 举报
"本文主要介绍了如何在CentOS 7.6.1810系统上创建新用户并启用SSH密钥登录,同时禁止root用户的直接登录,以提高系统的安全性与管理效率。"
在CentOS操作系统中,为了实现更安全、更有效的权限管理,通常会避免直接使用root用户进行日常操作,而是创建具有特定权限的普通用户。在这个过程中,我们将学习如何使用`useradd`命令创建新用户,并配置SSH密钥对认证,以实现无密码登录。
首先,让我们了解`useradd`和`adduser`的关系。在CentOS中,这两个命令实际上是一致的,`adduser`只是`useradd`的软链接,功能相同。它们用于创建新的系统用户。例如,我们可以执行以下命令创建名为"luizyao"的新用户:
```bash
[root@centos_7_6_1810 ~]# useradd luizyao
```
创建用户后,系统会在/home目录下创建一个与用户名同名的目录,作为该用户的工作空间。执行`ls /home`即可查看新创建的用户目录。
接下来,我们需要为新用户设置密码,以便通过SSH登录。使用`passwd`命令:
```bash
[root@centos_7_6_1810 ~]# passwd luizyao
```
按照提示输入新密码并确认。
然后,我们生成SSH密钥对。这通常在新用户的家目录下执行,确保私钥(id_rsa)不被共享,公钥(id_rsa.pub)可以放在远程服务器的授权钥匙列表中。在新用户的终端中运行:
```bash
su - luizyao
ssh-keygen
```
按回车键接受默认位置保存密钥对,无需设置密码。
接着,将生成的公钥复制到远程服务器的`.ssh/authorized_keys`文件中。如果文件不存在,需要先创建它:
```bash
mkdir ~/.ssh
touch ~/.ssh/authorized_keys
chmod 700 ~/.ssh
chmod 644 ~/.ssh/authorized_keys
cat ~/.ssh/id_rsa.pub | ssh [remote_user]@[remote_host] 'cat >> ~/.ssh/authorized_keys'
```
这里,`[remote_user]`是远程服务器上的用户名,`[remote_host]`是远程服务器的IP或域名。
最后,为了增强安全性,我们通常会禁止root用户通过SSH直接登录。编辑`/etc/ssh/sshd_config`文件,找到`PermitRootLogin`行并将其改为`PermitRootLogin no`,然后重启SSH服务:
```bash
sudo vi /etc/ssh/sshd_config
sudo systemctl restart sshd
```
现在,新用户luizyao已经可以使用SSH密钥对无密码登录了,而root用户则无法直接通过SSH接入,从而提高了系统的安全性。
总结,创建新用户并启用SSH密钥登录的过程包括:使用`useradd`创建用户,设置用户密码,生成并配置SSH密钥对,以及禁用root用户的SSH登录。这一系列操作有助于实现权限分离,提升系统安全性和管理效率。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2023-05-13 上传
2016-08-25 上传
2022-07-13 上传
点击了解资源详情
2023-04-04 上传
2023-05-13 上传
weixin_38745891
- 粉丝: 4
- 资源: 1000
最新资源
- C语言数组操作:高度检查器编程实践
- 基于Swift开发的嘉定单车LBS iOS应用项目解析
- 钗头凤声乐表演的二度创作分析报告
- 分布式数据库特训营全套教程资料
- JavaScript开发者Robert Bindar的博客平台
- MATLAB投影寻踪代码教程及文件解压缩指南
- HTML5拖放实现的RPSLS游戏教程
- HT://Dig引擎接口,Ampoliros开源模块应用
- 全面探测服务器性能与PHP环境的iprober PHP探针v0.024
- 新版提醒应用v2:基于MongoDB的数据存储
- 《我的世界》东方大陆1.12.2材质包深度体验
- Hypercore Promisifier: JavaScript中的回调转换为Promise包装器
- 探索开源项目Artifice:Slyme脚本与技巧游戏
- Matlab机器人学习代码解析与笔记分享
- 查尔默斯大学计算物理作业HP2解析
- GitHub问题管理新工具:GIRA-crx插件介绍