linux - Centos7 和 xshell

一、VMware虚拟机使用

1.什么是虚拟机

虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。

虚拟系统通过生成现有操作系统的全新虚拟镜像,它具有真实windows系统完全一样的功能,进入虚拟系统后,所有操作都是在这个全新的独立的虚拟系统里面进行,可以独立安装运行软件,保存数据,拥有自己的独立桌面,不会对真正的系统产生任何影响 ,而且具有能够在现有系统与虚拟镜像之间灵活切换的一类操作系统。

2.什么是VMware

VMWare (Virtual Machine ware)是一个“虚拟PC”软件公司

VMwareWorkstation可以使你在一台机器上同时运行二个或更多Windows、DOS、LINUX系统系统。与“多启动”系统相比,VMWare采用了完全不同的概念。多启动系统在一个时刻只能运行一个系统,在系统切换时需要重新启动机器。

VMWare是真正“同时”运行,多个操作系统在主系统的平台上,就象标准Windows应用程序那样切换。而且每个操作系统你都可以进行虚拟的分区、配置而不影响真实硬盘的数据,你甚至可以通过网卡将几台虚拟机用网卡连接为一个局域网,极其方便。

安装在VMware操作系统性能上比直接安装在硬盘上的系统低不少,因此,比较适合学习和测试。

为什么使用VMware?

因为我们想要在一台机器使用两个操作系统,就需要另一个空间来存放我们的第二个操作系统,有人说,你为什么不安装双系统?

双系统本质是划分了两个不同的空间,来分别安装一个系统,但是我们从一个系统切换到另一个系统是需要重启机器的,很不方便。

VMware使用优势:

  • 利用虚拟机搭建Linux学习环境简单方便、容易上手,真是的工作场景也是通过ssh连接服务器,而不是在机房操控服务器。

  • 搭建Linux集群或者需要模拟多台服务器通信的时候,可以同时开启好几台虚拟机,虚拟机可以轻松满足多机器的需求。

  • 很容易修改虚拟机(服务器)的配置,且不会影响自己的电脑,想删除虚拟机也不会影响电脑,因为虚拟机只是运行在电脑上的一个程序(一堆文件)

3.VMware的安装

这里演示的windows的安装环境,安装版本是VMware WorkStation Pro 12.

关于软件的下载,大家可以去网上搜罗一下,很多的,我就不给出连接了。

下载好安装包后解压出来,进入安装界面。

二、Centos7和shell的安装

1.Centos7系统安装

Centos7下载

要安装centos系统,就必须得有centos系统软件安装程序,可以通过浏览器访问centos官网http://www.centos.org,然后找到Downloads - > mirrors链接,点击后进入下载,但是由于这是国外的网址,下载速度肯定受限。

这里我们使用国内的镜像源

https://opsx.alibaba.com/mirror#阿里云官方镜像站 iso下载地址(此DVD映像包含可以使用该软件安装的所有软件包安装程序。这是大多数用户的推荐图像。):https://mirrors.aliyun.com/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1804.iso

Centos7安装

安装过程步骤有点多,这里我录了一个gif的图片,还有选项好后,安装时间可能比较长,需要耐心等待。

安装好后,接下来需要做的就是配置centos7,详细配置图如下:

用户设置

2.安装过程的注意事项

  • 在SYSTEM中的网络配置NETWORK&HOSTNAME中有可能会有问题,出现无法连接到网络的时候,需要修改右下角网络图标中的设置,将网络连接方式该为桥接。这样网络连接就正常了

  • 确保你的电脑支持虚拟化,也就是所谓了VT(虚拟化)技术,没有的话会爆出警告!

解决方法

安装 RHEL 7 或 CentOS 7 系统时,大家的电脑的 CPU 需要支持 VT(Virtualization Technology,虚拟化技术)。

所谓 VT,指的是让单台计算机能够分割出多个独立资源区, 并让每个资源区按照需要模拟出系统的一项技术,其本质就是通过中间层实现计算机 资源的管理和再分配,让系统资源的利用率最大化。

