Linux中使用SSH服务远程连接Linux系统

article/2025/11/9 3:20:02

目录

  • Linux之远程连接Linux系统
    • 一、为什么要远程连接Linux
    • 二、远程连接必备的知识
    • 三、虚拟机网络配置
    • 四、端口
    • 五、协议
    • 六、第一次连接Linux
    • 七、Linux切换虚拟终端
    • 八、查看终端信息shell命令
    • 九、配置nat网络:
    • 十、配置SSHD服务

Linux之远程连接Linux系统

1.linux安装好之后,如何初始化服务器 防火墙1: iptables  第三方 防火墙2: selinux   系统自带的(1).关闭linux的防火墙(就是一堆安全机制的规则,如同保安贴墙上的那些规则,共享单车禁止入内)因为后期我们去学习软件,学习nginx  mysql  redis  ,为了学习的方便,关闭防火墙,允许所有的端口可以访问iptables -F             清空防火墙规则 systemctl stop firewalld  关闭防火墙服务systemctl disable firewalld   关闭防火墙开机自启的服务(2).关闭selinux ,此步骤,需要重启linux方可生效vi /etc/selinux/config 找到   SELINUX=enforcing   这一行 改成  SELINUX=disabled 2.配置linux的ip地址的方法(1).选择上网的方式,可以选择2种,桥接  nat                   (2).选择了上网模式之后,可以通过命令管理网卡服务这两条命令,是重新读取一个文件中的配置,使得网络服务生效首先进入网卡的工作目录cd /etc/sysconfig/network-scripts/然后查看网卡配置文件,编译网卡配置文件,修改 onboot参数我的叫做ifcfg-ens33 vi  ifcfg-ens33 找到  ONBOOT=no  这一行 改成  ONBOOT=yes   使得下次开启机器,自动加载网络服务systemctl stop network    停止网络服务systemctl start network    开启网络服务systemctl restart network 重启网络服务,加载网卡配置文件reboot                  重启服务器3.查看ip查看windows的ip:           ipfconfig查看linux的ip:            ip addr show ip addrifconfig检查到ip地址的连接是否正常:    ping ip地址4.远程连接服务器ip addr showssh root@ip -p portxshell 远程连接工具#通过ssh命令,通过root账户登录192.168.13.98这台机器 ,默认端口22ssh root@192.168.13.985.linux有7个终端f1 ~ f7   7个终端,f1是图形化界面切换终端:ctrl+Alt+F[1~6],如想切换到第二号虚拟终端,则同时按Ctrl+Alt+F2普通用户登录后系统的提示符:$root用户登录后系统的提示符:#6.几个基础shell命令tty            查看当前终端who am i         仅显示当前用户正在使用的终端和登录时间w              查看所有终端(功能最全,显示用户名,终端标记,登录时间,负载等信息7.linux基本使用命令输入linux命令,多用tab键去补全,用不着自己去记linux的命令,其实就是一堆英文缩写,使用linux系统的熟练度,就是看你命令掌握了多少增touch   创建普通文本touch 文件名 touch  文件1 文件2 文件3mkdir   创建文件夹mkdir  文件夹名mkdir hanju  huoying  lol  kele   创建多个文件夹 vi    编辑文本的删rm        删除文件,文件夹,remove指令,删除命令在服务器上慎用 rm 文件名                  删除文件的命令rm 文件名*                   支持通配符rm -rf /var/lib/mysql/*     #删除mysql默认数据文件夹改mv        改名-移动文件,文件夹,move 1.移动文件/文件夹到别的目录2.改名      mv  旧名字 新名字 cd         切换目录,change  目录查ls          查看文件夹内容,list的缩写注:  linux 中白色的是普通文件,蓝色的是目录,文件夹cat        查看文本文件内容pwd        打印当前工作目录,print work 目录8.vi命令的用法1.vi 文件,此时进入了一个命令模式,需要你输入 i 字母,插入指令2.在编辑模式下,可以输入一堆字符串3.当代码写完了, 按下 esc 回到命令模式,按下冒号  :   输入 wq! :wq!        write 写入 quit 退出 !强制性:q!         不保存退出

一、为什么要远程连接Linux

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

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

通过什么软件呢?

Xshell
SecureCRT

二、远程连接必备的知识

ip地址 > 服务器的位置

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

我们找人,可以通过身份证号码对应某个人 那我们找到某台服务器,也必须是通过IP地址

局域网

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

windows查看ip通过命令:

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

Linux查看ip方式:

方式1:ip addr
方式2: ifconfig

外网Ip

全世界哪里都可以访问,



三、虚拟机网络配置

host only 仅主机 单机模式,了解即可 电脑pc > 皇帝 虚拟机 > 老百姓

老百姓被皇帝控制,无法与外届通信

nat模式(网络地址转换)
电脑pc > 皇帝
nat > 宰相
虚拟机 > 老百姓

老百姓的房子是宰相分配的 与皇帝无关
虚拟机的ip是nat分配的,电脑环境无论怎么变化,都不会影响虚拟机
好处:
在家,在学校,在公司,使用虚拟机,ip地址都不会变化

