Open SSH服务配置

OpenSSH是Secure SHell(安全外壳协议,简称SSH)协议的免费开源实现1。它提供了服务端后台程序和客户端工具,用来加密远程控制和文件传输过程中的数据,并由此来代替原来的类似服务,如rlogin、rsh、rcp以及telnet等1。

一、功能特点

  1. 安全连接
    • 加密客户端与服务器之间的所有流量,从而遏止窃听、连接劫持和其他攻击。可以在远程系统上安全地运行shell,无论是在Linux系统之间,还是适用于Windows Server 2019、Windows 10(版本1809及更高版本)或Windows Server 2022等Windows系统与其他系统之间的连接等情况1。
  2. 多种功能用途
    • 远程登录:如果在可提供ssh服务的远程Linux系统中拥有用户帐户,ssh是通常用来远程登录到该系统的命令,并且ssh命令也可用于在远程系统中运行命令1。
    • 文件传输:支持远程拷贝文件。例如,可以将本地文件拷贝到远程主机(使用scp命令,如root@localhost\~#scpanaconda - ks.cfg root@192.168.112.131:/tmp,输入远程主机密码后即可完成传输),也可以将远程主机文件拷贝到本地(如root@localhost\~#scproot@192.168.112.130:/tmp/anaconda - ks.cfg/root )2。
    • 端口转发:其他任何TCP/IP连接都可以通过SSH安全地进行隧道/转发1。

二、工作模式 OpenSSH基于C/S(客户端/服务器)工作模式,有两种认证方式:口令认证和基于密钥的认证(密钥)1。

三、安装(以CentOS系统为例)

  1. 服务器端安装
    • 需要安装openssh - server,因为它是服务器端与客户端核心文件2。
  2. 客户端安装
    • 需要安装openssh - clients。如果一台机器既要做客户端又要做服务器端,就需要在该系统中安装openssh、openssh - clients、openssh - server这三个软件包;CentOS7中默认已安装好上述三个软件包。可以通过root@localhost\~#yum search openssh命令找到这些软件,再使用root@localhost\~#yuminstallopenssh.x86_64命令安装相关软件2。

四、使用示例

  1. 远程登陆主机
    • 远程主机登陆(首次登陆):例如在hadoop@localhost\~$下执行ssh 192.168.112.130,首次登陆时会提示确认主机真实性(The authenticity of host '192.168.112.130(192.168.112.130)' can't be established. ECDSA key fingerprint is ff:7b:94:49:f5:2d:d3:59:23:c7:a8:cf:b0:d6:e4:b9. Are you sure you want to continue connecting(yes/no)?),输入yes后输入密码即可登陆,再次登陆不会有这个提示,并且主机信息会被添加到已知主机列表(Warning: Permanently added '192.168.112.130'(ECDSA) to the list of known hosts.)2。
    • 指定用户名登陆:如hadoop@localhost home$ssh - lroot192.168.112.130,然后输入密码即可登陆2。
  2. 远程拷贝
    • 本地文件拷贝到远程主机:例如root@localhost\~#scpanaconda - ks.cfg root@192.168.112.131:/tmp,输入远程主机密码后即可将本地文件anaconda - ks.cfg 拷贝到远程主机的/tmp目录下2。
    • 远程主机文件拷贝到本地:例如root@localhost\~#scproot@192.168.112.130:/tmp/anaconda - ks.cfg/root ,输入远程主机密码后即可将远程主机/tmp目录下的anaconda - ks.cfg 文件拷贝到本地的/root目录下2。
  3. 免密远程登陆及免密远程拷贝设置
    • 在A计算机root用户的命令行输入ssh - keygen--trsa,生成密钥对(适用于想要设置免密操作的情况)2。

telnet服务使用21号端口,明文传输信息

ssh服务使用22号端口,密文传输信息

配置服务实验

1,分别查看试验机IP地址

客户端

服务端

2,在客户端检测双方连通性

3,密码认证进行登录

4,密钥认证

客户端生成密钥对

  1. 对称加密:两公钥/两私钥
  2. 非对称加密:一公钥一私钥(默认是rsa非)

客户端将公钥上传给服务器

客户端使用私钥和服务器的公钥进行匹配

5,在服务端禁用root登录

修改配置文件

修改第38行被注释的命令

重启sshd服务

在客户端上测试登录服务端

6,主机文件上传与下载

下载 scp 可选参数 file_source file_target

scp local_file remote_username@remote_ip:remote_folder

声明:部分内容来自于网络,如有侵权联系删除

相关推荐
广州浮点FLOATLIC37 分钟前
许可证服务器迁移后软件打不开:研发 IT 怎样定位连接问题
linux·服务器·数据库
IT研究所1 小时前
AI-ITR平台如何减少客户问题反复升级?
大数据·运维·人工智能·低代码·自然语言处理·安全架构·企微
BLUcoding1 小时前
接口服务公网超时排查记录:SecureRandom 阻塞问题分析与解决
java·linux·springboot·aes·securerandom
AIgorithmGEEK1 小时前
[Linux]从手写报头到内核套路:序列化、反序列化与自定义协议全链路
linux·运维·服务器·网络·序列化·反序列化
Nil2081 小时前
leetcode 139单词拆分
linux·运维·服务器
Starry-sky(jing)1 小时前
BUG: unable to handle kernel paging request 完整排查:dmesg 四要素与三路定罪
linux·运维·服务器·内核·排障
mounter6251 小时前
从硬件互连到操作系统变革:CXL 技术演进与 Linux 内核工程挑战
linux·运维·服务器
zhengqweasd1 小时前
机房托管服务器怎么选硬盘,机械盘和 SSD 托管场景差异
运维·服务器·github
xh didida3 小时前
Linux -- 基础IO
linux·服务器·开发语言·c++