ssh远程管理服务

什么是ssh

SSH是一种加密的网络协议,用于在不安全的网络中安全地传输数据。它允许用户通过一个安全的通道连接到远程计算机,并在该通道上执行各种网络服务,例如远程登录和文件传输。
SSH使用公钥加密技术来验证远程计算机的身份,并使用对称加密技术来保护数据传输的机密性

telnet与ssh的区别:

telnet:不安全,没有对传输数据进行加密,容易被监听,还有遭受中间人攻击,telnet不能压缩传输数据,所以传输慢
ssh:对数据进行了加密,安全度高,ssh传输数据经过压缩,所以传输速度比较快

配置秘钥

1.进入linux系统里家目录的.ssh目录下


root用户是/root/.ssh,普通用户是/home/您的用户名/.ssh,我们以root用户为例:

#cd .ssh #如果没有 自己创建 权限700

2.执行ssh-keygen命令创建密钥对

ssh-keygen -t rsa -b 2048

参数解析

-b 参数,指定了长度,也可以不加-b参数,直接使用ssh-keygen -t rsa


执行密钥生成命令,基本上是一路回车既可以了,但是需要注意的是:执行命令的过程中是会提示呢输入密钥的密码的,不需要密码直接回车就行。

密钥生成后会在当前目录下多出两个文件,id_rsa和id_rsa.pub,其中id_rsa是私钥(敲黑板:这个很重要,不能外泄),id_rsa.pub这个是公钥

3.创建 authorized_keys 权限为600

chomd 600 authorized_keys


4.将 [公钥]累加到此文件authorized_keys 中

cat id_rsa.pub >> authorized_keys


5.修改sshd的配制文件

#vim /etc/ssh/sshd_config

  • PasswordAuthentication no 关闭密码输入 (默认yes)
​保存退出后重启sshd服务

systemctl restart sshd

设置完成后即可仅使用秘钥登录服务器

服务器中开放端口

背景说明

Centos 系统默认 ssh 连接端口是 22 ,在一些特定的条件中,22 端口被禁用或者被屏蔽,因而无法使用 22 端口进行 ssh 连接,此时把 22 端口映射为其他端口进行 ssh 连接、访问。

注:修改端口也是在sshd的配制文件当中
修改后取消注释重启sshd服务即可生效

安装ssh客户端连接

1.将id_rsa 私钥下载到本地

  • 把生成的 /root/.ssh/id_rsa 文件下载到本地电脑

修改端口以后远程连接

修改端口以后远程连接 -p 端口名 远程拷贝-P 端口名


免密互信
生成密钥对后

ssh-copy-id 对方ip #将公钥给到需要免密登录的ip

连接
# ssh -p端口 用户@IP地址 ​
改主机名

hostnamectl set-hostname 新名称

bash


查看主机名
hostname

主机名解析

vim /etc/hosts

ip+主机名

访问限制

tcppwrapper允许访问

vim /etc/hosts.allw

sshd:IP地址 #默认允许

vim /etc/hosts.deny拒绝访问

sshd:IP地址 |ALL #禁止某ip远程链接,ALL代表所有人
注:如果同个ip同时写入这两个访问限制文件中,优先识别允许

远程拷贝

scp 文件名 对方登录系统的用户名@对方ip地址:目标位置

scp 对方登录系统的用户名@对方ip地址:目标位置名称 自己计算机的目标路径

感谢观看!希望能够帮助到大家!

相关推荐
优化Henry9 分钟前
TDD-LTE站点Rilink=3链路故障处理案例---BBU侧C口“有发光、无收光”的排查与恢复
运维·网络·信息与通信·tdd
浪客灿心10 分钟前
Linux网络传输层协议
linux·运维·网络
belldeep25 分钟前
本草纲目:如何应用 PostgreSQL 实现【中医药】主题数据库 ?
数据库·postgresql·本草纲目
Bert.Cai36 分钟前
MySQL CURTIME()函数详解
数据库·mysql
Bert.Cai37 分钟前
MySQL CURDATE()函数详解
数据库·mysql
舟遥遥娓飘飘38 分钟前
Nexus4CC 手机电脑同步claude code对话部署教程(基于linux系统)
linux·智能手机·电脑
V搜xhliang024640 分钟前
OpenClaw科研全场景用法:从文献到实验室的完整自动化方案
运维·开发语言·人工智能·python·算法·microsoft·自动化
NGSI vimp1 小时前
MySQL|MySQL 中 `DATE_FORMAT()` 函数的使用
数据库·mysql
何妨呀~1 小时前
Firewalld防火墙端口配置
linux
秋91 小时前
MySQL8.0.46 与 MySQL8.4.9:跨越代际的深度差异解析与升级全指南
mysql