#每日一记#ubuntu 20.04 安装 SSH Server 实现远程登录
  

sailyang 5196

{{ttag.title}}
本帖最后由 sailyang 于 2020-11-3 15:19 编辑

SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH 为建立在应用层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台。SSH在正确使用时可弥补网络中的漏洞。SSH客户端适用于多种平台。几乎所有UNIX平台—包括HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平台,都可运行SSH。


openssh server 与 openssh client
openssh server的功能主要是作为一个服务运行在后台,如果这个服务开启,我们就可以用一些远程连接工具来连接运行此服务的主机。
openssh client 它作为连接运行openssh-server服务主机的客户端工具。
在以 Linux 内核发行版操作系统上,要实现远程连接,需要安装 openssh-server 软件包,并作为服务在后台一直运行,而 openssh-server 软件包依赖于 openssh-clients.


在 centos 系统安装 openssh-server 步骤


bash
yum install -y openssh
yum install openssh-clients
yum install -y openssh-server
# centos 7 启动 openssh-server
systemctl start sshd.services
# centos 6 启动 openssh-server
# /etc/init.d/sshd start
在 ubuntu 中安装 openssh-server 步骤 (ubuntu 默认安装openssh-clients)


bash
sudo apt update
sudo apt install openssh-server


# 启动 openssh-server
sudo /etc/init.d/ssh start
# 或
# sudo systemctl start ssh.service
# 或
# sudo service ssh start


Ubuntu SSH Server 安装、配置
1、检查是否安装 openssh-server
可通过以下3个命令中任何一个来检查是否已经安装 openssh-server:


bash
dpkg -s openssh-server
apt search openssh-server
sudo /etc/init.d/ssh start
如果出现:





说明:openssh-server 未安装,需要安装。


如果出现:
















说明:openssh-server 已安装(安装步骤可跳过)。


ssh -V 不能用来验证 openssh-server 是否安装
由于 Ubuntu 20.04 (>=16.04) 默认安装了 ssh client,但是默认未安装 openssh-server。


当执行 ssh -V 命令显示的版本信息实际上是 ssh client 的版本信息,而非 openssh-server 版本信息,因而不能通过此命令检查 是否已安装 openssh-server。



2、安装 openssh-server
sudo apt update
sudo apt install openssh-server
3、启动 openssh-server,接着输入命令
bash
sudo /etc/init.d/ssh start
# 或
sudo systemctl start ssh.service
ssh server 启动图示
ssh server 启动图示


ssh server 启动/停止/重启
bash
sudo /etc/init.d/ssh start # 启动
sudo /etc/init.d/ssh stop  # 停止
sudo /etc/init.d/ssh restart # 重启



bash
sudo systemctl start ssh.service # 启动
sudo systemctl stop ssh.service  # 停止
sudo systemctl restart ssh.service  # 重启



bash
sudo service ssh start    # 启动
sudo service ssh stop     # 停止
sudo service ssh restart  # 重启
4. 查看 openssh-server 是否已启动
查看ssh是否启动,如果启动服务中有 sshd,若有,说明已经启动.


sudo ps -e | grep ssh



5.ssh localhost 测试本地 openssh 服务器的运行及配置
终端输入


ssh localhost



ssh localhost 运行常见的错误
1. WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!



“WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!” 即:警告:远程主机标识已更改。


原因: 此报错是由于远程的主机的公钥发生了变化导致的。


ssh服务是通过公钥和私钥来进行连接的,它会把每个曾经访问过计算机或服务器的公钥(public key),记录在~/.ssh/known_hosts 中,当下次访问曾经访问过的计算机或服务器时,ssh就会核对公钥,如果和上次记录的不同,OpenSSH会发出警告。


解决办法: 删除对应ip的在known_hosts相关信息。



如果不能确定ip,直接将 known_hosts 中所有内容全部内容删除,保存即可。