其实只要您的电脑不是五六年前 买的,价格不低于三千元,它的 CPU 就肯定会支持 VT 的。如果开启虚拟机后依然提 示“CPU 不支持 VT 技术”等报错信息,请重启电脑并进入到 BIOS 中把 VT 虚拟化功 能开启即可。

3.root用户更改密码

针对好多好多同学经常忘记root密码。。。这里给你整理怎么重置root密码!!

重启 Linux 系统主机并出现引导界面时,按下键盘上的 e 键进入内核编辑界面

 

在 linux16 参数这行的最后面追加“rd.break”参数,然后按下 Ctrl + X 组合键来运行修改过的内核程序。

大约 30 秒过后,进入到系统的紧急求援模式,

接下来输入如下命令即可

1
2
3
4
5
mount  -o remount,rw  /sysroot
chroot  /sysroot
passwd
touch  /.autorelabel
exit  reboot

三、Xshell远程连接

Xshell安装过程如下。

1.为什么使用远程连接Linux

在实际的工作场景中,虚拟机界面或者物理服务器本地的终端都是很少接触的,因为服务器装完系统之后,都要拉倒IDC机房托管,如果是购买的云主机,那更碰不到服务器本体了,只能通过远程连接的方式管理自己的Linux系统。

因此在装好Linux系统之后,使用的第一步应该是配置好客户端软件(ssh软件进行连接)连接Linux系统。

远程连接Linux一般通过两个软件

  • Xshell
  • SecureCRT

2.远程连接知识基础

ip地址:也就是服务器的位置,互联网上的计算机都会有一个唯一的32位的ip地址,如同家里的门牌号,对应到服务器的位置。

局域网:(针对自己班级/家庭所在环境)里也有预留的ip地址,一般是192/10/172开头,局域网的IP地址也是唯一的。

windows查看ip命令:cmd终端下

1
2
3
# 在cmd终端敲下:
ipconfig
查看“以太网适配器 本地连接  IPv4”的Ip地址就是自身网线的ip地址了

 Linux下查看ip方式:

1
2
方式1:ip addr
方式2:  ifconfig

外网ip

可以对全世界提供服务的网络地址。

查看或配置网卡信息

  • ifconfig:configure a network interface-查看或配置计算机当前的网卡配置
  • ping ip地址:ping-检测到目标ip地址的链接是否正常

 一套计算机中有可能会有一个物理网卡和多个虚拟网卡,在Linux中物理网卡的名字通常以ensXX表示

127.0.0.1被称为本地回环/环回地址,一般用来测试本机网卡是否正常。

虚拟机网路配置

  • 主机模式host only

单机模式,了解

  • NAT模式

电脑宿主机的ip在局域网内是唯一的,选择了NAT模式创建虚拟机,虚拟机就是一个新的局域网

 

  • 桥接模式

用此模式,就是局域网中一台独立的主机,它可以访问该类网段任意一台机器

端口的概念

端口在网络编程的概念中都已经涉及到过,这里在简单再提一提。

一台服务器可以有一个ip地址,例如是192.168.11.1,服务器是需要对外提供服务的,例如web服务,FTP服务。那么仅凭ip地址,主机无法区分不同的服务,ip地址和网络服务是一对多的关系,一个ip提供多个服务,因此就有了“端口号”来区分不同的服务器的。

端口(port)的设计规定是有65536这么多端口,每个端口对应唯一的程序,0-1024端口之间被操作系统占用,因此开发人员能使用的是1024-65536区间的端口。

  • 通过ip地址可以访问到网络中的计算机
  • 通过port端口可以访问到计算机上的某个应用程序

协议的概念

protocol是为网络中的数据交换而建立的规则、标准或者约定,两个实体要通信,必须有同一种语言。

常见协议有超文本传输协议(HTTP)、文件传输协议(FTP),简单邮件传输协议(SMTP)、网络通信协议(TCP)、用户数据报协议(UDP)

3.Xshell远程连接

开始使用Xshell远程连接,但是有木有发现这个界面好丑啊,黑不黑白不白的,这里教大家修改Xshell背景颜色,我还是喜欢这种纯色的干净感。

