SSH通过密钥登录服务器,无须输入登录密码

2023-11-27 23:08

本文主要是介绍SSH通过密钥登录服务器,无须输入登录密码,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

SSH通过密钥登录服务器,无须输入登录密码


客户端 tech100,
服务器端 www.***.com

[simonsun@tech100 ~]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/simonsun/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/simonsun/.ssh/id_rsa.
Your public key has been saved in /home/simonsun/.ssh/id_rsa.pub.
The key fingerprint is:
.......................................... simonsun@tech100
[simonsun@tech100 ~]$ ssh -p 22 usr@www.***.com "mkdir /home/usr/.ssh;chmod u+rwx /home/usr/.ssh -Rf"
usr@www.***.com's password:
[simonsun@tech100 ~]$ scp -P 22 .ssh/id_rsa.pub usr@www.***.com:/home/usr/.ssh/
usr@www.***.com's password:

-----------以上是在客户端机器上完成生成公钥和密钥,并拷贝公钥到目标服务器端。

[simonsun@tech100 ~]$ ssh -p 22 usr@www.***.com
usr@www.***.com's password:
Last login: Tue Jul  6 14:54:28 2010 from  ***.***.**.**
[usr@target ~]# touch .ssh/authorized_keys
[usr@target ~]# ll .ssh/
total 12
-rw-r--r-- 1 usr usr   0 Jul  6 15:00 authorized_keys
-rw-r--r-- 1 usr usr 398 Jul  6 14:58 id_rsa.pub
[usr@target ~]# cat .ssh/id_rsa.pub >> .ssh/authorized_keys
[usr@target ~]# ll .ssh/
total 16
-rw-r--r-- 1 usr usr 398 Jul  6 15:00 authorized_keys
-rw-r--r-- 1 usr usr 398 Jul  6 14:58 id_rsa.pub
[usr@target ~]# exit
logout
Connection to www.***.com closed.
-----------以上是把刚才上传的公钥id_rsa.pub追加到.ssh/authorized_keys中,若有新的客户端仍可以把客户端生成的公钥都追加到 authorized_keys中。

[simonsun@tech100 ~]$ ssh -p 22 usr@www.***.com
Last login: Tue Jul  6 15:01:32 2010 from ***.***.**.**
[usr@target ~]# ls /
bin  boot  dev  etc  home  lib  lib64  lost+found  media  misc  mnt  net  opt  proc  usr  sbin  selinux  srv  sys  tmp  usr  var

-----------这样就达到通过密钥登录服务器,无须输入登录密码了。


参考连接:http://surpass-li.iteye.com/blog/161302

 

另如果用了非22端口,需要额外处理:http://shellfish.iteye.com/blog/711074

 

常见问题,保证在服务器端,authorized_keys能被other用户读取到,否则会提示输入密码,仍不能自动登录,如:

[usr@target ~]$ ll .ssh/
总计 4
-rw----r-- 1 usr usr 610 12-05 10:11 authorized_keys

这篇关于SSH通过密钥登录服务器,无须输入登录密码的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/428626

相关文章

数据库oracle用户密码过期查询及解决方案

《数据库oracle用户密码过期查询及解决方案》:本文主要介绍如何处理ORACLE数据库用户密码过期和修改密码期限的问题,包括创建用户、赋予权限、修改密码、解锁用户和设置密码期限,文中通过代码介绍... 目录前言一、创建用户、赋予权限、修改密码、解锁用户和设置期限二、查询用户密码期限和过期后的修改1.查询用

Window Server创建2台服务器的故障转移群集的图文教程

《WindowServer创建2台服务器的故障转移群集的图文教程》本文主要介绍了在WindowsServer系统上创建一个包含两台成员服务器的故障转移群集,文中通过图文示例介绍的非常详细,对大家的... 目录一、 准备条件二、在ServerB安装故障转移群集三、在ServerC安装故障转移群集,操作与Ser

NFS实现多服务器文件的共享的方法步骤

《NFS实现多服务器文件的共享的方法步骤》NFS允许网络中的计算机之间共享资源,客户端可以透明地读写远端NFS服务器上的文件,本文就来介绍一下NFS实现多服务器文件的共享的方法步骤,感兴趣的可以了解一... 目录一、简介二、部署1、准备1、服务端和客户端:安装nfs-utils2、服务端:创建共享目录3、服

Python项目打包部署到服务器的实现

《Python项目打包部署到服务器的实现》本文主要介绍了PyCharm和Ubuntu服务器部署Python项目,包括打包、上传、安装和设置自启动服务的步骤,具有一定的参考价值,感兴趣的可以了解一下... 目录一、准备工作二、项目打包三、部署到服务器四、设置服务自启动一、准备工作开发环境:本文以PyChar

Java中的密码加密方式

《Java中的密码加密方式》文章介绍了Java中使用MD5算法对密码进行加密的方法,以及如何通过加盐和多重加密来提高密码的安全性,MD5是一种不可逆的哈希算法,适合用于存储密码,因为其输出的摘要长度固... 目录Java的密码加密方式密码加密一般的应用方式是总结Java的密码加密方式密码加密【这里采用的

Apache Tomcat服务器版本号隐藏的几种方法

《ApacheTomcat服务器版本号隐藏的几种方法》本文主要介绍了ApacheTomcat服务器版本号隐藏的几种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需... 目录1. 隐藏HTTP响应头中的Server信息编辑 server.XML 文件2. 修China编程改错误

python实现自动登录12306自动抢票功能

《python实现自动登录12306自动抢票功能》随着互联网技术的发展,越来越多的人选择通过网络平台购票,特别是在中国,12306作为官方火车票预订平台,承担了巨大的访问量,对于热门线路或者节假日出行... 目录一、遇到的问题?二、改进三、进阶–展望总结一、遇到的问题?1.url-正确的表头:就是首先ur

如何在一台服务器上使用docker运行kafka集群

《如何在一台服务器上使用docker运行kafka集群》文章详细介绍了如何在一台服务器上使用Docker运行Kafka集群,包括拉取镜像、创建网络、启动Kafka容器、检查运行状态、编写启动和关闭脚本... 目录1.拉取镜像2.创建集群之间通信的网络3.将zookeeper加入到网络中4.启动kafka集群

mysql重置root密码的完整步骤(适用于5.7和8.0)

《mysql重置root密码的完整步骤(适用于5.7和8.0)》:本文主要介绍mysql重置root密码的完整步骤,文中描述了如何停止MySQL服务、以管理员身份打开命令行、替换配置文件路径、修改... 目录第一步:先停止mysql服务,一定要停止!方式一:通过命令行关闭mysql服务方式二:通过服务项关闭

Python如何实现 HTTP echo 服务器

《Python如何实现HTTPecho服务器》本文介绍了如何使用Python实现一个简单的HTTPecho服务器,该服务器支持GET和POST请求,并返回JSON格式的响应,GET请求返回请求路... 一个用来做测试的简单的 HTTP echo 服务器。from http.server import HT