清空known_hosts后首次执行 ssh localhost,添加公钥时会提醒选择 “Are you sure you want to continue connecting (yes/no/[fingerprint])? ”,输入 “yes” 回车即可。


再次执行 ssh localhost,不会有上次的提醒,直接输入远程登陆的账户的密码即可。





2. ssh: connect to host localhost port 22: Connection refused
ssh: connect to host localhost port 22: Connection refused。(不能够连接到本地主机端口22, 连接被拒绝)


这种情况(在可以正常上网的前提下)的原因可能是 openssh-server 未启动或未安装。


此时执行:sudo /etc/init.d/ssh start 如果提示“已启动”,这时可正常执行 ssh localhost。
如果提示 “找不到此文件或命令” 那么根据前面的步骤先安装、再启动 openssh-server,最后执行 ssh localhost。


使用 SSH 客户端工具远程连接
终端运行运行以下命令,查看 IP 地址:


bash
# 采用 NAT 桥接网络模式,在使用 ifconfig 查看ip前,需要执行以下命令,
# 用 dhcp 服务获取 ip 地址
sudo dhclient -v
# 查看 ip 地址
ifconfig
sudo dhclient -v 获取 ip 地址
sudo dhclient -v 获取 ip 地址



SSH 客户端 可以使用 VMWare 自带工具 或 Xshell. 将 上面得到的 ip 地址在 SSH 客户端 配置即可。


Xshell 远程连接 Ubuntu 20.04
VMWare 自带 SSH 客户端 远程连接 Ubuntu 20.04
openssh-server 的彻底卸载
bash
# 卸载并删除配置文件
sudo apt-get purge openssh-server

打赏鼓励作者,期待更多好文!

打赏
暂无人打赏

gqce 发表于 2020-11-5 10:12
  
感谢分享
一一氵 发表于 2020-11-8 16:18
  
ssh -V 不能用来验证 openssh-server 是否安装
小鱼儿 发表于 2023-8-23 10:48
  
每天学习一点点,每天进步一点点
唐三平 发表于 2023-8-23 10:50
  
每天学习一点点,每天进步一点点
小西北 发表于 2023-8-23 10:56
  
每天学习一点点,每天进步一点点
鲤鲤 发表于 2023-8-23 10:57
  
每天学习一点点,每天进步一点点
小德 发表于 2023-8-23 11:03
  
每天学习一点点,每天进步一点点
日出 发表于 2023-8-23 11:05
  
每天学习一点点,每天进步一点点
德德 发表于 2023-8-23 11:15
  
每天学习一点点,每天进步一点点
发表新帖
热门标签
全部标签>
每日一问
每周精选
技术笔记
技术盲盒
2024年技术争霸赛
产品连连看
2023技术争霸赛专题
干货满满
技术咨询
标准化排查
新版本体验
通用技术
技术晨报
功能体验
自助服务平台操作指引
文档捉虫活动
信服课堂视频
秒懂零信任
GIF动图学习
答题自测
每日一记
运维工具
SDP百科
技术圆桌
排障笔记本
专家问答
在线直播
安装部署配置
测试报告
解决方案
项目案例
存储
技术争霸赛
卧龙计划
畅聊IT
MVP
网络基础知识
升级
安全攻防
上网策略
日志审计
问题分析处理
流量管理
云计算知识
用户认证
原创分享
sangfor周刊
VPN 对接
SANGFOR资讯
专家分享
技术顾问
信服故事
功能咨询
终端接入
授权
设备维护
资源访问
地址转换
虚拟机
迁移
加速技术
产品预警公告
玩转零信任
信服圈儿
S豆商城资讯
「智能机器人」
追光者计划
深信服技术支持平台
社区帮助指南
答题榜单公布
纪元平台
华北区拉练
天逸直播
以战代练
山东区技术晨报
齐鲁TV
华北区交付直播
北京区每日一练

本版达人

新手89785...

本周建议达人

新手78183...

本周分享达人