第五十四篇 Linux相关——远程连接SSH
- 建立在应用层基础上的安全协议
- 可靠,专为远程登录会话和其他网络服务提供安全性的协议
- 有效防止远程管理过程中的信息泄漏问题
- SSH客户端适用于多种平台
- SSH服务器端几乎支持所有Unix平台
- 安装命令:yum -y install openssh-server
- 启动命令:service sshd start
- 设置开机运行命令:chkconfig sshd on
- 查看ssh服务运行状态:ps -ef | grep ssh
- SSH是典型的客户端和服务器端的交互模式,客户端广泛支持各种平台
- Windows有很多工具支持SSH连接功能,例如:Xshell,Putty,secureCRT
- Linux平台安装客户端软件的命令:yum -y install openssh-clients
- 输入命令:ssh root@192.168.75.134
- 输入密码,回车即可连接
- 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(密钥文件路径)
- ssh key使用非对称加密方式生成公钥和私钥
- 私钥存放在本地~/.ssh目录
- 公钥可以对外开放,放在服务器的~/.ssh/authorized_keys中
- 打开Xshell软件
- 依次点击:Tools->User Key Manager->Generate
- Key Type可以先择RSA或DSA,然后点击Next,然后再点击Next
- 输入Key Name,Passphrase可以不输入
- 点击Next
- 点击Save as a file
- 点击Save
- 点击Finish
- 输入命令:cd ~/.ssh/
- 输入命令:ssh-keygen -t rsa
- 输入Key Name回车
- Passpharse可以不输入,直接回车
- 生成完毕,输入命令ls,查看新生成的密钥文件
- 如果服务器端没有authorized_keys文件,先在服务器端创建一个authorized_keys文件:touch authorized_keys
- 编辑authorized_keys文件,将生成的公钥信息复制到这个文件里面,并保存退出
- 打开Xshell,依次点击:File->New
- 输入Name和Host,然后点击左侧的Authorization,Method选择Public Key,然后输入下方的User Name,最后选择User Key,点击OK,再点击Connect,就可以直接实现远程登录
- 如果服务器端没有authorized_keys文件,先在服务器端创建一个authorized_keys文件:touch authorized_keys
- 编辑authorized_keys文件,将生成的公钥信息复制到这个文件里面,并保存退出
- 然后再客户端输入命令:ssh-add ~/.ssh/litejie_rsa加载私钥信息
- 如果上一步失败,先执行一下命令:ssh-agent bash
- 加载完私钥之后,直接输入 ssh 主机别名,即可实现对远程服务器免密登录
- 但是后面三步每次都得执行一遍
- 端口安全指的是尽量避免服务器的远程连接端口被不法分子知道,为此而改变默认服务端口号的操作
- 修改SSH服务的默认端口:vim /etc/ssh/sshd_config
- 修改如下内容
- 上面这种配置效果可以同时监听两个端口
- 重启服务:service sshd restart
- 一般是不会修改SSH端口号的
第五十四篇 Linux相关——远程连接SSH的更多相关文章
- 第五十二篇 Linux相关——数据库服务MySQL
No.1. MySQL基本操作 CentOS7默认安装mariadb数据库,先将其移除 移除命令:sudo yum -y remove mariadb-libs.x86_64 下载MySQL源 ...
- Linux:远程连接 SSH
一.认识 SSH 定义 SSH(Secure shell):安全外壳协议:是建立在应用层基础上的安全协议: 通过 SSH 进行服务端连接,不容易被窃取信息: 连接服务器 ssh 服务器名 + @ + ...
- 五十四、linux 编程——TCP 编程模型
54.1 编程模型介绍 54.1.1 TCP 客户端服务器编程模型 客户端调用序列 调用 socket 函数创建套接字 调用 connect 连接服务器端 调用 I/O 函数(read/write) ...
- 第五十四篇、OC利用AFN上传上传语音
如果不是NSData就要想办法把语音文件转化为NSData,然后才能上传服务器. 首先我们拿到语音文件对应的NSData对象 NSData *voiceData = [message valueFor ...
- 第五十四篇:网络通信Axios
好家伙,补充知识 1.什么是Axios? Axios可以在浏览器中发送 XMLHttpRequests Axios 是一个基于 promise 的 HTTP 库,简单的讲就是可以发送get.post请 ...
- Spring Cloud第十四篇 | Api网关Zuul
本文是Spring Cloud专栏的第十四篇文章,了解前十三篇文章内容有助于更好的理解本文: Spring Cloud第一篇 | Spring Cloud前言及其常用组件介绍概览 Spring C ...
- 跟我学SpringCloud | 第十四篇:Spring Cloud Gateway高级应用
SpringCloud系列教程 | 第十四篇:Spring Cloud Gateway高级应用 Springboot: 2.1.6.RELEASE SpringCloud: Greenwich.SR1 ...
- SpringBoot第二十四篇:应用监控之Admin
作者:追梦1819 原文:https://www.cnblogs.com/yanfei1819/p/11457867.html 版权声明:本文为博主原创文章,转载请附上博文链接! 引言 前一章(S ...
- Egret入门学习日记 --- 第十四篇(书中 5.4~5.6节 内容)
第十四篇(书中 5.4~5.6节 内容) 书中内容: 总结 5.4节 内容重点: 1.如何编写自定义组件? 跟着做: 重点1:如何编写自定义组件? 文中提到了重要的两点. 好,我们来试试看. 第一步, ...
随机推荐
- VUE动画Javascript钩子不生效问题记录
举例小球动画如下 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...
- js返回时间差
function CalcTimeSub(endTime, startTime, type) { var bool = endTime == defaultDateTime || startTime ...
- 用 ArcMap 发布 ArcGIS Server Feature Server Feature Access 服务
1. 安装Desktop, 2. 安装ArcGIS Server 3. 安装PostgreSQL 9.5 从 C:\Program Files (x86)\ArcGIS\Desktop10.5\Dat ...
- 利用GRC进行安全研究和审计 – 将无线电信号转换为数据包(转)
0x00 介绍 InGuardians作为一家从事信息安全研究和咨询的公司,自创立以来不但关注着web应用的渗透测试,网络取证,嵌入式设备等领域也致力于无线网络的评估方法上面的研究.在期间无线网络评估 ...
- Python之旅第五天(习题集合)
4天时间,虽然上着班,但是学的东西还是有点多,而且晚上看的比较容易忘,所以今天是习题模式,正好教程也是这么要求的,本来以为时间不长,没想到还是很崩溃啊.不多说,上干货. #关于随机产生验证码同时验证用 ...
- 洛谷P1402 酒店之王(网络流)
### 洛谷P1402 题目链接 ### 题目大意:有 n 个人, p 间房间,q 种食物.每个人喜欢一些房间,一些食物,但每间房间.每种食物只能分配给一个人.问最大可以让多少个人满足(当且仅当分配到 ...
- ubuntu python 安装使用虚拟环境 virtualenv
1,虚拟环境是干啥用的? 我在电脑上装了cuda,显卡驱动,cudnn等一堆配套文件,然后又依赖于cuda和驱动安装了tensorflow2.0的gpu测试版,不知为何,我每次跑完tf2程序电脑都会卡 ...
- JS绑定事件处理函数及处理流程
一.事件绑定的几种方式: 1.1 ele.on+“事件名“:如div.onclick = function(event){ }; 1.1.1这种方式兼容性非常好,但一个元素的同一个事件上只能绑定一个处 ...
- 在Scala中免费验证
优锐课带你详细了解如何在Scala中实施免费的monad验证.抽丝剥茧,细说架构那些事! 由于业务数据的复杂性,已经在数据验证上花费了很多精力.在Scala中,提出了使用应用程序进行验证的方法,并被广 ...
- MySQL的操作数据库SQL语法
MySQL的操作数据库SQL语法 顺序:操作数据库 > 操作数据库中的表 > 操作数据库中的表的数据 MySQL不区分大小写字母 1. 操作数据库 1.创建数据库 2.删除数据库 3.使用 ...