No.1. SSH(Secure Shell)安全外壳协议
  • 建立在应用层基础上的安全协议
  • 可靠,专为远程登录会话和其他网络服务提供安全性的协议
  • 有效防止远程管理过程中的信息泄漏问题
  • SSH客户端适用于多种平台
  • SSH服务器端几乎支持所有Unix平台
 
No.2. 服务器安装SSH服务(一般默认已安装)
  • 安装命令:yum -y install openssh-server
  • 启动命令:service sshd start
  • 设置开机运行命令:chkconfig sshd on
  • 查看ssh服务运行状态:ps -ef | grep ssh
 
No.3. 客户端安装SSH工具
  • SSH是典型的客户端和服务器端的交互模式,客户端广泛支持各种平台
  • Windows有很多工具支持SSH连接功能,例如:Xshell,Putty,secureCRT
  • Linux平台安装客户端软件的命令:yum -y install openssh-clients
 
No.4. SSH客户端连接SSH服务
  • 输入命令:ssh root@192.168.75.134
  • 输入密码,回车即可连接
 
No.5. SSH config 详解
  • config是为了方便客户端批量管理多个ssh远程连接
  • config存放在~/.ssh/config,一般没有这个文件,需要自行创建
  • 输入命令:cd ~/.ssh/
  • 输入命令:touch config
  • 输入命令:vim config
  • 编辑完成后内容如下:
  • 然后直接在客户端输入命令:ssh litejie,即可访问远程服务器,而不用 ssh root@47.104.251.169
  • SSH config语法关键字:Host(别名)、HostName(主机名)、Port(端口)、User(用户名)、IdentityFile(密钥文件路径)
 
No.6. SSH安全免密码登录:ssh key
  • ssh key使用非对称加密方式生成公钥和私钥
  • 私钥存放在本地~/.ssh目录
  • 公钥可以对外开放,放在服务器的~/.ssh/authorized_keys中
 
No.7. windows平台生成ssh key的方法:
  • 打开Xshell软件
  • 依次点击:Tools->User Key Manager->Generate
  • Key Type可以先择RSA或DSA,然后点击Next,然后再点击Next
  • 输入Key Name,Passphrase可以不输入
  • 点击Next
  • 点击Save as a file
  • 点击Save
  • 点击Finish
 
No.8. Linux平台生成ssh key的方法:
  • 输入命令:cd ~/.ssh/
  • 输入命令:ssh-keygen -t rsa
  • 输入Key Name回车
  • Passpharse可以不输入,直接回车
  • 生成完毕,输入命令ls,查看新生成的密钥文件
No.9. Windows平台下使用私钥和公钥的方法
  • 如果服务器端没有authorized_keys文件,先在服务器端创建一个authorized_keys文件:touch authorized_keys
  • 编辑authorized_keys文件,将生成的公钥信息复制到这个文件里面,并保存退出
  • 打开Xshell,依次点击:File->New
  • 输入Name和Host,然后点击左侧的Authorization,Method选择Public Key,然后输入下方的User Name,最后选择User Key,点击OK,再点击Connect,就可以直接实现远程登录
 
No.10. Linux平台下使用私钥和公钥的方法
  • 如果服务器端没有authorized_keys文件,先在服务器端创建一个authorized_keys文件:touch authorized_keys
  • 编辑authorized_keys文件,将生成的公钥信息复制到这个文件里面,并保存退出
  • 然后再客户端输入命令:ssh-add ~/.ssh/litejie_rsa加载私钥信息
  • 如果上一步失败,先执行一下命令:ssh-agent bash
  • 加载完私钥之后,直接输入 ssh 主机别名,即可实现对远程服务器免密登录
  • 但是后面三步每次都得执行一遍
 
No.11. SSH安全端口
  • 端口安全指的是尽量避免服务器的远程连接端口被不法分子知道,为此而改变默认服务端口号的操作
  • 修改SSH服务的默认端口:vim /etc/ssh/sshd_config
  • 修改如下内容
  • 上面这种配置效果可以同时监听两个端口
  • 重启服务:service sshd restart
  • 一般是不会修改SSH端口号的

