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