Centos下的OpenSSH服务器和客户端

devtools/2024/12/26 0:52:12/

目录

1、在 IP地址为192.168.98.11的Linux主机上安装OpenSSH服务器

2、激活OpenSSH服务,并设置开机启动;

3、在IP地址为192.168.98.33的Linux主机上安装OpenSSH客户端,使用客户端命令(ssh、scp、sftp)访问服务器

4、为了避免客户端访问服务器时需输入口令的繁琐,改用基于密钥的认证方式;

5、将OpenSSH服务器的监听端口从22改为2222;

6、只允许IP地址为192.168.98.1(Windows主机)和192.168.98.33(Linux主机)的ssh客户端访问OpenSSH服务器

1、在 IP地址为192.168.98.11的Linux主机上安装OpenSSH服务器

# opensssh服务端
yum install -y openssh-server
# openssh客户端
yum install -y openssh

2、激活OpenSSH服务,并设置开机启动;

systemctl start sshd
systemctl enable sshd       # 设置开机自启动
systemctl status sshd       # 查看sshd服务状态

3、在IP地址为192.168.98.33的Linux主机上安装OpenSSH客户端,使用客户端命令(ssh、scp、sftp)访问服务器

ssh -p 22 root@192.168.98.11                    # ssh远程登录,输入密码
# 默认端口为22# scp [本地|远程] [本地|远程]                 # scp实现本地|远程到本地|远程scp -r root@192.168.98.11/:test1 root@192.168.98.11:/test1# !!!注意加:号
# 本地和远程的区别是是否加user和addr
# -r 是递归式复制--指的是当要复制的目录下 存在子目录,且子目录中存在子目录或文件的时候,将逐一复制它们。不递归则只有空目录sftp root@192.168.98.11                        # ssh一定要携带username,否则是当前本机用户名

4、为了避免客户端访问服务器时需输入口令的繁琐,改用基于密钥的认证方式;

密钥登录的过程

SSH 密钥登录分为以下的步骤。

预备步骤,客户端通过ssh-keygen生成自己的公钥和私钥。

第一步,手动将客户端的公钥放入远程服务器的指定位置。

第二步,客户端向服务器发起 SSH 登录的请求。

第三步,服务器收到用户 SSH 登录的请求,发送一些随机数据给用户,要求用户证明自己的身份。

第四步,客户端收到服务器发来的数据,使用私钥对数据进行签名,然后再发还给服务器

第五步,服务器收到客户端发来的加密签名后,使用对应的公钥解密,然后跟原始数据比较。如果一致,就允许用户登录。

# 在客户端生成自己的公钥和密钥,密钥存放在~/.ssh/id_rsq,公钥存放在~/.ssh/id_rsa.pub
ssh-keygen -t rsa# 这里保持默认就可以了
Generating public/private rsa key pair.
Enter file in which to save the key (/home/langxi/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/langxi/.ssh/id_rsa.
Your public key has been saved in /home/langxi/.ssh/id_rsa.pub.# OpenSSH 自带一个ssh-copy-id命令,可以自动将公钥拷贝到远程服务器的~/.ssh/authorized_keys文件。
# 如果~/.ssh/authorized_keys文件不存在,ssh-copy-id命令会自动创建该文件。ssh-copy-id root@192.168.98.11
root@192.168.98.11's password: 
# 在输入一次密码就可以了# 再尝试登录,就不需要输入密码了
ssh root@192.168.98.11

5、将OpenSSH服务器的监听端口从22改为2222;

# 修改/etc/ssh/sshd_config文件,将Port项的注释取消掉,将22修改为2222vi /etc/ssh/sshd_config
Port 2222# 客户端访问时,就需要加上-p参数了,因为默认端口已经改变
ssh -p 2222 root@192.168.98.11

6、只允许IP地址为192.168.98.1(Windows主机)和192.168.98.33(Linux主机)的ssh客户端访问OpenSSH服务器

# 修改/etc/hosts.deny
vi /etc/hosts.deny
# 加入行
sshd:ALL# 尝试访问被拒绝
ssh -p 2222 root@192.168.98.11
ssh_exchange_identification: read: Connection reset by peer# 修改/etc/hosts.allow
vi /etc/hosts.allow
sshd : 192.168.98.1, 192.168.98.33# 此时可访问成功
ssh -p 2222 root@192.168.98.11
Last login: Sun Dec 22 20:36:16 2024 from 192.168.98.33


http://www.ppmy.cn/devtools/145400.html

相关文章

负载均衡-lvs

负载均衡集群 1、集群是什么? 1 集群(cluster)技术是一种较新的技术,通过集群技术,可以在付出较低成本的情况下获得在性能、可靠性、灵活性方面的相对较高的收益,其任务调度则是集群系统中的核心技术。 …

FPGA 第13讲 计数器

时间:2024.12.14 一、学习内容 1.计数器 计数是一种最简单基本的运算,计数器就是实现这种运算的逻辑电路,计数器在数字 系统中主要是对脉冲的个数进行计数,以实现测量、计数和控制的功能,同时兼有分频功 能。 计数器在数字系统中应用广泛,如在电子计算机的控制器中对指…

微服务openfeign配置重试机制

场景: 1、在实际开发中,通过feign调用其他服务,如果出现read-timeout超时、或调用出现异常 2、如上问题,有时候可能是网络速度、网路抖动等原因导致超时异常,并非程序本身错误,所以可以配置openfeign重试…

什么是单例模式

单例模式就是 只有一个 不能存在多个 饿汉式单例模式 实现方式: 这种模式在程序启动或单例类被加载时就创建好实例。例如,以下是一个简单的 C 实现的饿汉式单例类,用于记录日志(假设这个日志类在整个程序中有且仅有一个实例&#…

GitHub 桌面版配置 |可视化界面进行上传到远程仓库 | gitLab 配置【把密码存在本地服务器】

🥇 版权: 本文由【墨理学AI】原创首发、各位读者大大、敬请查阅、感谢三连 🎉 声明: 作为全网 AI 领域 干货最多的博主之一,❤️ 不负光阴不负卿 ❤️ 文章目录 桌面版安装包下载clone 仓库操作如下GitLab 配置不再重复输入账户和密码的两个方…

使用Python实现智能家居控制系统:开启智慧生活的钥匙

友友们好! 我的新专栏《Python进阶》正式启动啦!这是一个专为那些渴望提升Python技能的朋友们量身打造的专栏,无论你是已经有一定基础的开发者,还是希望深入挖掘Python潜力的爱好者,这里都将是你不可错过的宝藏。 在这个专栏中,你将会找到: ● 深入解析:每一篇文章都将…

架构师应如何考虑重构

目录 重构的目的、时机、难点 1.1重构的目的 1.2何时重构 1.2.1 添加新功能的时候对周边历史进行小型重构 1.2.2 cide review 时 1.2.3 有计划有目的的重构 1.2.5 何时不该重构 1.3、重构的难点 1.3.1 保证重构前后行为一致。 1.3.2 减少出现问题带来的影响 1.4 常见的重构…

React中常用的钩子

在当今,React的钩子写法已经逐渐成为了一种主流开发模式,本文将介绍几种在React中常用的钩子 useState 可以用来双向绑定,创建需要监听变化并且使用的数据 使用该钩子定义时,参数可以是一个直接定义好的变量,也可以是…