服务器A: 192.168.1.1
服务器B: 192.168.1.2
------------------------
服务器A:
配置:
ssh-keygen -b 2048 -t rsa
#这里的-b 2048 是密钥加密的长度,最好设大点,有消息称美国有黑客解决 ssh的密钥进行破解。
#http://bbs.yuloo.com/thread-860154-1-1.html
直接回车3次
key文件会保存在/root/.ssh目录下
这时候.ssh目下会多出几个文件
id_rsa 私钥文件
id_rsa.pub 公钥文件,这个文件里的内容要放到其它主机里面去。
查看 id_rsa.pub 文件
cat /roor/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAIcAvh6Lz9ghftghtfghSv+kSrxVLC9UDKq27mg5vhfghAaWcgFgllZhfg2DLnGotmeL/08bp6jMW/ekSq1BY1eiouiluiliuliul2Rr84x0bB5YShhpgJwuPbwr/pymgukyukyukyuthjkiytiliunzdfkuykyuIZgVvgPTzNdN/RDwJMsafsdvgsdsfsdfdsfsdaflozStYcWjrwzYxsroDPBy4zjd0gH5zMYhj+vS4OOAZZ8rtHEfx+sTE0= root@localhost.localdomain
服务器B:
配置:
新建文件夹与文件
mkdir /root/.ssh
vim /root/.ssh/authorized_keys
把A服务器上查看的KEY文件内容,复制到B服务器的authorized_keys中
主要是将root@localhost.localdomain修改为root@192.168.1.1 这样方便查看是哪台服务器的KEY,可能会有多台服务器的key。
修改sshd 的主配置文件,关闭密码认证登陆,使用key登陆。
vim /etc/ssh/sshd_config
找到 PasswordAuthentication yes
改成 PasswordAuthentication no
service sshd restart
测试:
在A服务器上执行
ssh root@192.168.1.2
首次登陆会需要你输入YES。看是不是不需要密码就可以登陆B服务了。
publickey方式:
publickey方式使用publickey privatekey的方式验证,你需要生成一对publickey privatekey.
把publickey放到服务器上.你登陆的时候,服务器会用你的publickey去验证用你的用privatekey加密过的信息.
由于服务器上的只是publickey,即使被黑了,也不怕密码丢失.比上面那种password方式更加安全.
操作步骤:
1.建立公钥与私钥
# ssh-keygen -t dsa
Generating public/private dsa key pair.
Enter file in which to save the key (/root/.ssh/id_dsa): ← 钥匙的文件名,这里保持默认直接回车
Enter passphrase (empty for no passphrase): ← 输入口令,如想无口令认证直接回车
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_dsa.
Your public key has been saved in /root/.ssh/id_dsa.pub.
The key fingerprint is:
1e:16:9e:d5:d2:6a:b6:e2:a0:de:14:b2:eb:d1:5e:03
#cd ~/.ssh ← 进入用户SSH配置文件的目录
# ls -l ← 列出文件
total 8
-rw------- 1 root root 668 Feb 26 14:01 id_dsa ← 确认私钥已被建立
-rw-r--r-- 1 root root 616 Feb 26 14:01 id_dsa.pub ← 确认公钥已被建立
# cat id_dsa.pub >>authorized_keys2 ← 公钥内容输出到相应文件中
# chmod 400 authorized_keys2 ← 将新建立的公钥文件属性设置为400
2.分别把id_dsa id_dsa.pub 拷贝到Client端
3.删除Server端的公钥
rm -f ~/.ssh/id_rsa.pub ← 删除原来的公钥文件
分享到:
相关推荐
"Linux 生成 SSL 证书供 nginx 使用" Linux 生成 SSL 证书供 nginx 使用是指通过 OpenSSL 命令生成 SSL 证书的过程,这个过程包括生成私钥、证书请求文件、证书文件和配置 nginx 使用证书。 首先,生成私钥文件...
Linux SSH Key 生成和使用 Linux SSH key 是一种常用的身份验证方式,通过生成公钥和私钥来实现无密码登录远程 Linux 主机。本文将详细介绍如何在 Linux 和 Windows 平台上生成和使用 SSH key。 一、Linux 平台上...
与自签名证书生成类似,使用`openssl req`创建公钥证书: ``` openssl req -new -x509 -key test_cert.key -out x509_public.cer -days 365 -subj "/CN=***.website/CN=***.website" ``` 在实际应用中,这些...
综上所述,在Linux系统中使用`openssl`命令生成证书的过程主要分为四个步骤:生成私钥、生成证书请求文件、生成证书以及生成PFX文件。每一步都至关重要,尤其是私钥的生成和保护,以及证书请求文件中填写的信息。...
在Linux环境下,使用C++语言进行编程时,随机生成指定长度的密钥(key)是一项常见且实用的功能,尤其在密码学、加密算法以及安全通信领域应用广泛。根据提供的代码片段,我们可以深入探讨如何在Linux系统中利用C++...
在Linux环境中,证书的生成与使用是网络安全的重要组成部分,特别是在HTTPS通信、服务器身份验证和数据加密等方面。本文将深入探讨如何在Linux系统中利用OpenSSL工具生成和管理SSL/TLS证书,以及相关的加密概念。 ...
### Linux下用OpenSSL生成...通过以上步骤,您可以在Linux环境下成功使用OpenSSL生成完整的X.509证书链,包括根证书、服务器证书和客户端证书。这些证书可用于搭建安全的网络通信环境,确保数据传输的安全性和机密性。
总的来说,生成SSH key并分发到其他机器的脚本能够极大地简化系统管理员的工作,提高效率,同时增强安全性,避免每次连接都需要手动输入密码。通过这种方式,你可以轻松地管理和维护大量的远程服务器集群。
在这个“基于Qt的密钥生成工具、密钥使用示例”项目中,我们将探讨如何利用Qt库来实现安全的密钥管理和使用。 首先,Qt并不直接提供密钥生成和加密的功能,但我们可以借助Qt的网络和加密模块(如QSslSocket和...
在C/S模型中,Server需要认证Client的证书,而每一个Client持有独一无二的证书(比如一个设备的MAC地址),此时... 对了,忘了告诉大家了,你当前的目录里面一定要有个cert.cnf配置文件,自己手动生成的CA证书和CA key.
Linux 下使用 OpenSSL 制作 CA 及证书颁发 Linux 下使用 OpenSSL 制作 CA 及证书颁发是一个重要的知识点,在软件开发领域中尤其重要。本文将指导读者如何使用 OpenSSL 在 Linux 平台上创建一个简单的证书颁发机构...
2. `sign_cert.sh`: 可能用于使用自签发CA(如`openssl x509 -req -days <valid_days> -in cert.csr -signkey privkey.key -out cert.crt`)为证书签名。 3. `install_cert.sh`: 安装生成的证书到系统信任存储,以便...
本文将详细介绍如何在Linux环境下使用OpenSSL库生成RSA非对称加密算法的16进制密钥。 RSA是一种公钥密码学算法,由Ron Rivest、Adi Shamir和Leonard Adleman于1977年提出。它的核心思想是基于两个大素数的乘积进行...
1. **生成密钥对命令**:在Linux系统中,制作RSA密钥对的命令为`ssh-keygen`。该命令的参数`-t rsa`表示生成RSA类型的密钥,`-b 2048`表示密钥的长度是2048位。 2. **指定密钥存储路径**:如果不指定,密钥默认存放...
使用`ir-keytable`工具配置遥控器的键码,`irrecord`用于录制和分析遥控器的信号,`irsend`则可以发送预定义的信号进行测试。 8. **优化与性能**: 考虑到功耗和传输效率,驱动开发者可能会优化中断处理机制,...
本主题将详细讲解如何在Linux平台上使用OpenSSL工具生成CA(Certificate Authority)证书,以及涉及的相关文件类型和配置。 首先,让我们了解什么是CA证书。CA证书是由受信任的证书颁发机构(如上述的CA)签发的,...
1. 首先,你需要使用OpenSSL生成一个私钥(private key)和证书签名请求(CSR)。私钥将被用于解密通过SSL连接发送的数据,而CSR包含你的组织信息,用于申请证书。 - `openssl req -new -newkey rsa:2048 -nodes -...
**Linux下SSH与SecureCRT密匙完美使用** SSH(Secure SHell)是一种网络协议,用于在不安全的网络上安全地远程控制和管理操作系统。在Linux环境中,SSH通常用于连接到远程服务器,执行命令,传输文件等。OpenSSH是...