第五十四篇 Linux相关——远程连接SSH的更多相关文章

  1. 第五十二篇 Linux相关——数据库服务MySQL

        No.1. MySQL基本操作 CentOS7默认安装mariadb数据库,先将其移除 移除命令:sudo yum -y remove mariadb-libs.x86_64 下载MySQL源 ...

  2. Linux:远程连接 SSH

    一.认识 SSH 定义 SSH(Secure shell):安全外壳协议:是建立在应用层基础上的安全协议: 通过 SSH 进行服务端连接,不容易被窃取信息: 连接服务器 ssh 服务器名 + @ + ...

  3. 五十四、linux 编程——TCP 编程模型

    54.1 编程模型介绍 54.1.1 TCP 客户端服务器编程模型 客户端调用序列 调用 socket 函数创建套接字 调用 connect 连接服务器端 调用 I/O 函数(read/write) ...

  4. 第五十四篇、OC利用AFN上传上传语音

    如果不是NSData就要想办法把语音文件转化为NSData,然后才能上传服务器. 首先我们拿到语音文件对应的NSData对象 NSData *voiceData = [message valueFor ...

  5. 第五十四篇:网络通信Axios

    好家伙,补充知识 1.什么是Axios? Axios可以在浏览器中发送 XMLHttpRequests Axios 是一个基于 promise 的 HTTP 库,简单的讲就是可以发送get.post请 ...

  6. Spring Cloud第十四篇 | Api网关Zuul

    ​ 本文是Spring Cloud专栏的第十四篇文章,了解前十三篇文章内容有助于更好的理解本文: Spring Cloud第一篇 | Spring Cloud前言及其常用组件介绍概览 Spring C ...

  7. 跟我学SpringCloud | 第十四篇:Spring Cloud Gateway高级应用

    SpringCloud系列教程 | 第十四篇:Spring Cloud Gateway高级应用 Springboot: 2.1.6.RELEASE SpringCloud: Greenwich.SR1 ...

  8. SpringBoot第二十四篇:应用监控之Admin

    作者:追梦1819 原文:https://www.cnblogs.com/yanfei1819/p/11457867.html 版权声明:本文为博主原创文章,转载请附上博文链接! 引言   前一章(S ...

  9. Egret入门学习日记 --- 第十四篇(书中 5.4~5.6节 内容)

    第十四篇(书中 5.4~5.6节 内容) 书中内容: 总结 5.4节 内容重点: 1.如何编写自定义组件? 跟着做: 重点1:如何编写自定义组件? 文中提到了重要的两点. 好,我们来试试看. 第一步, ...

随机推荐

  1. HDU1408 - 盐水的故事

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1408 解题思路:主要考虑最后一滴可能不满足D毫升,但仍算1秒.另外还要注意浮点数的比较. #inclu ...

  2. Spring Boot源码(三):去除Tomcat

    Spring boot中使用的是内置的Tomcat,而不像Spring mvc那样依赖外部tomcat运行项目. spring boot中导入了Tomcat的jar包: 点进一个Spring boot ...

  3. linux查看防火墙状态和对外开放的端口状态

    1.查看防火墙状态         查看防火墙状态 systemctl status firewalld         开启防火墙 systemctl start firewalld        ...

  4. PAT (Advanced Level) Practice 1152 Google Recruitment (20 分)

    In July 2004, Google posted on a giant billboard along Highway 101 in Silicon Valley (shown in the p ...

  5. Verilog-case、casez和casex的区别

    参考博客:https://www.cnblogs.com/guolongnv/articles/6906929.html 1.基本概念 1)?表示z,而不是“dont care” 2)区分: case ...

  6. Django上传excel表格并将数据写入数据库

    前言: 最近公司领导要统计技术部门在各个业务条线花费的工时百分比,而 jira 当前的 Tempo 插件只能统计个人工时.于是就写了个报表工具,将 jira 中导出的个人工时excel表格 导入数据库 ...

  7. 题解【AcWing10】有依赖的背包问题

    题面 树形 DP 的经典问题. 我们设 \(dp_{i,j}\) 表示当前节点为 \(i\),当前节点的子树(包含当前节点)最多装的体积是 \(j\) 的最大价值. 我们遍历节点的过程就相当于做了一遍 ...

  8. Selenium3+python自动化009- js之屏幕滑动和日历操作

    一.js的滑屏 1)以下脚本实现js滑屏scroll="document.documentElement.scrollTop=800"#垂直滚动 pxscroll = " ...

  9. 题解 CF409A 【The Great Game】

    题目传送门. 思路: 首先我们定义\(2\)个字符串,分别存放 TEAM 1 与 TEAM 2 的出招顺序.接着再定义\(2\)个变量,存放 TEAM 1 与 TEAM 2 的分数. string s ...

  10. CSS基础之浮动属性float图文详解

      宏观地讲,我们的web页面的制作,是个“流”,必须从上而下,像“织毛衣”.   标准流里面的限制非常多,导致很多页面效果无法实现.如果我们现在就要并排.并且就要设置宽高,那该怎么办呢?办法是:超脱 ...