桥接
电脑pc > 皇帝
虚拟机 > 老百姓
只要更换了一波皇帝,老百姓房子都得换
只要换了个教室,插上网线,ip就变了
好处:不用配置
坏处:更换ip麻烦

NAT模式

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

桥接模式

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

仅主机模式

单机模式

四、端口

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

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

通过IP地址可以访问到网络中的  计算机。

通过port端口可以找到  计算机上的应用程序。

ftp:23
dns:53
http:80
https:443
ssh:22
redis:6379
MySQL:3306

五、协议

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

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

总结

ip ip地址     找人,找服务器  
port端口号提供什么服务
protocol协议说什么语言

在这里插入图片描述

ssh root@ip -p port

六、第一次连接Linux

1.下载Xshell
2.命令:ssh ip  (默认22端口)

那么问题来了。。。。

这个黑乎乎的是个什么玩意?

Linux终端也称为虚拟控制台,Linux终端采用字符命令方式工作,用户通过键盘输入命令,通过Linux终端对系统进行控制

Linux是一个多用户、多任务、支持多线程和多CPU的操作系统

七、Linux切换虚拟终端

ctrl+Alt+F[1~6],如想切换到第二号虚拟终端,则同时按Ctrl+Alt+F2
掌握普通用户登录后系统的提示符:$
掌握root用户登录后系统的提示符:#

八、查看终端信息shell命令

那么如何查看当前Linux的终端有哪些呢?

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

九、配置nat网络:

https://www.cnblogs.com/pyyu/p/9689138.html

十、配置SSHD服务

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

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

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

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

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

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

使用密码登录

ssh 192.168.12.15

基于口令的认证

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

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中,格式如下

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

终端提示如下:

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.在客户端主机生成“秘钥对”

ssh-keygen

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

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

vim /etc/ssh/sshd_config
PasswordAuthentication no
systemctl restart sshd

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

ssh root@123.206.16.61

练习

1)    开启Linux操作系统,要求以root用户登录GNOME图形界面,语言支持选择为汉语
2)    使用快捷键切换到虚拟终端2,使用普通用户身份登录,查看系统提示符
3)    使用命令退出虚拟终端2上登录的用户
4)    使用快捷键切换到虚拟终端5,使用管理员身份登录,查看系统提示符
5)    使用命令退出虚拟终端5上登录的用户
6)    切回图形界面,右单击桌面打开终端,输入关闭系统的命令<br>7)   成功设置服务器免密登录

http://chatgpt.dhexx.cn/article/pPXVubya.shtml

相关文章

Windows下通过ssh连接Linux

需求&#xff1a; windows通过命令行模式链接远程linux主机。 方法&#xff1a; 我的手里有一台windows的电脑&#xff0c;想通过它链接远程的Linux主机或者本机虚拟机中的Linux主机&#xff0c;当然&#xff0c;有很多的远程链接软件&#xff0c;比如著名的xshell和SecureC…

Linux命令之远程连接ssh

概述 ssh命令是openssh套件中的客户端连接工具&#xff0c;可以给予ssh加密协议实现安全的远程登录服务器&#xff0c;实现对服务器的远程管理。 在脚本中该命令有着重要重要&#xff0c;可用于在远程服务器中执行命令。 语法 ssh命令的基本语法如下&#xff1a;ssh [选项]…

SSH连接不上Linux 问题解决

查看linux 端口监听 #netstat -tnlp | grep ssh 以上图&#xff0c;说明该ssh是开着的&#xff0c; 连接端口是78 然后打开安全组 78 即可 修改该端口为&#xff1a;22 #vim /etc/ssh/sshd_config 输入e 进入该文件 多加一个端口。22端口 注意&#xff1a;1.将你的服务…

Linux中怎么搭建SSH远程连接服务器

文章目录 Linux中怎么搭建SSH远程连接服务器一、远程连接服务器&#xff1a;1、什么是远程连接服务器&#xff1a;2、远程连接服务器的功能3、常见的几种远程管理工具方式&#xff1a; 二、SSH连接加密技术&#xff1a;1、非对称密钥加密&#xff1a;2、对称密钥加密&#xff1…

Linux基础——SSH远程连接

简介 1.Ssh 是一种安全通道协议&#xff0c;主要用来实现字符界面的远程登录&#xff0c;远程复制等功能。 2.OpenSSH 是实现SSH软件的开源软件项目 结构 C/S结构&#xff1a;客户机和服务器结构&#xff0c;是软件体系结构。 B/S结构&#xff1a;浏览器和服务器结构&…

windows 通过ssh连接到Linux主机

windows 通过ssh连接到Linux主机 文章目录 windows 通过ssh连接到Linux主机1.ssh的认识2.ssh的安全验证3.连接方法4.windows 通过ssh连接到Linux主机 1.ssh的认识 SSH 为建立在应用层基础上的安全协议。SSH 是目前较可靠&#xff0c;专为远程登录会话和其他网络服务提供安全性…

Linux配置SSH连接方式

