教你如何用cmd快速登录服务器
目录
- ssh登录
- ssh key登录
- 本地生成秘钥
- 公钥上传到服务器
- sshd_config配置
- 重启sshd
- 尝试连接
- 文末总结
请注意:本文适用服务器为Linux系统,CentOS/Ubuntu版本均可,其他版本未尝试,可能略有不同
服务器几乎是每个程序员都必须要接触的
通常我们远程连接服务器,一般都采用第三方提供的远程登录软件或插件
比如window系统自带的mstsc
如果服务器为window系统,则可以使用这个工具,还是非常方便,直接打开远程桌面,跟操作本地电脑一样方便快捷
如果服务器系统为Linux,则可以使用常用的软件:Putty
、MobaXterm
等
本文将通过无需安装任何工具,只要是自带cmd
终端(PowerShell也可以),均可便捷连接linux服务器
ssh登录
ssh是一种安全且便捷的登录方式,在cmd中一条命令即可连接服务器
ssh wofeng@111.222.333.444 //或者域名也可以 ssh wofeng@x.juejin.com
解释:
@符号左边,为你要登录的服务器账号,如root
@符号右边为服务器的公网ip或者域名(但是这个域名必须要到这台服务器中做解析操作,即服务器绑定域名),另外域名的开头x可以替换成任意字母\
另外:如果你的服务器解析了多个域名,那@右侧可以写任何一个域名都可以....
但是一般企业服务器设置会更严密一些,比如白名单中的ip段才能远程登录,或者只开放固定端口
前一个没办法,只能在白名单的网络中连接使用
后一个,在连接时加上端口号即可
ssh -p 端口号 账号@ip //或 @域名
注意:按回车键执行后,问你是否继续连接,输入yes,按回车即可
然后就是要你输入你要登录账号的密码:这里无论你输入什么都不会显示出来,目的就是为了密码的隐私性
密码输入完成后,按回车即可
然后出现类似如下图示,即为登录成功,然后就能愉快的玩耍了
到这里,本文并没有结束
我的宗旨是:快捷登录服务器
上面每次ssh登录都需要输入一遍账号的密码,而且盲输,很容易出错,可能尝试多次都登不上去
那么有没有什么方式可以不用登录密码就能连接成功呢
肯定是有的,设置一次,可以让你在这一台电脑上,以后再也不用输入密码就能登录服务器了
ssh key登录
简述一下大致流程:
本地电脑创建一对秘钥,公钥放在linux服务器上,私钥放在本地。
当需要连接到SSH服务器上时,cmd向服务器发出请求,请求用cmd端的秘钥进行安全验证。
服务器收到请求后,先到该用户根目录下寻找共有秘钥,然后把它和发送过来的公钥比较
若一致,服务器就会用公钥加密‘质询’并把它发送给客户端cmd。
客户端收到质询后,就可以用本地的私钥解密再把它发送给服务器。
再通俗一点:
本地生成两个密码,一公一母,公的放服务器(提前放到指定位置),母的放本地
ssh命令执行后,终端会自动到对用的位置配对公母密码,成功的话,直接连接服务器成功,否则失败
好了,现在开始操作
本地生成秘钥
ssh -keygen -t rsa
执行完毕后,秘钥一般会生产到 c:/users/用户名/.ssh 目录下
id_rsa是私钥(母的),id_rsa.pub是公钥
公钥上传到服务器
其实公钥文件可以不用上传到服务器
只需要把内容复制,然后拼接到服务器的anthorized_keys文件内容末尾即可
如果文件要上传,直接使用scp命令即可
scp id_rsa.pub root@a.juejin.com:/root/.ssh
具体文件内容拼接,就不赘述了,只要不把公钥插入到原内容的中间,插入开头或结尾均可
注意:另外这个authorized_keys文件位置,可能不同服务器有些不同,可自行通过whereis authorized_keys
或其他类似命令查找一下
sshd_config配置
此配置文件中需要开放远程登录权限 ,关闭密码验证等
一般配置文件目录为: /etc/ssh/sshd_config
如果找不到,也可以用上面的方法whereis 文件
查找一下
找到如下配置,修改成如下即可
RSAAuthentication yes PubkeyAuthentication yes PasswordAuthentication no
重启sshd
一条命令足以
/etc/init.d/sshd restart //或者 service sshd restart
不报错,即为重启成功
尝试连接
像文章开头一样,打开cmd,输入ssh root@111.222.33.444
,回车即可连接成功
不用输入密码是不是很方便
这个设置过程如果熟练,两三分钟就能设置好,一劳永逸
多台电脑,在anthorized_keys中放多个公钥即可,配置完,勿忘重启sshd
文末总结
很多习以为常的操作,其实刚开始都是陌生的
多尝试陌生的东西,找到方法
学习的效率会成倍提高
到此这篇关于教你如何用cmd快速登录服务器的文章就介绍到这了,更多相关cmd登录服务器内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!