centos生成公钥私钥 securecrt通过公钥访问服务器 winscp通过公钥访问服务器

忙碌了一下午,一直到写博客现在。都在纠结阿里云服务器上配置公钥私钥,网上的说辞总是参差不齐,需要各个去综合,合理取舍。今天终于配置好了。

我就不说这种方式的重要性了,往往黑客都不需要你的登陆账户密码就能上你的服务器,多么可怕。比如【redis后门】自己百度哈。

直入主题:

[[email protected] .ssh]$ ssh-keygen -C"liyongdada" -t rsa
    Generating public/private rsa key pair.
    Enter file in which to save the key(/root/.ssh/id_rsa):【回车】
    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:
    d2:5f:a7:c4:fa:66:1d:b8:64:49:31:03:e5:d8:3b:6eliyongdada
    The key‘s randomart image is:
    +--[ RSA 2048]----+
    |         .o.    |
    |          ++    |
    |         . o+   |
    |      .   …   |
    |     . S  .*o.  |
    |      . . ==+.  |
    |         ooEo . |
    |          o+ .  |
    |          o.    |
    +-----------------+
    [[email protected] .ssh]$ ls
    id_rsa id_rsa.pub
    执行完这个命令后,在/root/.ssh/目录有两个文件,黄色是私钥,绿色是公钥。还需要做一件事!

执行    cat id_rsa.pub >> authorized_keys   公钥内容输出到相应文件中

执行    rm -f id_rsa.pub  删除原来的公钥文件

执行   chmod 400 authorized_keys   将新建立的公钥文件属性设置为400

接下来配置conf文件:

执行  : vim /etc/ssh/sshd_config

主要修改如下几个内容:
PermitRootLogin no # 默认为注释,先配置为禁止root用户登陆,允许root登陆太危险了。好几次差点犯错误。切记切记!
RSAAuthentication yes #默认为注释, 启用 RSA 认证
AuthorizedKeysFile .ssh/authorized_keys # 验证公钥的存放路径
PubkeyAuthentication yes # 默认为注释,启用公钥认证
PasswordAuthentication no # 禁止密码认证,默认是打开的。
保持后,重新启动ssh服务.
service sshd restart      

以上注意#号要去掉

【注意事项】如果是非root用户

要把第一部分上传上来的公钥放到用户home目录的.ssh/ 目录下。这里说明一下。如果你想使用test账号登陆,就要把公钥放到test账户的.ssh目录下。
再执行cat Identity.pub >> authorized_keys操作

接着,通过securecrt访问服务器

1、去掉password,点击配置属性

然后选择私钥,点ok

至此,连接成功!

接下来是winSCP

选择私钥,然后输入保存的名称!任意输入

接着,借助一个工具【putty生成器,别下载错了】

点击import key导入刚刚自己命名的文件

点击save private key即可生成ppk文件,接着,利用winscp访问吧

时间: 2024-10-05 04:27:44

centos生成公钥私钥 securecrt通过公钥访问服务器 winscp通过公钥访问服务器的相关文章

浅谈公钥私钥(理论)

我一直觉得用专业性术语解释专业性知识是一件很严谨但是很难理解的事情,所以写此来理解公钥私钥 基础理解: 1. 公钥和私钥必定是成对出现的,即每个公钥有且只有一个私钥,而每一个私钥也有且只有一个公钥 2. 公钥和私钥并不像平常的钥匙一样,只有解密的功能,它们都同时具有加密和解密的功能,只不过,公钥加密的东西,有且只有相对应的私钥可以解开,而私钥加密的东西,有且只有相对应的公钥可以解开 3. 一般来说,一对相对应的公钥私钥,公钥会被很多人得到,而私钥一般是只有个人(公司.团体)保存着 容我举个栗子:

ssh配置公钥私钥(key)登录SecureCRT

在用windows时管理linux服务器时,常会用到SecureCRT.Xshell以及开源的putty.在我工作环境大多都是采用密码认证的方式进行登录.今天对学习了些SecureCRT的密钥登录方式.对比密码认证方式,使用密钥认证登录会有以下几个优点: 1.公钥认证允许使用空密码,省去每次登录都需要输入密码的麻烦2.多用户管理服务器时,可以通过多个公钥登录同一用户下,可以避免因为密码认证被用户都需要密码,导致的密码容易泄密的危险.并且使用passwd修改密码,也不会影响到其他用户的登录.3.做