Xshell远程连接Linux

Xshell窗口下运行命令

ssh 用户名@ip地址  (默认22端口)

ssh [email protected]

 在弹出的窗口中输入当前连接用户的密码即可,这样你就可以愉快的通过Xshell来连接Linux玩耍了。

Linux切换虚拟终端

Linux总共为我们提供了七个命令终端,分别用两个ctrl+Alt+F[1~6]

ctrl+Alt+F[1~6],如想切换到第二号虚拟终端,则同时按Ctrl+Alt+F2

查看终端信息shell命令

1
2
3
tty           查看当前终端
who  am i 仅显示当前用户正在使用的终端和登录时间
w            查看所有终端(功能最全,显示用户名,终端标记,登录时间,负载等信息)

 

4.配置SSHD服务

SSH(Secure Shell)是一种能够以安全的方式提供远程登录的协议,也是目前远程管理 Linux 系统的首选方式。在此之前,一般使用 FTP 或 Telnet 来进行远程登录。但是因为它们 以明文的形式在网络中传输账户密码和数据信息,因此很不安全,很容易受到黑客发起的中 间人攻击,这轻则篡改传输的数据信息,重则直接抓取服务器的账户密码。

想要使用 SSH 协议来远程管理 Linux 系统,则需要部署配置 sshd 服务程序。sshd 是基于 SSH 协议开发的一款远程管理服务程序,不仅使用起来方便快捷,而且能够提供两种安全验证的方法:

  1. 基于口令的验证-------用账号和密码登录
  2. 基于密钥的验证-------需要在本地生成密钥对,然后把密钥对中的公钥上传至服务器,并与服务器中的公钥进行比较;

“Linux一切接文件”,也就是在Linux系统中修改服务程序,都得去修改它对应的配置文件,sshd程序的配置文件是/etc/ssh/sshd_config,检查配置文件参数

1
grep  - v  '^#'  /etc/ssh/sshd_config  | grep  - v  '^$'

在RHEL7系统中,已经默认安装启动了SSHD服务,

使用密码登录

1
ssh  192.168.12.15

基于口令的认证

在第一次登录的时候,系统会出现下面的提示信息

The authenticity of host 'ssh-server.example.com (12.18.429.21)' can't be established.
RSA key fingerprint is 98:2e:d7:e0:de:9f:ac:67:28:c2:42:2d:37:16:58:4d.
Are you sure you want to continue connecting (yes/no)?

上面的信息说的是:无法确认主机ssh-server.example.com(12.18.429.21)的真实性,不过知道它的公钥指纹,是否继续连接?

输入yes之后,那么该host key会被加入到Client的known_hosts中,格式如下

1
pyyuc.cn,123.206.16.61 ecdsa-sha2-nistp256....

 终端提示如下:

1
2
Warning: Permanently added  'ssh-server.example.com,12.18.429.21'  (RSA) to the list of known hosts.
Password: (enter password)

提示该host已经被确认,并追加到文件known_hosts中,然后就要输入密码,之后的流程如图。

 

注意:私钥是server端独有的,即使client的信息泄露,也没有私钥进行解密,保证数据安全。

使用安全秘钥

加密是对信息进行编码和解码的技术,它通过一定的算法将原本可以直接阅读的铭文信息转换成密文。密钥就是密文的钥匙,有私钥和公钥之分。

在数据传输时,担心被他人监听或截获,就可以在传输前先使用公钥对数据加密处理,然后再传送。这样只有掌握私钥的用户才能解密这段数据,除此之外的其让人即使截取了数据,也很难将其破解成明文。

基于公钥的免密登录

1.在客户端生成“秘钥对”

1
ssh -keygen

2.第二步:吧客户端主机中生成的公钥文件传送至远程主机:

3.对服务器端进行设置,使其只能允许秘钥登录,拒绝口令登录,然后重启sshd服务。

1
2
3
4
vim  /etc/ssh/sshd_config
PasswordAuthentication no
 
systemctl restart sshd

4.在客户端即可免密登录服务器了

一、VMware虚拟机使用

