所选的用户密钥未在远程主机上注册,请再试一次
SSH的密码登录就是通过远程登录服务器,通过设置网络IP和端口(默认为22)进行登录,这种登录方法需要登录用户名和登录密码。登录名就是在linux终端登录的用户名,不是root用户,切记!是你登录linux让你输入密码的那个用户,例如XUser就是用户有些人可能说我切到root用户不久行了吗? 不行SSH的密钥登录密钥就不用输入密码了。这个项目上很重要,既保证了安全性,开发有很方便。他的原理就是需
SSH的密码登录
就是通过远程登录服务器,通过设置网络IP和端口(默认为22)进行登录,这种登录方法需要登录用户名和登录密码。
登录名就是在linux终端登录的用户名,不是root用户,切记!
是你登录linux让你输入密码的那个用户,例如XUser就是用户
有些人可能说我切到root用户不久行了吗? 不行
SSH的密钥登录
密钥就不用输入密码了。这个项目上很重要,既保证了安全性,开发有很方便。
他的原理就是需要生成RSA的非对称密钥,本地计算机保存私钥,远程计算机linux端放置公钥,切记!!!
步骤:
1. 在客户端操作的
1.1 用Xshell生成密钥
这个大家都会了,我不需要废话。继续往下:Xshell生成了密钥以后,会继续操作到以下步骤:
点击浏览->用户密钥->属性->公钥,出现以下界面:
这公钥里面ssh-rsa ********************这些就是要复制到远程服务器inux端的公钥信息。
1.2 用Git bash命令行生成秘钥:
1、打开git bash
2、执行生成公钥和私钥的命令:ssh-keygen -t rsa 并按回车3下(为什么按三下,是因为有提示你是否需要设置密码,如果设置了每次使用Git都会用到密码,一般都是直接不写为空,直接回车就好了)。会在一个文件夹里面生成一个私钥 id_rsa和一个公钥id_rsa.pub。(可执行start ~ 命令,生成的公私钥在 .ssh的文件夹里面)
3、执行查看公钥的命令:cat ~/.ssh/id_rsa.pub
代码命令:$ ssh-keygen -t rsa -C 生成秘钥
$ ssh-keygen -t rsa -C ‘邮箱地址@qq.com’
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/Administrator/.ssh/id_rsa):
代码命令:$ cat ~/.ssh/id_rsa.pub查看秘钥
$ cat ~/.ssh/id_rsa.pub
============以上是在客户端操作的,即Xshell windows端 =========
在linux端操作:
打开服务器linux端,添加刚才复制的公钥信息 到~/.ssh/authorized_keys里面,没有的新建就好了,这个会linux的都能完成。
修改文件权限
这是最为重要也是最容易忽略的,因为SSH是安全性很高的应用,因此对文件的权限依赖很高。所以修改权限:
/home/username/这两个目录的权限不能超过755,这里设为755
示例:sudo chmod 755 /home/<username>
.ssh/权限为700 别的组用户没有任何权限,只限当前用户
authorized_keys 权限设为600 也是限制为当前用户
再次从客户端连接,即可完成SSH的Xshell远程服务器登录。
更多推荐
所有评论(0)