ssh 管理 linux登录远程服务器
使用 ssh 免秘登录方式
(还可以使用 ssh-agent 缓存密码)
客户端:
1. 生成公钥和私钥
ssh-keygen
一般不需要对私钥设置口令(passphrase),如果担心私钥的安全,这里可以设置一个。
运行结束以后,在$HOME/.ssh/目录下,会新生成两个文件:id_rsa.pub和id_rsa
2.将公钥传送到远程主机 host上面
ssh-copy-id user@host -p port
附:复制到剪切板,可以粘贴到 github 的方法
$ sudo apt-get install xclip
# Downloads and installs xclip. If you don't have `apt-get`, you might need to use another installer (like `yum`) $ xclip -sel clip < ~/.ssh/id_rsa.pub
# Copies the contents of the id_rsa.pub file to your clipboard
3.配置 ssh 连接信息
vim $HOME/.ssh/config
写入相关参数
Host demohost
HostName 198.93.47.225
User root
Port 2782
IdentityFile ~/.ssh/id_rsa
编辑该文件权限
chmod 600 $HOME/.ssh/config
4.就 ssh信息添加到代理中
ssh-add
5.登录
ssh demohost
6.利用 scp传输文件
scp -P /home/lg/Documents/Project/PycharmProjects/GroupBot/abc.ini root@182.93.57.215:/root
7.sftp 传输文件
$ sftp demohost
sftp> get Documents/1.txt /home/lg/Documents/
ssh 原理
1.生成一对公钥与私钥对(可以在客户端直接生成,也可以在其它地方生成)
ssh-keygen
2,客户端配置该私钥存放路径
Host book
HostName 139.97.102.212
User root
Port 22
IdentityFile ~/.ssh/book_solr.pem
3.服务器配置该公钥的内容保存到 ~/.ssh/authorized_keys 文件中
ssh-copy-id user@host -p port
4.前三步配置好了之后,客户端向服务器第一次发请求,会返回服务端的公钥并要求你确定。确定后,客户端拿到该公钥并保存到 know_hosts 中(可设置 StrictHostKeyChecking=no,会自动添加,不必手动确认)。
5.安全保证
公钥的两层作用(加密与验签)
数据加密:客户端向服务器发送信息(使用服务端公钥加密);服务器向客户端发送信息(使用客户端公钥加密的)。
验证签名:客户端使用私钥加密签名信息,服务端通过 authorized_keys 中的公钥解密并验签确保客户端来源的安全。
通过腾讯云工具生成一对公私钥,将私钥保存到客户端,公钥保存在服务器,登录时将加密消息通过私钥签名,腾讯云通过列表中的公钥验证签名正确,开始解密你的消息。
这里最重要的是签名,即便数据没有加密,只要你签名不对,你也是无法操作服务器的。
ssh 管理 linux登录远程服务器的更多相关文章
- MAC下ssh免密码登录远程服务器
生成密钥.在终端下执行命令: ssh-keygen -t rsa 一路回车,各种提示按默认不要改,等待执行完毕.然后执行: ls ~/.ssh #可以看到两个密钥文件:id_rsa(私钥) id_rs ...
- linux SSH免密码登录远程服务器
背景:无密码登录,所谓的无密码登录其实是指通过证书认证的方式登录,使用一种‘公私钥’认证的方式来进行ssh登录 在linux系统中,ssh是远程登录的默认工具,因为该工具的协议使用了RSA/DSA的加 ...
- ssh免密码登录远程服务器(不采用securecrt登录)
http://blog.csdn.net/leexide/article/details/17252369 Linux/UNIX下使用ssh-keygen设置SSH无密码登录 标签: ...
- [整理]配置SSH密钥自动登录远程服务器
原理: 公钥私钥匹配通过验证,允许访问服务器. 简单步骤: 1.在本地创建一对密钥 2.将公钥传到需要访问的服务器上 3.将公钥放入服务器的authorized_keys,确保访问时能通过验证 4.本 ...
- 用Python写个自动ssh登录远程服务器的小工具
很多时候我们喜欢在自己电脑的终端直接ssh连接Linux服务器,而不喜欢使用那些有UI界面的工具区连接我们的服务器.可是在终端使用ssh我们每次都需要输入账号和密码,这也是一个烦恼,所以我们可以简单的 ...
- mac 使用iTerm2快捷登录远程服务器
mac 使用iTerm2快捷登录远程服务器 正常使用ssh登录服务器: ssh -p port user@host user@host's password: 输入端口,用户名,服务器ip地址后,还需 ...
- ssh免密连接远程服务器
ssh免密连接远程服务器 借助ssky-keygen和ssh-copy-id工具,通过4个简单的步骤实现无需输入密码登录远程Linux主机 1 生成密钥 通过内置的工具生成RSA算法加密的密钥 ssh ...
- Windows如何快速远程到另一台Windows并管理多个远程服务器
Windows如何远程到另一台 Windows管理多个远程服务器 Windows第三方远程管理工具 准备远程机器 开启远程机器的远程桌面功能 首先在此电脑(我的电脑)图标上点击鼠标右键,选择" ...
- 利用ssh-copy-id无需密码登录远程服务器
本地机器生成公钥和私钥 ssh-keygen -t rsa 一路回车,最后会在~/.ssh目录下生成id_rsa和id_rsa.pub这两个文件. 与远程服务器建立信任机制 ssh-copy-id - ...
随机推荐
- (转)热空气扭曲效果shader
转自:http://blog.sina.com.cn/s/blog_89d90b7c0102vaqy.html 热空气扭曲在大自然中形成是比较复杂的,这里只是通过取屏幕纹理和移动UV来模拟热扭曲效果. ...
- XMAL定义后台数据
头部调用程序集xmlns:sys="clr-namespace:System;assembly=mscorlib" <Window.Resources><!--定 ...
- CentOS 7搭建Linux GPU服务器
1. CUDA Toolkit的安装 到https://developer.nvidia.com/cuda-gpus查询GPU支持的CUDA版本: 到https://developer.nvidia. ...
- hihocoder第238周:杨氏矩阵的个数
题目链接 问题描述 给定一个N行M列的矩阵,往里面填入$1-N\times M$个数字,使得这个矩阵每行.每列都满足递增.问:有多少种填法? 问题分析 这个问题很难,如果能够直接想到,那就是天才了. ...
- OkHttp踩坑记:为何 response.body().string() 只能调用一次?
想必大家都用过或接触过 OkHttp,我最近在使用 Okhttp 时,就踩到一个坑,在这儿分享出来,以后大家遇到类似问题时就可以绕过去. 只是解决问题是不够的,本文将 侧重从源码角度分析下问题的根本, ...
- Homebrew macOS 包管理
1.Homebrew 简介 1.1 Homebrew Homebrew 是一款 macOS 平台下的软件包管理工具,拥有安装.卸载.更新.查看.搜索等很多实用的功能.简单的一条指令,就可以实现包管理, ...
- nodeJs--模块module.exports与实例化方法
在nodejs中,提供了exports 和 require 两个对象,其中 exports 是模块公开的接口,require 用于从外部获取一个模块的接口,即所获取模块的 exports 对象.而在e ...
- lua -- 所有UI组件的基类
-- 组件行为基础 local Behavior = class("Behavior"); function Behavior:ctor(name) self.owner = ni ...
- Maven使用详解,非常详细
本文转:http://blog.csdn.net/u010425776/article/details/52027706 什么是Maven? 如今我们构建一个项目需要用到很多第三方的类库,如写一个使用 ...
- 【Jetty】Jetty 的工作原理以及与 Tomcat 的比较
Jetty 应该是目前最活跃也是很有前景的一个 Servlet 引擎.本文将介绍 Jetty 基本架构与基本的工作原理:您将了解到 Jetty 的基本体系结构:Jetty 的启动过程:Jetty 如何 ...