程序员家园:都能玩转服务器
发布时间:2019-05-13 11:12:00 来源: 互盟云
大家不仅需要学习自身的开发语言,还要学习git/svn....等一些公共的使用技能如果你是做前端或者app端肯定会好奇运维是如何管理git以及svn的?后端的数据如何存储?以及该怎么使用服务器缓存?再比如主从复制,负均衡?以及反向代理...等等!如果你想成为项目经理,甚至CTO?运维知识肯定是你必须要掌握的技能!
如果大家感兴趣的话,以上的新知识都会在以后的文章中慢慢的展开,
今天将跟大家交流如何购买服务器,以及客户端如何登陆服务器,以及如何实现服务器的免密码登录。
先进入阿里云页面选择自己需要的服务器
购买后就会生成一个实例,而我们购买一个服务器器也就是一个实例
正常没有做任何配置的情况下数据库的登录方式如下图所示
ssh账户@公网ip地址例如sshroot@192.167.122.22
然后输入密码即可实现登录。
但是这样会带来什么问题呢?假如有个多个客户端希望登录同一个服务器,那么我们是不是要告诉每个客户端服务器的密码是什么?一旦密码泄露,是不是很难保证服务器的安全呢?
那么现在就来做一个简单的免密码登录。
一.处理服务器相关的部署
1.制作密钥对
首先在服务器上制作密钥对。首先用密码登录到你打算使用密钥登录的账户,然后执行以下命令:
[root@host~]$ssh-keygen
然后不停的按enter,一直到生成结束,具体情况如下
<==建立密钥对Generatingpublic/privatersakeypair.Enterfileinwhichtosavethekey(/root/.ssh/id_rsa):<==按EnterCreateddirectory'/root/.ssh'.Enterpassphrase(emptyfornopassphrase):<==输入密钥锁码,或直接按Enter留空Entersamepassphraseagain:<==再输入一遍密钥锁码Youridentificationhasbeensavedin/root/.ssh/id_rsa.<==私钥Yourpublickeyhasbeensavedin/root/.ssh/id_rsa.pub.<==公钥Thekeyfingerprintis:0f:d3:e7:1a:1c:bd:5c:03:f1:19:f1:22:df:9b:cc:08root@host
密钥锁码在使用私钥时必须输入,这样就可以保护私钥不被盗用。当然,也可以留空,实现无密码登录。
现在,在root用户的家目录中生成了一个.ssh的隐藏目录,内含两个密钥文件。id_rsa为私钥,id_rsa.pub为公钥。
2.在服务器上安装公钥
键入以下命令,在服务器上安装公钥:
[root@host~]$cd.ssh
[root@host.ssh]$catid_rsa.pub>>authorized_keys
如此便完成了公钥的安装。为了确保连接成功,请保证以下文件权限正确:
[root@host.ssh]$chmod600authorized_keys
[root@host.ssh]$chmod700~/.ssh
3.设置SSH,打开密钥登录功能
编辑/etc/ssh/sshd_config文件,进行如下设置:
RSAAuthenticationyes
PubkeyAuthenticationyes
另外,请留意root用户能否通过SSH登录:
PermitRootLoginyes
最后,重启SSH服务:
[root@host.ssh]$servicesshdrestart
二.处理客户端的操作
同上操作一遍,需要注意的是客户端生成的公钥密钥地址跟服务器生成的地址不同,具体如下图所示
三.最后是最紧要的一步
查看客户端id_rsa.pub(公钥的内容)并且复制其内容到服务器.ssh文件中的
authorized_keys这个文件中.具体内容如下所示
经过以上操作,已经实现了免密码登录,以下是实现案例,是不是很简单呢?
总结,以上仅仅是一个最基础的实现方法,其他方法后期会慢慢讲解.大家可以尝试自己操作一服务器.
本文来源:
https://www.humengyun.com/news-view-763.html