windows 下 openssl 生成RSA私钥公钥以及PKCS8

生成RSA私钥 打开bin文件夹下面的openssl.exe,输入genrsa -out rsa_private_key.pem 1024 把RSA私钥转换成PKCS8格式 输入命令pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt 生成公钥 输入命令rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem 说明: rsa_private_key

MAC生成公钥私钥

前言 需要开发者在本地上使用openssl来生成私钥和公钥 由于mac 自带openssl工具,所以不用像windows那样要下载安装openssl工具 步骤 1.创建一个文件夹,终端进入该文件夹 cd /Users/tanqihong/Desktop/rsa 2.终端输入openssl打开工具 3.生成RSA私钥 genrsa -out rsa_private_key.pem 1024 该命令会生成1024位的私钥,生成成功的界面如下: 此时我们就可以在当前路径下看到rsa_private_k

HP通过OpenSSL生成证书、密钥并且加密解密数据,以及公钥,私钥和数字签名的理解

一.公钥加密 假设一下,我找了两个数字,一个是1,一个是2.我喜欢2这个数字,就保留起来,不告诉你们(私钥),然后我告诉大家,1是我的公钥. 我有一个文件,不能让别人看,我就用1加密了.别人找到了这个文件,但是他不知道2就是解密的私钥啊,所以他解不开,只有我可以用数字2,就是我的私钥,来解密.这样我就可以保护数据了. 我的好朋友x用我的公钥1加密了字符a,加密后成了b,放在网上.别人偷到了这个文件,但是别人解不开,因为别人不知道2就是我的私钥,只有我才能解密,解密后就得到a.这样,我们就可以传送

Windows下生成 公钥 私钥以及 配置 Filezilla中的 SFTP的私钥

Win下需要使用到 PuTTYgen.exe来生成公钥私钥,可以参考youtube的这篇文章:  为 SFTP 保管箱生成 Secure Shell (SSH) 密钥对 PuTTYgen.exe的下载地址: https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html 两篇关于FileZilla的SFTP用Private Key登录的方法的文章: FileZilla SFTP (SSH)服務器教學 FileZilla的SFTP用pr

OpenSSL生成公钥私钥

证书标准 X.509 - 这是一种证书标准,主要定义了证书中应该包含哪些内容.其详情可以参考RFC5280,SSL使用的就是这种证书标准. 编码格式 同样的X.509证书,可能有不同的编码格式,目前有以下两种编码格式. PEM - Privacy Enhanced Mail,打开看文本格式,以"-----BEGIN..."开头, "-----END..."结尾,内容是BASE64编码.查看PEM格式证书的信息:openssl x509 -in certificate

SSH公钥私钥安全通讯原理

客户端在访问服务器的时候,防止通讯信息被截取,进行加密处理通讯. 在服务器上会有两把钥匙,公钥和私钥.公钥可以对所有公开,私钥只有服务器自己知道, 并且公钥产生的密文只能通过私钥才能解开 1:客户端发起请求,连接到服务器监听端口,服务器接收到请求用户,服务器把公钥发送回给客户端 2:客户端拿到公钥后,用公钥对通讯密文(即客户端自己产生的通讯钥匙,非公钥也非私钥)进行加密,再发送回给服务器端 3:服务器拿到加密后的通讯密文后,用私钥进行解密公钥生成的通讯密文,此时服务器和客户端就 共同拥有此通讯密

.net core中使用openssl的公钥私钥进行加解密

这篇博文分享的是 C#中使用OpenSSL的公钥加密/私钥解密 一文中的解决方法在 .net core 中的改进.之前的博文针对的是 .NET Framework ,加解密用的是 RSACryptoServiceProvider .虽然在 corefx(.NET Core Framework) 中也有 RSACryptoServiceProvider ,但它目前只支持 Windows ,不能跨平台. 之前的 new RSACryptoServiceProvider(); 代码在 mac 上运行,