前言
通常我们使用ssh协议远程连接linux服务器时,会使用用户名(通常是root)和密码登陆,往往需要借助putty等其他工具。
而win10系统上,命令行工具(cmd或者powershell)支持使用ssh命令,基于此,本教程介绍如何使用一条命令直接登陆服务器,且无需输入密码。
我们先在本地操作,再在服务器端操作,服务器端操作分为普通方法和宝塔面板方法;原理都是本地创建密钥,然后写入服务器,密钥一致则无需输入密码通过验证。
本地操作
首先,本地电脑打开cmd或者powershell,cmd打开方式为:按win+R、输入cmd、点确定
输入命令 ssh-keygen
,然后一路回车就行
此时会在系统盘C:/用户(Users)/(你的用户名)/.ssh目录下生成id_rsa.pub文件(如果没有看到.ssh文件夹记得打开显示隐藏文件夹)
然后右击选择用记事本打开,并且复制里面的内容
服务器端操作
普通方法
ssh工具或者cmd登陆服务器
输入以下命令
cd /root/.ssh
touch authorized_keys
vim authorized_keys
按键盘的字母i
粘贴id_rsa.pub文件里的内容
按esc,输入:wq(包括冒号),回车
然后就会回到输入命令的界面
完成,关闭ssh。在本地电脑桌面上建立一个文本文档(txt),编辑内容为ssh root@你的服务器ip
,保存后改后缀为bat。双击它,如果能够正常连接,而且不需要输入密码,则表示成功。
宝塔面板操作
登陆宝塔面板,点击文件,进入/root/.ssh目录下,编辑authorized_keys文件(如果没有则创建),粘贴id_rsa.pub文件里的内容,保存。在本地电脑桌面上建立一个文本文档(txt),编辑内容为ssh root@你的服务器ip
,保存后改后缀为bat。双击它,如果能够正常连接,而且不需要输入密码,则表示成功。
很棒