云服务器用ssh登录
本地生成密钥
这里选择在购买前先在本地生成密钥key(分为private key和public key),所以先生成密钥再进行购买,购买完以后直接ssh登录,不需要输入密码(安全性考虑)
其中,public key存放在欲登录的服务器上,而private key为特定的客户机所持有。
当客户机向服务器发出建立安全连接的请求时,首先发送自己的public key,如果这个public key是被服务器所允许的,服务器就发送一个经过public key加密的随机数据给客户机,这个数据只能通过private key解密,客户机将解密后的信息发还给服务器,服务器验证正确后即确认客户机是可信任的,从而建立起一条安全的信息通道。
通过这种方式,客户机不需要向外发送自己的身份标志“private key”即可达到校验的目的,并且private key是不能通过public key反向推断出来的。这避免了网络窃听可能造成的密码泄露。客户机需要小心的保存自己的private key,以免被其他人窃取。(这就是为什么先在本地生成密钥,而不是在登录你的vps以后生成然后把私钥下载到本地,任何时刻都要保证私钥处在一个安全的地方)
简单的理论知识就补这么多很好理解,接下来就是步骤了
生成密钥命令
ssh-keygen -t rsa
后面还可以带很多参数,感兴趣可以google
执行命令会出现这样,执行后让你输入东西的全部回车,文件保存路径也是默认回车就行啦,不需要输入任何东西!!!(因为我已经生成过了,所以把路径选在了桌面)

这步骤完了以后在 cd 到 .ssh 文件下就能看见生成的公钥和密钥,一会公钥有用。
购买腾讯云

然后在下面的ssh密钥输入框那里点击现在创建,出来一个界面以后再次点击创建密钥,会出现如下的图:注意在创建方式那里不要默认选择创建密钥对(这是腾讯给你创建的,不安全,原因前面已经说过了),选择使用已有公钥选项。 还记得刚开始用ssh-keygen -t rsa生成的公钥吗?在你的用户主目录下cd到那个文件去,把他拷贝下来(注意拷贝的是公钥id_rsa.pub),然后粘贴到‘输入公钥’那个长方形框里去,至于密钥名称随意起。

ssh密钥登录vps:
购买完以后注意查收你的邮箱,会给你发邮件,有用户登录密码,注意腾讯给的默认用户是ubuntu而不是root用户,登录的时候登录名请用ubuntu,不然登不上
方法
1. 使用vnc客户端:直接在网页界面你买到的vps后面点击登录(可以试着玩玩),这不是本文的重点!
2. 使用ssh登录,打开终端输入如下:
~$ ssh ubuntu@xxxxxxxxxx
注意腾讯给的默认用户是ubuntu,@后面加你购买到的vps的公网Ip,vps界面后边有,直接复制

