首页 > 运维 > linux运维 > 正文

Linux日常运维-SSHD(一)

蓮花仙者
发布: 2025-06-20 15:12:19
原创
286人浏览过

作者介绍:在简历上没有标榜自己为精通的运维工程师。请点击上方的蓝色《运维小路》关注我,下面的思维导图展示了计划更新的内容和当前进度(不定期更新)。

Linux日常运维-SSHD(一)本小节内容属于Linux进阶部分的日常运维内容,掌握这些日常运维技巧或方法将在我们的日常运维过程中带来诸多便利。主要从以下几个部分进行讲解:

Linux日常运维-主机名&hosts

Linux日常运维-history

Linux日常运维-SSHD(一)(本章节)

Linux日常运维-SSHD(二)

Linux日常运维-ENV(一)

Linux日常运维-ENV(二)

Linux日常运维-任务计划

我们之前讨论了如何通过ssh进行登录,通常是使用密码进行的。然而,在ssh登录过程中还有几个常见的问题,比如我们是否可以不使用ssh密码,而采用一种无密码的方式进行登录(目前许多公有云平台在创建新的云主机时,可以选择使用密码还是密钥),以及ssh端口默认是22,是否可以修改,或者为了安全,是否可以禁止root登录。

无密码登录时通常会涉及到两个概念:私钥和公钥,它们是一对的。私钥存放在本地服务器中,而公钥则存放在我们希望无密码登录的服务器中。如果从云平台开通主机时选择密钥登录,你将获得一个文件,这就是私钥。如果你不想使用系统生成的密钥,你也可以上传自己定义的公钥。

在实际运维中,某些软件要求配置无密码登录才能更好地运行,甚至必须使用无密码登录。还可以设置服务器使用一个你自己都不知道或者是空的密码,然后通过密钥登录来提高安全性。

配置无密码登录

1.生成公钥及私钥

# 输入该命令后,一直按回车即可。
# 这里也可以添加许多参数,甚至可以设置密钥的密码。
[root@localhost ~]# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:4jzW3nqWv4wxN7j4v0LjFI+DUuYFVQ1xeiS6fUF3yGo root@localhost.localdomain
The key's randomart image is:
+---[RSA 2048]----+
|         ...==+.o|
|        .  . *+..|
|         .. ..o  |
|        o ooE. . |
|      .+So.=. .  |
|     o.oo *...   |
|      =..+++o    |
|     . o o*B .   |
|        +==+*o   |
+----[SHA256]-----+
登录后复制

2.查看公钥和私钥

[root@localhost]# ls -l /root/.ssh/
总用量 8
-rw-------. 1 root root 1675 6月  28 22:57 id_rsa     //私钥
-rw-r--r--. 1 root root  408 6月  28 22:57 id_rsa.pub //公钥
登录后复制

3.将公钥传输到其他服务器

# 需要输入对方服务器的密码
# 也可以手动将id_rsa.pub文件的内容放到/root/.ssh/authorized_keys中,注意权限
# 我们将公钥传输到108服务器后,就可以无密码登录108服务器了
[root@localhost .ssh]# ssh-copy-id 192.168.179.108
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
The authenticity of host '192.168.179.108 (192.168.179.108)' can't be established.
ECDSA key fingerprint is SHA256:KcCHSnldK0xz0g82jmvKQ5bFYI8Wn04rPYbmK94nwhQ.
ECDSA key fingerprint is MD5:f3:3b:6d:09:54:06:57:b0:13:3a:75:e1:ca:79:70:bd.
Are you sure you want to continue connecting (yes/no)? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@192.168.179.108's password: 
Number of key(s) added: 1
<p>Now try logging into the machine, with:   "ssh '192.168.179.108'"
and check to make sure that only the key(s) you wanted were added.
登录后复制

4.查看远程服务器的公钥

# 虽然公钥在原始服务器的名字和内容是/root/.ssh/id_rsa.pub,但在复制到新服务器后名字会变成authorized_keys</p><h1>如果该服务器允许多个其他机器无密码登录,则该文件会有多行。</h1><p>[root@localhost .ssh]# cd /root/.ssh/
[root@localhost .ssh]# ls -l
总用量 4
-rw-------. 1 root root 408 6月  28 23:02 authorized_keys
登录后复制

5.验证无密码登录

# 未输入密码,也可以直接登录。</p><h1>登录时,它会读取本地的私钥和服务器中的公钥进行验证,验证通过则登录成功。</h1><p>[root@localhost .ssh]# ssh 192.168.179.108
Last login: Fri Jun 28 23:09:05 2024 from 192.168.179.1
[root@localhost ~]#
登录后复制

总结

1.这里所有的操作都是基于root账号进行的,实际上也可以使用普通账号配置无密码登录。

2.将私钥带到Windows上也可以成功登录服务器,使用ssh软件并选择密钥登录即可。

3.如果不进行任何操作,它同时支持密码和密钥两种登录方式。也就是说,可以使用密钥登录,也可以使用密码登录。

4.同一台服务器,可以配置多个公钥,允许不同的私钥使用无密码登录。在实际的authorized_keys文件中,这会体现为多行。

5.使用密钥登录可以避免密码被撞库的风险,从而提高系统的安全性。

以上就是Linux日常运维-SSHD(一)的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号