1. SSH介绍 1&#xff09; 什么是SSH SSH是一种安全协议&#xff0c;主要用于给远程登录会话数据进行加密&#xff0c;保证数据传输的安全 2&#xff09;SSH服务端和客户端 SSH服务端是一个守护进程&#xff0c;一遍为sshd进程&#xff0c;在后端运行并响应来自客户端的请求。…

Linux----SSH远程连接服务

一、SSH介绍 1、SSH介绍 SSH是一个应用层协议 实现Linux的远程加密连接 适用于Linux服务器远程管理 Telnet 远程连接、不加密 适用于局域网网络设备的远程连接 2、管理Linux服务器的方式 本地管理 安装系统、故障修复 远程管理&#xff08;使用频率较高&#xff09; 3…

如何通过ssh远程连接自己的主机(Linux)?

1.查看自己的网卡是否工作正常 可以看到&#xff0c;有多块网卡在工作&#xff0c;其中eno1是有线网卡&#xff0c;UP表示开启了&#xff0c;但没有运行&#xff08;RUNNING&#xff09;&#xff0c;因为此时主机并没有连接有线网络。 lo是本地虚拟网卡&#xff0c;所有设备都…

通过SSH连接到Linux服务器

目录 前提&#xff1a; 一、通过账号密码方式进行ssh连接 二、通过免密方式进行ssh连接&#xff08;公、私钥校验&#xff09; 三、通过第三方工具&#xff08;XShell&#xff09;免密方式进行ssh连接 前提&#xff1a; 传统的网络服务程序&#xff0c;如ftp&#xff0c;p…

Linux服务器的SSH连接使用

本文已同步至个人博客: liaosis blog----Linux服务器的SSH连接使用 一.什么是SSH? 简单说,SSH(Secure Shell)是一种网络协议,用于计算机之间的加密登录。如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,…

【SpringBoot】| 邮箱发送验证码,你会了吗?

目录 &#x1f981; 题外话&#x1f981; 提前准备2.1 配置邮箱第三方登录2.1.1 点击设置——账户2.1.2 开启POP3/SMTP服务 2.2 添加依赖2.3 yaml配置 &#x1f981; 进入主题&#x1f981; 测试使用&#x1f981; 尾声3.1 安利一个生成验证码的工具类3.1.1 添加依赖3.1.2 编写…

发送验证码倒计时效果实现

目录 前言一、应用场景二、代码演示三、 效果演示总结 前言 今天用vueuse/core中提供的一个方法&#xff0c;实现发送验证码时倒计时的一个效果。这样的场景使我们经常会见到的&#xff0c;一起来看一下如何实现 一、应用场景 用户选择手机号和验证码登录的时候&#xff0c;往…

阿里云短信服务——短信发送验证码

引言 短信服务现在在很多地方都用的到&#xff0c;我们最多接触到的可能就是验证码的发送了&#xff1b;现在很多大厂都提供由短信服务对应的api&#xff0c;直接调用就可以轻松实现短信发送&#xff1b;下面我以阿里云为例&#xff0c;演示一下如何短信发送验证码&#xff1b…

实战总结:邮箱发送验证码

java邮箱发送验证码 目前项目中需要同时支持短信和邮箱验证&#xff0c;短信用的是腾讯云就不多说了&#xff0c;在此分享一下邮箱验证码发送。 首先&#xff0c;作为发送邮箱&#xff0c;需要开启POP3/SMTP/IMAP&#xff0c;登录邮箱–设置–账户–开启POP3/SMTP/IMAP&#x…

SpringBoot整合邮箱发送验证码

1、以QQ邮箱为例&#xff0c;点开设置开启POP3/SMTP服务 2、创建一个springboot项目 1&#xff09;引入maven依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-mail</artifactId> </dependen…

Vue3发送验证码-防止页面刷新-发送验证码状态改变

效果: 1.页面DOM <div v-show"state.sendAuthCode" click"getCode">发送验证码</div> <div v-show"!state.sendAuthCode" ><span class"auth_text_blue">{{state.second}} </span>s</div>2. 业务…

C#实现手机发送验证码

目录 具体实现——封装一个类里&#xff0c;U层直接调用 配置文件的内容如下 验证手机号的正则表达式 首先先需要注册第三方网站&#xff0c;给大家推荐一个网站互亿无线&#xff0c;注册了之后每个用户可以免费发送50条短信。 下面以C#实现手机发送验证码为例。基本思路是本地…

uniapp 发送验证码倒计时

实现原理&#xff0c;点击发送验证码按钮&#xff0c;开始倒计时效果 准备工作 &#xff1a;在data中定义变量 ​​​​​​​ 点击事件 let timerId setInterval(() > {this.countDown--;this.sendText this.countDown "秒后重试";if (this.countDown < 0)…

html给手机号发送验证码,js如何实现手机发送验证码功能

js如何实现手机发送验证码功能 发布时间:2021-06-21 12:24:46 来源:亿速云 阅读:82 作者:小新 这篇文章将为大家详细讲解有关js如何实现手机发送验证码功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 效果图: 代码如下:html&g…