关于SSH的疑问

比方说我要从仓库拉代码下来,我使用SSH的方式

git clone git@gitee.com:1349574/W.git

然后会出现

The authenticity of host 'gitee.com (116.211.167.14)' can't be established.
ECDSA key fingerprint is SHA256:FQGC9Kn/eye1W8icdBgrQp+KkGYoFgbVr17bmjey0Wc.
Are you sure you want to continue connecting (yes/no)?

这个SHA256应该是这个网站的公钥,后面是为了我输入账号密码加密用的,我想问的是如何保证这个公钥就是我访问网站的公钥,不是中间人伪造的公钥,是不是网站应该把他们的公钥挂出来,供用户验证?

我看到一个博客是这样说的:
图片描述

但是实际情况是我怎么找不到他们的公钥?请问这样做安全吗?为什么?

阅读 6.2k
2 个回答

你需要自己通过下面的命令生成一套密钥,包括公钥和私钥

ssh-keygen -t rsa -C "your email"

然后把公钥复制到git 仓库的SSH KEY 的设置当中。

使用SSH其实是加密通信,省去了每次输入账号密码的麻烦。每次通信时会拿线上的公钥和本地的私钥做校验

那你 设置-SSH公钥 里面是什么

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题