回车以后,直接就登录到你的vps去了(如上图),不用输入密码,这样一是保证安全性,二是方便
成功登录以后说明你的电脑已经可以通过ssh密钥方式直接登录你的电脑了!!
简单的ssh安全配置:
- .ssh文件设置
首先我们来找到公钥的存放位置,默认在/home/ubuntu/.ssh里面,也就是ubuntu用户目录下的.ssh里,cd到这个文件夹后可以ls一下可以看见id_rsa.pub(也就是你购买时复制本地生成的那个公钥)
这里多说一句,正是因为这个文件只有这里有,根目录下没有,所以不能ssh root@xxxxxxx登录。
废话不多说//在ubuntu用户下执行如下命令就好了 cd .ssh
ls //ls你可以看到这个文件
touch authorized_keys //生成认证文件,其实已经有了
cat id_rsa.pub >> authorized_keys
chmod authorized_keys //设置文件权限
chmod -R .ssh //是指文件夹权限sshd_config文件配置
进入到ssh的配置文件sshd_config里,修改一些选项,先找到这个文件(/etc/ssh/sshd_config),如下图,使用超级用户权限打开,其中会要求你输入密码,密码就是腾讯在邮件里给你发的那个密码(不喜欢可以改)
- 需要进行的几个操作:
//使用密钥登录
RSAAuthentication yes
PubkeyAuthentication yes
//禁止空密码和Root密码登录:
PermitEmptyPasswords no
PasswordAuthentication no至于AuthorizedKeysFile这个选项不用管,直接用#注释掉就行啦,这个是认证文件的地址,注释掉表示默认地址,就是在/ubuntu/.ssh这个文件里。
#AuthorizedKeysFile %h/.ssh/authorized_keys
理一理思路
- 当你在远程启动ssh登录vps时,首先vps端口监听到请求,从sshd_config配置文件找到公钥存放位置,也就是.shh这个文件,与你的本地主机发来的公钥对比,如果匹配上,vps再给你的本地主机发送加密数据,本地主机通过私钥进行解密,将解密的数据再发送给vps,若正确就可以远程登录。
云服务器用ssh登录的更多相关文章
- 阿里云服务器教程–SSH 登录时出现如下错误:Host key verification failed
注意:本文相关 Linux 配置及说明已在 CentOS 6.5 64 位操作系统中进行过测试.其它类型及版本操作系统配置可能有所差异,具体情况请参阅相应操作系统官方文档. 问题描述 使用 SSH 登 ...
- Bmob 移动后端云服务器平台实现登录注册
源码下载:http://download.csdn.net/download/jjhahage/10034519 PS:一般情况下,我们在写android程序的时候,想要实现登录注册功能,可以选择自己 ...
- 腾讯云服务器无法ssh登陆问题
SSH 登录时出现如下错误:Permission denied, please try again 解决:腾讯云主机控制台登录,先要设置root密码 修改 /etc/ssh/sshd_config 中 ...
- Linux服务器限制ssh登录,查看登录日志
网络上的服务器很容易受到攻击,最惨的就是被人登录并拿到root权限.有几个简单的防御措施: 1. 修改ssh服务的默认端口 ssh服务的默认端口是22,一般的恶意用户也往往扫描或尝试连接22端口.所以 ...
- 为Linux服务器的SSH登录启用Google两步验证
对于Linux服务器而言使用密钥登录要比使用密码登录安全的多,毕竟当前网上存在多个脚本到处进行爆破. 这类脚本都是通过扫描IP端的开放端口并使用常见的密码进行登录尝试,因此修改端口号也是非常有必要的. ...
- 在ec2上创建root用户,并使用root 通过Xshell远程登录aws云服务器
1.根据官网提供的方法登录连接到EC2服务器(官网推荐windows用户使用PUTTY连接) 2. 创建root的密码,输入如下命令: sudo passwd root 3.然后会提示你输入new p ...
- 使用XShell通过SSH访问Google谷歌云服务器方法
1:先用Xshell创建个密钥 下一步到这里,这个名称要记得,谷歌后台要用的. 把这里的公钥复制出来,当然最好也可以备份下. 2:到谷歌后台去添加ssh,然后就能连接了. 复制刚才生成的公钥,在谷歌云 ...
- 无法登录到Windows云服务器怎么办?
当您的云服务器无法远程登录时,我们首先建议您使用VNC方式登录. 是否可以通过控制台远程登录 远程登录失败时,请首先尝试能否通过管理控制台,使用VNC方式登录弹性云服务器. 登录管理控制台. 选择“计 ...
- 亚马逊云服务器AWS安装CentOS
亚马逊云服务器默认创建的实例,在停止之后再启动的情况下,IP会发生改变.所以我们最好先创建一个弹性IP,即EIP,不过我也不清楚这个费用. 1.按如图操作创建一个弹性IP,弹性IP创建之后可以随便绑定 ...
随机推荐
- Subscription
- transaction 数据库事务 roolback 回滚
事务是恢复和并发控制的基本单位 https://baike.baidu.com/item/数据库事务/9744607 事务有三种模型: 1.隐式事务是指每一条数据操作语句都自动地成为一个事务,事务的开 ...
- Unicode 和 UTF-8 是什么关系?
2015-10-14 10:08 评论: 9 收藏: 4 转载自: http://huoding.com/2015/10/13/472作者: 火丁笔记本文地址:https://linux.cn/ ...
- Python菜鸟之路:Django ModelForm的使用
一.简单使用案例 #views.py #views.py from django.shortcuts import render,HttpResponse from app01 import mode ...
- If 条件控制 & while循环语句
Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了解条件语句的执行过程: if 语句 Python中if语句的一般形式如下所示: i ...
- 我的Android进阶之旅------>解决Android Studio编译后安装apk报错:The APK file does not exist on disk
1.错误描述 今天用Android Studio编译应用后安装APK的时候,报错了,错误如下所示: The APK file build\outputs\apk\OYP_2.3.4_I2Base_64 ...
- AngularJs使用过程中,在ng-repeat中使用track by
1.问题描述: 点击删除后:table中的被选中设备确实被删除了,但是data-table并没有重新加载出来, 查看js代码: 先对$scope.data_table进行了destroy(),然后重新 ...
- 信息安全意识教育日历——By 安全牛
安全牛:企业即使投入再好的信息安全技术和产品,也难以解决内部威胁以及社会工程等攻击手段,无法做到全面有效地保护企业信息资产.而通过开展员工的信息安全意识培训教育工作,不仅能降低企业风险.满足合规要求, ...
- beego——原生SQL查询
使用Raw SQL查询,无需使用ORM表定义. 多数据库,都可直接使用占位符号?,自动转换. 查询时的参数,支持使用Model Struct和Slice,Array ids := []int{1, 2 ...
- Codeforces Round #396 (Div. 2) E. Mahmoud and a xor trip
地址:http://codeforces.com/contest/766/problem/E 题目: E. Mahmoud and a xor trip time limit per test 2 s ...