openssl基础

Posted 初如

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了openssl基础相关的知识,希望对你有一定的参考价值。

openssh 服务

OpenSSH是SSH (Secure SHell) 协议的免费开源实现,一般在各种Linux版本中会默认安装,基于
C/S结构
[root@centos880 CA]# rpm -qa openssh*
openssh-clients-7.8p1-4.el8.x86_64
openssh-7.8p1-4.el8.x86_64
openssh-server-7.8p1-4.el8.x86_64

客户端 ssh命令

  • ssh命令是ssh客户端,允许实现对远程系统经验证地加密安全访问
  当用户远程连接ssh服务器时,会复制ssh服务器/etc/ssh/ssh_host*key.pub文件中的公钥到客户机的
~/.ssh/know_hosts中。下次连接时,会自动匹配相对应的私钥,不能匹配,将拒绝连接
ssh客户端配置文件: /etc/ssh/ssh_config

-p port #远程服务器监听的端口
-b #指定连接的源IP
-v #调试模式
-C #压缩方式
-X #支持x11转发
-t #强制伪tty分配,如:ssh -t remoteserver1 ssh -t remoteserver2   ssh  
remoteserver3
-o option   如:-o StrictHostKeyChecking=no
-i <file>  #指定私钥文件路径,实现基于key验证,默认使用文件: ~/.ssh/id_dsa,
~/.ssh/id_ecdsa, ~/.ssh/id_ed25519,~/.ssh/id_rsa

实现基于秘钥的登录方式

[root@centos8-hzs ~]# ssh-keygen 生成自己的秘钥和公钥在家目录下.ssh

[root@centos8-hzs ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub root@10.0.0.70
将自己的公钥拷贝给其他服务器上 指定用户和ip 进行拷贝完成后 下次即可免密登录
第一次拷贝公钥去指定服务器时必须知道对方70的密码才能拷贝过去
免密登录是针对用户完成的 拷贝与目标用户的家目录的.ssh文件夹下。
如果服务器将sshd的默认端口修改为2222 即在上面命令加-p 2222指定端口即可

生成指定位数的私有密钥
ssh-keygen -t rsa -b 1024 -P '' -f /testdir/test/id_rsa -P为指定生成密钥时密码为空
根据密钥在生成公钥
ssh-keygen -f /testdir/test/id_rsa -y > id_rsa.pub

ssh代理–ssh-agent $SHELL

1.主要用于对生成的密钥设置了密码,频繁需要登录服务器 可以起到减少密码登录
2.使用不同的密钥连接到不同的主机时,需要手动指定对应的密钥,ssh代理可以
帮助我们选择对应的密钥进行认证,不用手动指定密钥即可进行连接。

[root@centos8-hzs ~]# ssh-copy-id -i /root/.ssh/id_rsa_test1.pub root@10.0.0.70生成非默认的密钥 拷贝给70
尝试登录时需要我们输入密码
或需要指定私钥才能免密登录70
ssh -i /root/.ssh/id_rsa_test1 root@10.0.0.70

我们可以将自己的密钥加入到ssh代理中即可免去指定密钥
[root@centos8-hzs ~]# ssh-agent bash 
[root@centos8-hzs ~]# ssh-add ~/.ssh/id_rsa_test1
Identity added: /root/.ssh/id_rsa_test1 (root@centos8-hzs)
[root@centos8-hzs ~]# ssh 10.0.0.70

重新生成密钥为私钥指定密码123456 并将公钥拷贝到70上后
[root@centos8-hzs ~]# ssh 10.0.0.70 尝试登录70发现需要输入私钥的密码
Enter passphrase for key '/root/.ssh/id_rsa':
开启代理
[root@centos8-hzs ~]# ssh-agent bash
[root@centos8-hzs ~]# ssh-add ~/.ssh/id_rsa 将密钥添加到代理中
Enter passphrase for /root/.ssh/id_rsa:  输入私钥的密码
Identity added: /root/.ssh/id_rsa (root@centos8-hzs)
[root@centos8-hzs ~]# ssh 10.0.0.70  再次尝试登录时无须输入私钥密码
Last login: Wed Apr 28 20:48:31 2021 from 10.0.0.80

以上是关于openssl基础的主要内容,如果未能解决你的问题,请参考以下文章

OPENSSL基础使用

Security基础:OpenSSL及证书服务邮件TLS/SSL加密通信

加密和解密技术基础与OpenSSL

openssl基础

1.3CA和证书以及openssl工具基础

openssl基础概念