1. 概述

上一篇博客中,主要是通过VMware workstation创建了虚拟机console。使用VMware workstation虚拟化比较轻松和简答。

本篇博客中,主要是使用console来部署KVM虚拟化环境。在部署console的KVM虚拟化之前,需要对console做一些基本的环境配置。

2. 配置console的登陆

登陆一台主机的方式有很多种:telnet,ssh,vnc等,对于VMware workstation来说,还能够通过本地登陆。

VMware workstation可以配置VNC登陆,即VMware workstation能够让远程用户进行VNC连接到内部虚拟机。

当然这不在本博客的探讨范围内。

有关Linux主机登陆的各类情况,参照博客《Linux主机的登陆》,URL:

本篇博客主要配置console的ssh协议登陆。

有关ssh协议详解参照博客《ssh协议详解》

通过VMware workstation本地登陆console(界面较丑),或者通过xshell通过ssh协议登陆。

xshell在新连接的第一次登陆时,提示是否接受远程主机的公钥,选择接受。然后输入对应的用户账号和密码,即可登陆系统。这里选择以超级用户root登陆。

登陆之后,执行命令w,可以初步了解当前系统的用户和登陆信息。

2.1 配置sshd服务

有关sshd服务的详细配置,参照博客《sshd服务配置详解》

编辑sshd服务端配置文件:vi /etc/ssh/sshd_config

修改内容如下:

Port 2222
ListenAddress 192.168.80.8
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeyFile .ssh/authorized_keys
PasswordAuthencation yes
PermitEmptyPasswords no
UseDNS no

初步配置如上述内容。这样的配置表示,console的sshd服务监听在192.168.80.8:2222端口。这是安全登陆的第一步。更加详细的配置以后配置。

2.2 重启sshd服务

执行命令service sshd restart,重启sshd服务即可。

2.3 无法登陆的问题解决

  • 排查xshell连接console的信息,如地址,端口等
  • serivce iptables stop 关闭防火墙
  • setenforce 0,关闭selinux

3. 配置密钥登陆

ssh协议提供了两种验证方式:密码和密钥。上述第2部分中的配置文件,开启了密码登陆,这是不安全的。一般使用密钥登陆。本部分主要接受密钥登陆。

采用密钥登陆,首先要生产密钥对。私钥在用户手中,公钥写入到sshd的验证文件/root/.ssh/authorized_keys

生产公密钥对的方式有两种:

  1. 通过ssh客户端工具生成,如xshell,然后上传公钥至服务器
  2. 通过ssh服务端生成,下载私钥,导入到xshell中

两种方式均可。采用第1种方式较为安全。本篇博客两种都有涉及。

3.1 上传公钥的方式

上传公钥的方式,就需要用户在本地生成公密钥对。xshell提供了该功能。

主要步骤:

  1. 菜单——>工具——>用户密钥管理者
  2. 点击生成。【密钥类型】,默认RSA;【密钥长度】,2048位;点击【下一步】
  3. 密钥名称【id_rsa_2018】,可修改;输入密钥密码;点击【下一步】
  4. 公钥格式,默认;点击【保存为文件】,保存公钥
  5. 保存完之后,点击【完成】

将上述保存的公钥,上传到服务端的/root/.ssh/目录种,并写入验证文件。

3.2 下载密码的方式

下载密钥的方式,需要在服务端(console)生成。

主要步骤:

  1. 进入到指定目录:cd /root/.ssh
  2. 执行命令,生成公密钥对:ssh-keygen -t rsa -P "liwanliang" -f id_rsa
  3. 将公钥写入验证文件:cat id_rsa.pub > authorized_keys
  4. 修改验证文件权限为600:chmod 600 authorized_keys

将上述过程产生的密钥,下载到宿主机本地,然后导入xshell。导入过程中的密钥密码,为-P指定的密码。

3.3 虚拟机和宿主机共享文件

上述过程中,该如何将公钥上传,或者该如何将密钥下载是个问题。有很多方法解决这个问题。

  • sftp连接登陆,上传和下载文件
  • 安装VMware tools,并且启用文件共享功能
  • 搭建vsftpd服务,然后上传和下载文件

本文中因为最小化安装,vsftpd等以后安装配置。为实现本篇博客的目的,采用sftp的方式传输文件。

3.4 关闭密码认证登陆

关闭密码认证登陆之前,需要确认导入的2个密钥,都能够成功认证。

然后配置/etc/ssh/sshd_config文件,取消密码认证,采用密钥认证,并禁止root用户登陆