1.什么是虚拟机

虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。

虚拟系统通过生成现有操作系统的全新虚拟镜像,它具有真实windows系统完全一样的功能,进入虚拟系统后,所有操作都是在这个全新的独立的虚拟系统里面进行,可以独立安装运行软件,保存数据,拥有自己的独立桌面,不会对真正的系统产生任何影响 ,而且具有能够在现有系统与虚拟镜像之间灵活切换的一类操作系统。

2.什么是VMware

VMWare (Virtual Machine ware)是一个“虚拟PC”软件公司

VMwareWorkstation可以使你在一台机器上同时运行二个或更多Windows、DOS、LINUX系统系统。与“多启动”系统相比,VMWare采用了完全不同的概念。多启动系统在一个时刻只能运行一个系统,在系统切换时需要重新启动机器。

VMWare是真正“同时”运行,多个操作系统在主系统的平台上,就象标准Windows应用程序那样切换。而且每个操作系统你都可以进行虚拟的分区、配置而不影响真实硬盘的数据,你甚至可以通过网卡将几台虚拟机用网卡连接为一个局域网,极其方便。

安装在VMware操作系统性能上比直接安装在硬盘上的系统低不少,因此,比较适合学习和测试。

为什么使用VMware?

因为我们想要在一台机器使用两个操作系统,就需要另一个空间来存放我们的第二个操作系统,有人说,你为什么不安装双系统?

双系统本质是划分了两个不同的空间,来分别安装一个系统,但是我们从一个系统切换到另一个系统是需要重启机器的,很不方便。

VMware使用优势:

  • 利用虚拟机搭建Linux学习环境简单方便、容易上手,真是的工作场景也是通过ssh连接服务器,而不是在机房操控服务器。

  • 搭建Linux集群或者需要模拟多台服务器通信的时候,可以同时开启好几台虚拟机,虚拟机可以轻松满足多机器的需求。

  • 很容易修改虚拟机(服务器)的配置,且不会影响自己的电脑,想删除虚拟机也不会影响电脑,因为虚拟机只是运行在电脑上的一个程序(一堆文件)

3.VMware的安装

这里演示的windows的安装环境,安装版本是VMware WorkStation Pro 12.

关于软件的下载,大家可以去网上搜罗一下,很多的,我就不给出连接了。

下载好安装包后解压出来,进入安装界面。

二、Centos7和shell的安装

1.Centos7系统安装

Centos7下载

要安装centos系统,就必须得有centos系统软件安装程序,可以通过浏览器访问centos官网http://www.centos.org,然后找到Downloads - > mirrors链接,点击后进入下载,但是由于这是国外的网址,下载速度肯定受限。

这里我们使用国内的镜像源

https://opsx.alibaba.com/mirror#阿里云官方镜像站 iso下载地址(此DVD映像包含可以使用该软件安装的所有软件包安装程序。这是大多数用户的推荐图像。):https://mirrors.aliyun.com/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1804.iso

Centos7安装

安装过程步骤有点多,这里我录了一个gif的图片,还有选项好后,安装时间可能比较长,需要耐心等待。

安装好后,接下来需要做的就是配置centos7,详细配置图如下:

用户设置

2.安装过程的注意事项

  • 在SYSTEM中的网络配置NETWORK&HOSTNAME中有可能会有问题,出现无法连接到网络的时候,需要修改右下角网络图标中的设置,将网络连接方式该为桥接。这样网络连接就正常了

  • 确保你的电脑支持虚拟化,也就是所谓了VT(虚拟化)技术,没有的话会爆出警告!

解决方法

安装 RHEL 7 或 CentOS 7 系统时,大家的电脑的 CPU 需要支持 VT(Virtualization Technology,虚拟化技术)。

所谓 VT,指的是让单台计算机能够分割出多个独立资源区, 并让每个资源区按照需要模拟出系统的一项技术,其本质就是通过中间层实现计算机 资源的管理和再分配,让系统资源的利用率最大化。

