【综合架构】Part 4 SSHD服务

目录

[1 openssh 特点](#1 openssh 特点)

[2 Telnet vs Openssh](#2 Telnet vs Openssh)

[3 Openssh - server 配置文件](#3 Openssh - server 配置文件)

[4 Openssh - client 客户端](#4 Openssh - client 客户端)


1 openssh 特点

  • 实现加密的远程连接/数据传输
  • openssh-server 服务器 (sshd, /etc/sshd_config)
  • openssh-client 客户端命令 (scp, ssh)

2 Telnet vs Openssh

|------------|------|---------|-----------------------------|
| | 共同点 | 区别 | 应用场景 |
| openssh 服务 | 远程连接 | 数据是加密的 | 默认使用openssh |
| telnet 服务 | 远程连接 | 数据是未加密的 | 升级 openssh 服务时,启动 telnet 服务 |

安装 Telnet 服务

步骤 1 :安装服务

bash 复制代码
yum install -y telnet-server

步骤 2 :启动服务,关闭自启动

bash 复制代码
systemctl disable telnet.socket

systemctl start telnet.socket

步骤 3 :连接设备

bash 复制代码
telnet root@10.0.0.41

3 Openssh - server 配置文件

3.1 核心文件位置

bash 复制代码
/etc/ssh/sshd_config

3.2 配置详解

|-------------------------|-----------------------------------------------------------------------------------|
| 连接加速 ||
| UseDNS no | 是否开启反向解析:ip 向 域名或主机名 |
| GSSAPIAuthentication no | GSS 认证功能关闭 |
| 安全优化项目 ||
| Port | 默认是Port 22 端口范围1-65535 推荐1w以上的端口 |
| PermitRootLogin | 禁用 root 用户远程登录权限. 默认是 yes(能让root远程登录)(ubt系统中默认是no)使用建议:先添加普通用户配置sudo权限,然后再禁用. |
| ListenAddress | 监听的地址(后面需要指定本地网卡的ip地址) 可以控制用户只能通过内网访问,应用建议:一般配合着堡 垒机,vpn. |

操作建议:未来可以设置公网的端口与局域网端口不同(内外网端口分离)。

bash 复制代码
#表示ssh都可以使用 52113 无论局域网还是公网
ListenAddress  0.0.0.0:52113

#表示ssh只有在 172.16.1.61 局域网可以使用22端口
ListenAddress  172.16.1.61:22

ssh  root@172.16.1.61
ssh -p 52113 root@10.0.0.41 
ssh -p 22  root@10.0.0.41

4 Openssh - client 客户端

4.1 命令介绍

  • scp 远程传输文件
  • ssh 远程连接
  • sftp 远程传输文件(一般开发通过图形化界面使用ftp工具)

4.1.1 scp

复制代码
格式:"scp    文件/目录    用户名@ip:路径"

-r    递归传输,传输目录
-p    保持属性信息不变
-P    指定端口号 

#范例
scp  -rp -P 22 /etc/hostname  root@10.0.0.41:/tmp/

4.1.2 ssh

功能:

  1. 远程连接
  2. 远程连接并执行命令或者脚本(不要执行交互式命令)
复制代码
# 案例1:使用普通用户远程连接到10.0.0.41的22端口
ssh -p 22  cherry@10.0.0.41

# 案例02:使用普通用户远程连接到10.0.0.41的22端口并执行 whoami 命令或 ip a 命令
ssh -p 22  oldboy@10.0.0.41  whoami

# 案例3:远程连接10.0.0.31节点并执行多条命令:whoami , pwd, hostname命令
ssh -p22  nfs01  "whoami  pwd  hostname -I "
ssh -p22  nfs01  "whoami ; pwd ; hostname -I   "

注意:"&&" 并且,命令行中表示前一个命令执行成功再执行后面的命令。
";" 分号,分隔命令,相当于是1行的结束。

4.1.3 sftp

  • ftp 文件传输协议,服务和客户端,服务端端口是21和20。
  • openssh (sshd)也提供了 ftp 功能,sftp端口是22。
  • ftp 客户端:常用 sftp 命令,软件xftp、winscp....

Tips:如果上传文件过大还是建议适应 ftp 或者 scp。

相关推荐
HLC++12 小时前
Linux的进程间通信
android·linux·服务器
华清远见IT开放实验室13 小时前
实验室建设案例 | 石家庄科技信息职业学院嵌入式实验室——从底层硬件到系统应用,一所应用型高校的嵌入式人才培养这样落地
linux·arm开发·stm32·嵌入式硬件·高校·实验室建设
groundhappy15 小时前
idalib安装和codex ida-mcp配置
linux·开发语言·python
通信小小昕16 小时前
Ubuntu 26.04 中文输入法安装
linux·运维·ubuntu
张小姐的猫17 小时前
【Linux】网络编程 —— HTTP协议(上)
linux·运维·服务器·网络·http·单例模式·策略模式
栩栩云生17 小时前
AI 写代码犯的错,早被写进了错题集
linux·安全·ai编程
imc.1119 小时前
linux基础IO
linux·运维·服务器
BelongPanda21 小时前
Linux Nginx 纯手动 Let‘s Encrypt 泛域名证书配置教程
linux·nginx
酷可达拉斯21 小时前
Linux操作系统-shell编程(0)
linux·运维·服务器·python·云计算
2301_7779983421 小时前
Linux中断机制:操作系统如何高效运行
linux·运维·服务器