OpenStack官方镜像无法ssh登陆
0x00 序
当前主流的Linux系统都有提供可以在OpenStack中直接使用cloud镜像,但当使用从官方网站下载的镜像创建云主机时,你会发现Linux下经常使用的ssh竟然无法登陆新创建好的云主机。
为什么会出现这种情况呢?
因为官方提供的镜像,默认的是“root+密钥对”的方式登陆,而不是使用“root+密码”的方式登陆。
那么要想使用“root+密码”的方式登陆应该怎么做?
要启用“root+密码”的方式登陆,有两种方式:一种是在主机创建时指定,详情请看这里;另一种是使用“guestfish”工具修改镜像文件。本文主要介绍的就是通过“guestfish”的方式启用“root+密码”的方式。
0x01 下载镜像
主流的Linux系统都提供有供OpenStack使用的cloud镜像:
CentOS:http://cloud.centos.org/centos/
Ubuntu:http://cloud-images.ubuntu.com/
0x02 安装guestfish(以下操作需要使用root权限)
Ubuntu: apt-get install libguestfs-tools
CentOS: yum install guestfish
0x03 启用“root+密码”的登陆方式
以Ubuntu系统为例:
root:~# guestfish --rw -a ubuntu.img root:~# ><fs> run root:~# ><fs> list-filesystem
/dev/sda1 :ext4
root:~# ><fs> mount /dev/sda1 /
另起一个终端,执行以下命令:
root:~# openssl passwd - ubuntu
$$AsKVw9p8$BMxCNkExSBbtrN2IaU3/W.
root:~# ><fs> vi /etc/shadow
将第一行的“root:*:”中的“*”替换为“$1$AsKVw9p8$BMxCNkExSBbtrN2IaU3/W.”,保存退出。
root:~# ><fs> vi /etc/ssh/sshd_config
将“PermitRootLogin”行改为“PermitRootLogin yes”,“PasswordAuthentication no”改为“PasswordAuthentication yes”,保存退出。
root:~# ><fs> quit
退出guestfish。
之后再使用修改后的镜像创建云主机就可以使用“ssh root@ip + ubuntu”登陆了。
0x04 补充
如果不想使用root用户登陆,可以使用CentOS/Ubuntu官方提供的镜像提供的普通用户centos/ubuntu用户登陆,不过需要手动配置下/etc/cloud/cloud.cfg文件,修改方法同上:
root:~# ><fs> vi /etc/cloud/cloud.cfg
找到default_user字段,将lock_passwd:True(默认禁用密码登陆)修改为:lock_passwd:false,添加:plain_text_passwd:'ubuntu',保存退出。
OpenStack官方镜像无法ssh登陆的更多相关文章
- openstack 官方镜像qcow2 下载和修改密码
下载地址: CentOS6:http://cloud.centos.org/centos/6/images/ CentOS7:http://cloud.centos.org/centos/7/imag ...
- Openstack 使用Centos官方镜像创建实例记录
Openstack 使用Centos官方镜像创建实例记录 准备centos镜像 官方地址:http://cloud.centos.org/centos/7/images 可以看到有各种版本的镜像,我在 ...
- 修改openstack Centos镜像的默认用户的密码
Ubuntu官方提供的OpenStack镜像是用Key来登录的,太麻烦,可以改成用密码来登录. 修改image的工具叫:guestfish. yum install libguestfs-tools ...
- openstack导入镜像
本文以制作CentOS7.2镜像为例,详细介绍手动制作OpenStack镜像详细步骤,解释每一步这么做的原因.镜像上传到OpenStack glance,支持以下几个功能: 支持密码注入功能(nova ...
- 读书笔记---《Docker 技术入门与实践》---为镜像添加SSH服务
之前说到可以通过attach和exec两个命令登陆容器,但是如果遇到需要远程通过ssh登陆容器的场景,就需要手动添加ssh服务. 下面介绍两种方法创建带有ssh服务的镜像,commit命令创建和通过D ...
- 制作 OpenStack Linux 镜像 - 每天5分钟玩转 OpenStack(151)
这是 OpenStack 实施经验分享系列的第 1 篇. OpenStack 的 instance 是通过 Glance 镜像部署的,所以准备镜像是必须要做的工作.本节介绍 Linux 镜像的制作方法 ...
- ssh登陆服务器locale告警(-bash: warning: setlocale:)的处理方法
使用ssh远程登陆 IDC机房服务器,发现老是出现如下告警信息: -bash: warning: setlocale: LC_CTYPE: cannot change locale (en_US.UT ...
- docker下debian镜像开启ssh, 允许root用密码登录
用的官方python镜像做开发, 暴露端口, 用pycharm ssh进去开发. 忽然发现本来ssh能连上, 但是更了新的python镜像连不上了. 有折腾了一下, 连上了. 主要是python官网镜 ...
- 为镜像添加SSH服务
操作Docker容器介绍了一些进入容器的办法,比如attach.exec等命令,但是这些命令都无法解决远程管理容器的问题.因此,当需要远程登录到容器内进行一些操作的时候,就需要SSH的支持了. 如何自 ...
随机推荐
- CCPC2019网络赛
2019中国大学生程序设计竞赛(CCPC) - 网络选拔赛 A 题意:找到最小的正整数 C 使得 (A^C)&(B^C) 最小. \(A,B \le 10^9\) 签到题.这个C取 A& ...
- StringBuiler和StringBuffer的区别
String.StringBuiler.和StringBuffer都是可以对字符串进行处理的类,他们3个的主要区别在于,运行的速度,还有运行时的线程安全问题. 运行速度方面,它们的快慢顺序依次为:St ...
- CF 1095C Powers Of Two
题目连接:http://codeforces.com/problemset/problem/1095/C 题目: C. Powers Of Two time limit per test 4 seco ...
- 17.3.13--python编码问题
1----字符编码: 字符编码(英语:Character encoding).字集码是把字符集中的字符编码为指定集合中某一对象(例如:比特模式.自然数串行.8位组或者电脉冲),以便文本在计算机中存储和 ...
- linux下别名的设定
命令别名设定功能: (alias)假如我需要知道这个目录底下的所有文件 (包含隐藏档) 及所有的文件属性,那么我就必须要下达『 ls -al 』这样的指令串,比较麻烦,我们可以为其设定别名为lm al ...
- [SDOI2019]热闹又尴尬的聚会(图论+set+构造)
据说原数据可以让复杂度不满的暴力O(Tn^2)过掉……O(Tn^2)方法类似于codeforces一场div2的E题 有一种比较好的方法:每次找出原图G中度最小的点加入q,然后将相邻的点加入新图G'. ...
- echarts 实现柱状图重叠而不是相互增加
1.引入echart 所需要的js和css,这不再引入 总量的数据是包含分量且大于等于分量 先上效果图: 当我们查看总量时,显示的是将分量的也包含里面,这样就不是叠加的数量了 2.直接上代码 (可复制 ...
- NAIPC2018
NAIPC2018 参考:http://www.cnblogs.com/LQLlulu/p/9513669.html?tdsourcetag=s_pctim_aiomsg https://www.cn ...
- 视觉SLAM算法框架解析(1) PTAM
版权声明:本文为博主原创文章,未经博主允许不得转载. 本系列文章旨在总结主流视觉SLAM算法的框架,对比各个算法在子模块的差异,最终提炼出融合各个算法优点的架构. PTAM[1]是视觉SLAM领域里程 ...
- 简单的使用httpclient读取网页html例子
public void clientPost(String url) { /* 1 生成 HttpClinet 对象并设置参数*/ HttpClient httpClient=new Http ...