当前位置: 首页 > news >正文

Linux 远程连接服务

远程连接服务器简介

什么是远程连接服务器

远程连接服务器通过文字或图形接口方式来远程登录系统,让你在远程终端前登录linux主机以取得可操 作主机接口(shell),而登录后的操作感觉就像是坐在系统前面一样。

远程连接服务器的功能

分享主机的运算能力

远程连接服务器的类型(以登录的连接界面来分类)

文字接口 明文传输:Telnet、RSH等,目前非常少用 加密传输:SSH为主,已经取代明文传输 图形接口:XDMCP、VNC、XRDP等

文字接口连接服务器 SSH(Secure Shell Protocol,安全的壳程序协议)它可以通过数据包加密技术将等待传输的数据包加密 后再传输到网络上。ssh协议本身提供两个服务器功能:一个是类似telnet的远程连接使用shell的服务 器;另一个就是类似ftp服务的sftp-server,提供更安全的ftp服务

SSH协议

概念介绍

SSH(Secure Shell),安全外壳协议,是一种建立在应用层基础上的安全协议,通过对密码进行加密传 输验证,可以在不安全的网络中对网络服务提供安全地传输环境,实现SSH客户端和SSH服务器的连接, 所以SSH是基于客户端-服务器模式。

功能作用

通过使用SSH,可以把所有传输的数据进行加密,这样“中间人”这种攻击方式就不可能实现,而且也能够 防止DNS欺骗和IP欺骗。还有一个好处就是,传输的数据是经过压缩的,所以可以加快传输的速度。 SSH有很多功能,它既可以替代Telnet,又可以为FTP、Pop,甚至为PPP提供和一个安全的“通道”。

服务组成

SSH服务由服务端软件OpenSSH和连接客户端(SSH、SecureCRT、xshell等)组成,默认端口是22。 SSH是一个守护进程,负责实时监听客户端请求,并进行处理。

协议握手流程

ssh常用加密方法

对称加密(密码加密)

非对称加密(密钥加密)

SSHD服务

 服务器

systemctl status sshd // 开启sshd守护进程管理

客户端 ssh 命令的用法

ssh -l root 172.25.254.100  //通过ssh命令在100主机中以root身份开启远程shell
  • -l :指定登陆用户
  • -i :指定私钥
  • -X :开启图形
  • -f :后台运行
  • -o :指定连接参数
  • -l :指定登陆用户
  • -i :指定私钥
  • -X:开启图形
  • -f :后台运行
  • -o :指定连接参数

ssh -l root@172.25.254.x -o "StrictHostKeyChecking=no" 首次连接不许要输入yes

-t :指定连接跳板

ssh -l root 172.25.254.1 -t ssh -l root 172.25.254.100

sshd ——守护进程管理

sshd服务的安全优化

非对称加密优化

生成密钥
  • Generating public/private rsa key pair.
  • Enter file in which to save the key (/root/.ssh/id_rsa): ##输入保存密钥文件
  • Enter passphrase (empty for no passphrase): ##密钥密码
  • Enter same passphrase again: ##确认密码
  • Your identification has been saved in /root/.ssh/id_rsa. ##私钥
  • Your public key has been saved in /root/.ssh/id_rsa.pub. ##公钥

注意:如果需要非交互生成密钥

[root@localhost 桌面]# ssh-keygen -f /root/.ssh/id_rsa -P ""
上传密钥到服务器
[root@localhost 桌面]# ssh-copy-id -i /root/.ssh/id_rsa.pub lee@172.25.254.105
其他常用安全优化参数
  • Port 2222 :设定端口为2222

  • PermitRootLogin yes|no :对超级用户登陆是否禁止

  • PasswordAuthentication yes|no :是否开启原始密码认证方式

  • AllowUsers lee :用户白名单

  • DenyUsers lee :用户黑名单

http://www.lryc.cn/news/498374.html

相关文章:

  • Docker 安装和使用
  • web基础和http协议 附:nginx服务的安装
  • springboot利用easypoi实现简单导出Excel
  • 【前端新手小白】学习Javascript的【开源好项目】推荐
  • CentOS7虚拟机 网络适配器 NAT模式和桥接模式区别
  • sql删除冗余数据
  • STM32-C语言基础知识
  • 【Point-LIO】基于Ubuntu20.04的ROS1平台的Point-LIO部署Mid-360激光雷达
  • 02_Node.js模块化
  • 网络——HTTP与HTTPS三次握手和四次挥手
  • ModelScope-Agent(1): 基于开源大语言模型的可定制Agent系统
  • 开发知识点-uniCloud
  • Redis——主从复制原理
  • MATLAB数学建模之画图汇总
  • Milvus attu - docker 使用 及 版本兼容
  • okHttp的tcp连接池的复用
  • nginx 自启动失败:Failed to parse PID from file: Invalid argument
  • Wwise SoundBanks内存优化
  • centos 常见问题处理
  • 简述Vue每个周期具体适合哪些场景?
  • Alibaba Druid(简称Druid)
  • linux protobuf的安装与使用
  • 关于Chrome自动同步书签的解决办法
  • 基于深度学习的甲状腺结节影像自动化诊断系统(PyQt5界面+数据集+训练代码)
  • docker常用操作命令
  • Android:生成Excel表格并保存到本地
  • JVM-程序计数器与栈
  • 【kotlin 】内联类(value class / inline class)
  • 【SpringBoot】使用IDEA创建SpringBoot项目
  • C++设计模式(原型、代理、适配器、组合)