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这个是公钥
ssh远程管理服务_第1张图片
 
3.创建 authorized_keys 权限为600

# chomd  600 authorized_keys
ssh远程管理服务_第2张图片

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

# cat id_rsa.pub >> authorized_keys
ssh远程管理服务_第3张图片

5.修改sshd的配制文件
#vim /etc/ssh/sshd_config

- PasswordAuthentication no  关闭密码输入 (默认yes)


​保存退出后重启sshd服务
# systemctl  restart  sshd
设置完成后即可仅使用秘钥登录服务器

ssh远程管理服务_第4张图片

服务器中开放端口

背景说明
Centos 系统默认 ssh 连接端口是 22 ,在一些特定的条件中,22 端口被禁用或者被屏蔽,因而无法使用 22 端口进行 ssh 连接,此时把 22 端口映射为其他端口进行 ssh 连接、访问。
注:修改端口也是在sshd的配制文件当中

修改后取消注释重启sshd服务即可生效

安装ssh客户端连接

1.将id_rsa 私钥下载到本地

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

ssh远程管理服务_第5张图片

修改端口以后远程连接

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

免密互信
生成密钥对后
# ssh-copy-id 对方ip     #将公钥给到需要免密登录的ip
连接
# ssh  -p端口 用户@IP地址 ​
改主机名
# hostnamectl set-hostname 新名称
# bash

查看主机名
 hostnamessh远程管理服务_第6张图片

主机名解析
# 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地址:目标位置名称  自己计算机的目标路径

ssh远程管理服务_第7张图片

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

你可能感兴趣的:(linux,运维,服务器,ssh,数据库,mysql)