为了账号安全,请及时绑定邮箱和手机立即绑定

ssh连接服务器

2019.12.01 18:29 621浏览

1.概述

ssh是一种网络通信协议,用于计算机之间的加密登录.一般用ssh连接服务器有两种方式:密码认证与密钥认证.
密码认证就是通过传统的输入密码的方式登录,密钥认证就是把产生的公钥注册到服务器后,用私钥登录,这样就可以不用每次登录输入密码.特别适合作者这种脑残记不住密码的懒人.

2.密码认证

密码认证登录直接在终端使用ssh命令即可:

ssh username@xxx.xxx.xxx.xxx

username为用户名,后面为ip.

3.密钥认证

(1)产生公钥与私钥

这一步使用ssh-keygen命令生成id_rsa与id_rsa.pub文件:

ssh-keygen -t rsa -b 4096 -C "eamil"

其中email为你的邮箱.
然后一直enter就好了(当然你也可以修改参数,比如生成的公钥与私钥的文件名等,后面要对应).

(2)复制公钥到服务器

cd ~/.ssh
ssh-copy-id -i id_rsa.pub username@xxx.xxx.xxx.xxx

注意复制的是公钥(.pub结尾,不是私钥id_rsa).

(3)修改本地私钥权限

图片描述

若出现以上情况,根据提示说是私钥的权限问题,修改为:

chmod 600 id_rsa

在windows上使用wsl的要注意,wsl不能直接修改文件权限,需要修改一下/etc/wsl.conf文件(没有的话就新建).

vim /etc/wsl.conf

输入

[automount]
enabled = true
options = "metadata,umask=22,fmask=11"
mountFsTab = false

退出wsl重启.

(4)连接

ssh -i ~/.ssh/id_rsa username@xxx.xxx.xxx.xxx

如果上面配置没出现的话就可以连接上了.

(5)如果还是需要密码

先用密码认证的方式登录服务器,修改/etc/ssh/sshd_config(注意有一个d,/etc/ssh下有一个叫ssh_config的文件,不要ssh然后按tab…)

vim /etc/ssh/sshd_config

找到PasswordAuthentication这一行.
图片描述
修改为no.
然后重启服务:

service ssh restart

或者

/etc/init.d/ssh restart

重启服务后连接:

ssh -i ~/.ssh/id_rsa username@xxx.xxx.xxx.xxx
点击查看更多内容
0人点赞

若觉得本文不错,就分享一下吧!

评论

相关文章推荐

正在加载中
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消