其实只要您的电脑不是五六年前 买的,价格不低于三千元,它的 CPU 就肯定会支持 VT 的。如果开启虚拟机后依然提 示“CPU 不支持 VT 技术”等报错信息,请重启电脑并进入到 BIOS 中把 VT 虚拟化功 能开启即可。

3.root用户更改密码

针对好多好多同学经常忘记root密码。。。这里给你整理怎么重置root密码!!

重启 Linux 系统主机并出现引导界面时,按下键盘上的 e 键进入内核编辑界面

 

在 linux16 参数这行的最后面追加“rd.break”参数,然后按下 Ctrl + X 组合键来运行修改过的内核程序。

大约 30 秒过后,进入到系统的紧急求援模式,

接下来输入如下命令即可

1
2
3
4
5
mount  -o remount,rw  /sysroot
chroot  /sysroot
passwd
touch  /.autorelabel
exit  reboot

三、Xshell远程连接

Xshell安装过程如下。

1.为什么使用远程连接Linux

在实际的工作场景中,虚拟机界面或者物理服务器本地的终端都是很少接触的,因为服务器装完系统之后,都要拉倒IDC机房托管,如果是购买的云主机,那更碰不到服务器本体了,只能通过远程连接的方式管理自己的Linux系统。

因此在装好Linux系统之后,使用的第一步应该是配置好客户端软件(ssh软件进行连接)连接Linux系统。

远程连接Linux一般通过两个软件

  • Xshell
  • SecureCRT

2.远程连接知识基础

ip地址:也就是服务器的位置,互联网上的计算机都会有一个唯一的32位的ip地址,如同家里的门牌号,对应到服务器的位置。

局域网:(针对自己班级/家庭所在环境)里也有预留的ip地址,一般是192/10/172开头,局域网的IP地址也是唯一的。

windows查看ip命令:cmd终端下

1
2
3
# 在cmd终端敲下:
ipconfig
查看“以太网适配器 本地连接  IPv4”的Ip地址就是自身网线的ip地址了

 Linux下查看ip方式:

1
2
方式1:ip addr
方式2:  ifconfig

外网ip

可以对全世界提供服务的网络地址。

查看或配置网卡信息

  • ifconfig:configure a network interface-查看或配置计算机当前的网卡配置
  • ping ip地址:ping-检测到目标ip地址的链接是否正常

 一套计算机中有可能会有一个物理网卡和多个虚拟网卡,在Linux中物理网卡的名字通常以ensXX表示

127.0.0.1被称为本地回环/环回地址,一般用来测试本机网卡是否正常。

虚拟机网路配置

  • 主机模式host only

单机模式,了解

  • NAT模式

电脑宿主机的ip在局域网内是唯一的,选择了NAT模式创建虚拟机,虚拟机就是一个新的局域网

 

  • 桥接模式

用此模式,就是局域网中一台独立的主机,它可以访问该类网段任意一台机器

端口的概念

端口在网络编程的概念中都已经涉及到过,这里在简单再提一提。

一台服务器可以有一个ip地址,例如是192.168.11.1,服务器是需要对外提供服务的,例如web服务,FTP服务。那么仅凭ip地址,主机无法区分不同的服务,ip地址和网络服务是一对多的关系,一个ip提供多个服务,因此就有了“端口号”来区分不同的服务器的。

端口(port)的设计规定是有65536这么多端口,每个端口对应唯一的程序,0-1024端口之间被操作系统占用,因此开发人员能使用的是1024-65536区间的端口。

  • 通过ip地址可以访问到网络中的计算机
  • 通过port端口可以访问到计算机上的某个应用程序

协议的概念

protocol是为网络中的数据交换而建立的规则、标准或者约定,两个实体要通信,必须有同一种语言。

常见协议有超文本传输协议(HTTP)、文件传输协议(FTP),简单邮件传输协议(SMTP)、网络通信协议(TCP)、用户数据报协议(UDP)

3.Xshell远程连接

开始使用Xshell远程连接,但是有木有发现这个界面好丑啊,黑不黑白不白的,这里教大家修改Xshell背景颜色,我还是喜欢这种纯色的干净感。

Xshell远程连接Linux