虚拟机console基础环境配置——sshd安全登陆的更多相关文章

  1. 虚拟机console基础环境配置——安装VMware Tools

    1. 虚拟机设置中点击安装2. 虚拟机中挂载VMware Tools镜像3. 解压安装4. 配置共享目录5. 有关VMware Tools 1. 虚拟机设置中点击安装 VMware workstati ...

  2. 虚拟机console基础环境配置——系统镜像站点配置

    1. 概述2. 部署HTTP服务器2.1 YUM安装httpd2.2 配置httpd2.3 启动httpdf2.4 测试httpd3. 部署FTP服务器3.1 YUM安装vsftpd3.2 配置vsf ...

  3. 虚拟机console基础环境部署——工作目录准备

    1. 概述2. 相关约定2.1 删除旧文件2.2 创建全局共享文件目录2.3 创建全局软件安装目录2.4 创建数据放置目录3. 总结 1. 概述 上述博客中,已经为console最小化安装了操作系统. ...

  4. 虚拟机console基础环境部署——配置本地YUM源

    1. CD/ROM装载系统镜像2. 挂载设备3. 配置本地源4. 总结 有关YUM源及Linux系统三大软件管理方式,参照博客<CentOS系统三大软件管理>,笔记内链:CentOS系统三 ...

  5. 虚拟机console基础环境部署——安全加固

    1. 概述 安全是一个重要的课题.广义上可以总结为: 主机安全 网络安全 信息安全 数据安全 虽然console已经是最小化安装,但是这并不能说明console就已经安全了.之前的博客对console ...

  6. 虚拟机console基础环境部署——系统基础环境

    1. 概述2. 工具类安装2.1 安装vim2.2 安装tree2.3 安装expect2.4 安装lsof3. 编译环境类安装 1. 概述 本系列博客是在最小化安装CentOS6.5的基础上,通过配 ...

  7. kubernetes基础环境配置

    一.基础环境配置 环境详情 主机名(FQDN) IP地址(NAT) 描述 linux-node1.example.com eth0:192.168.56.11 1VCPU.2G内存.一块硬盘s da5 ...

  8. k8s基础环境配置:基于CentOS7.9

    k8s基础环境配置:基于CentOS7.9 wmware15安装centos7.9:https://www.cnblogs.com/uncleyong/p/15261742.html 1.配置静态ip ...

  9. 【No.1 Ionic】基础环境配置

    Node 安装 git clone https://github.com/nodejs/node cd node ./configure make sudo make install node -v ...

随机推荐

  1. JeeSite中Excel导入导出

    在各种管理系统中,数据的导入导出是经常用到的功能,通常导入导出以Excel.CSV格式居多.如果是学习的过程中,最好是自己实现数据导入与导出的功能,然而在项目中,还是调用现成的功能比较好.近期一直使用 ...

  2. zinnia项目功能分析

    Zinnia是基于Django开发的一个开源博客系统,近期为了写一个类博客系统特对它做功能分析,+号的多少表明这个功能对于博客的重要性: ++评论:Comments 站点图:Sitemaps ]压缩视 ...

  3. Visual Studio 2017 15.7 下的.NET Core

    Visual Studio 2017 15.7版本发布,对.NET Core项目的主要相关改变如下, 同时对Xamarin.Android和iOS项目的支持上也做了较大改进. 一. .NET Core ...

  4. R语言学习 第十一篇:日期和时间

    R语言的基础包中提供了三种基本类型用于处理日期和时间,Date用于处理日期,它不包括时间和时区信息:POSIXct/POSIXlt用于处理日期和时间,其中包括了日期.时间和时区信息.R内部在存储日期和 ...

  5. MariaDB/MySQL备份和恢复(一):mysqldump工具用法详述

    本文目录:1.备份分类2.备份内容和备份工具3.mysqldump用法详述 3.1 语法选项 3.1.1 连接选项 3.1.2 筛选选项 3.1.3 DDL选项 3.1.4 字符集选项 3.1.5 复 ...

  6. Kudu vs HBase

    本文由  网易云发布. 背景 Cloudera在2016年发布了新型的分布式存储系统--kudu,kudu目前也是apache下面的开源项目.Hadoop生态圈中的技术繁多,HDFS作为底层数据存储的 ...

  7. 拖拽模块move2

    之前的模块代码太死板了,由于内部定义了控件的ID,使用起来很不方便,so-----直接看代码 <script> var move =(function(){ function drop(b ...

  8. iframe 背景透明设置--兼容IE

    iframe标签添加: allowTransparency="true"属性. 子文件body背景设置透明: background-color: transparent;.

  9. Java Collections类

    集合类是什么? List列表.Set集合.Map映射.工具类(Iterator迭代器.Enumeration枚举类.Arrays和Collections). Set 接口继承 Collection,但 ...

  10. CSS命名规则常用的css命名规则

    CSS命名规则常用的css命名规则 头:header 内容:content/container 尾:footer 导航:nav 侧栏:sidebar 栏目:column 页面外围控制整体布局宽度:wr ...