Xshell窗口下运行命令

ssh 用户名@ip地址  (默认22端口)

ssh [email protected]

 在弹出的窗口中输入当前连接用户的密码即可,这样你就可以愉快的通过Xshell来连接Linux玩耍了。

Linux切换虚拟终端

Linux总共为我们提供了七个命令终端,分别用两个ctrl+Alt+F[1~6]

ctrl+Alt+F[1~6],如想切换到第二号虚拟终端,则同时按Ctrl+Alt+F2

查看终端信息shell命令

1
2
3
tty           查看当前终端
who  am i 仅显示当前用户正在使用的终端和登录时间
w            查看所有终端(功能最全,显示用户名,终端标记,登录时间,负载等信息)

 

4.配置SSHD服务

SSH(Secure Shell)是一种能够以安全的方式提供远程登录的协议,也是目前远程管理 Linux 系统的首选方式。在此之前,一般使用 FTP 或 Telnet 来进行远程登录。但是因为它们 以明文的形式在网络中传输账户密码和数据信息,因此很不安全,很容易受到黑客发起的中 间人攻击,这轻则篡改传输的数据信息,重则直接抓取服务器的账户密码。

想要使用 SSH 协议来远程管理 Linux 系统,则需要部署配置 sshd 服务程序。sshd 是基于 SSH 协议开发的一款远程管理服务程序,不仅使用起来方便快捷,而且能够提供两种安全验证的方法:

  1. 基于口令的验证-------用账号和密码登录
  2. 基于密钥的验证-------需要在本地生成密钥对,然后把密钥对中的公钥上传至服务器,并与服务器中的公钥进行比较;

“Linux一切接文件”,也就是在Linux系统中修改服务程序,都得去修改它对应的配置文件,sshd程序的配置文件是/etc/ssh/sshd_config,检查配置文件参数

1
grep  - v  '^#'  /etc/ssh/sshd_config  | grep  - v  '^$'

在RHEL7系统中,已经默认安装启动了SSHD服务,

使用密码登录

1
ssh  192.168.12.15

基于口令的认证

在第一次登录的时候,系统会出现下面的提示信息

The authenticity of host 'ssh-server.example.com (12.18.429.21)' can't be established.
RSA key fingerprint is 98:2e:d7:e0:de:9f:ac:67:28:c2:42:2d:37:16:58:4d.
Are you sure you want to continue connecting (yes/no)?

上面的信息说的是:无法确认主机ssh-server.example.com(12.18.429.21)的真实性,不过知道它的公钥指纹,是否继续连接?

输入yes之后,那么该host key会被加入到Client的known_hosts中,格式如下

1
pyyuc.cn,123.206.16.61 ecdsa-sha2-nistp256....

 终端提示如下:

1
2
Warning: Permanently added  'ssh-server.example.com,12.18.429.21'  (RSA) to the list of known hosts.
Password: (enter password)

提示该host已经被确认,并追加到文件known_hosts中,然后就要输入密码,之后的流程如图。

 

注意:私钥是server端独有的,即使client的信息泄露,也没有私钥进行解密,保证数据安全。

使用安全秘钥

加密是对信息进行编码和解码的技术,它通过一定的算法将原本可以直接阅读的铭文信息转换成密文。密钥就是密文的钥匙,有私钥和公钥之分。

在数据传输时,担心被他人监听或截获,就可以在传输前先使用公钥对数据加密处理,然后再传送。这样只有掌握私钥的用户才能解密这段数据,除此之外的其让人即使截取了数据,也很难将其破解成明文。

基于公钥的免密登录

1.在客户端生成“秘钥对”

1
ssh -keygen

2.第二步:吧客户端主机中生成的公钥文件传送至远程主机:

3.对服务器端进行设置,使其只能允许秘钥登录,拒绝口令登录,然后重启sshd服务。

1
2
3
4
vim  /etc/ssh/sshd_config
PasswordAuthentication no
 
systemctl restart sshd

4.在客户端即可免密登录服务器了

猜你喜欢

转载自www.cnblogs.com/XLHIT/p/11750538.html