ssh 远程连接详解--(linux运维09)
ssh远程连接
- 1. 概念介绍
- 2.ssh 原理
- 2.2 基于秘钥的连接过程
- 3. 基于秘钥连接的部署过程
- 3.1配置
- 3.2 多台服务器的配置(脚本)
- 3.2.1 几台主机的ip已知
- 4. ssh服务配置文件
- 4.1文件的一些中安要参数
- 4.2远程服务防范入侵案列
- 4.3 sftp参数详解
1. 概念介绍
1.ssh 安全的远程连接 数据信息是加密的 默认可以root用户连接 默认端口 22
2.telent 不安全的远程连接,数据信息是明文的 默认端口23
shell 每次连接登录到一个llinux中就是一个shell
2.ssh 原理
私钥:钥匙
公钥:锁头
1.客户端 执行远程连接命令
2.客户端服务端 建立三次握手的过程
3.服务端 让客户端进行确认是否接收到服务端的公钥
4.客户端 进行公钥的确认
5.服务端 让客户端确认登录的用户
6.客户端 进行密码信息的确认
7.客户端 服务端 远程连接成功
私钥和公钥的作用:对数据信息进行加密处理,进行用户身份的验证
ssh 远程连接的方式
a 基于口令的远程连接方式 比较麻烦 来接不太安全
b 基于秘钥的方式进行连接 安全方便
2.2 基于秘钥的连接过程
1. 客户端(管理端) 执行命令创建秘钥对
2. 客户端(管理端) 建立远程连接(口令),发送公钥信息
3. 客户端(管理端) 再次建立远程连接
4. 服务端(被管理端) 发送公钥质询信息(你要是能打开我的锁头吗)
5. 客户端(管理端) 处理公钥质询信息(钥匙将锁头打开),将质询结果返回给服务端
6. 服务端(被管理端) 接收到质询结果,建立好远程连接
3. 基于秘钥连接的部署过程
3.1配置
1.管理端创建密钥对信息
ssh-keygen -t dsa
2.管理端将公钥进行分发
ssh-copy-id -i /root/.ssh/id_dsa.pub root@172.16.1.31
3.远程连接测试
ssh 172.1.31
3.2 多台服务器的配置(脚本)
3.2.1 几台主机的ip已知
ssh-copy-id -i /root/.ssh/id_pub.dsa root@172.16.1.$ip
假若这种方式就会出现交互式的:需要输入密码才能发送
还要确认yes 或 no
端口号问题
1.安装 sshpass
yum -y install sshpass
2.解决免交互模式
sshpass -p123456 ssh-copy-id -i /root/.ssh/id_pub.dsa root@172.16.1.$ip
3.端口号问题 -p
sshpass -p123456 ssh-copy-id -i /root/.ssh/id_pub.dsa -p 22 root@172.16.1.$ip
4.yes提示
man ssh
/-o
StrictHostKeyChecking
sshpass -p123456 ssh-copy-id -i /root/.ssh/id_pub.dsa -p 22 root@172.16.1.$ip "-o StrictHostKeyChecking=no"
5.完整的脚本(默认的端口是22 不是则需要加上-p 端口号)
#!/bin/bashfor ip in 31 41
doecho "====================start fenfa 172.16.1.$ip===================="
sshpass -p123456 ssh-copy-id -i /root/.ssh/id_dsa.pub root@172.16.1.$ip "-o StrictHostKeyChecking=no" &>/dev/nullecho "=================host 172.16.1.$ip success!!!!=================="echo "==================== end ===================="
done
脚本的执行 (sh 文件名称)
sh fenfa_id.sh
检查是否成功
vim check_id.sh
#!/bin/bashfor ip in 31 41
doecho "====================check 172.16.1.$ip===================="ssh 172.16.1.$ip hostname echo "==================== end ===================="
done
6.假若有很多台服务器,并且ip地址没有规律(默认的端口是22 不是则需要加上-p 端口号)
创建一个文件
touch ip.txt
172.16.1.41
172.16.1.32
172.16.1.52
172.16.1.98
172.16.1.252
172.16.1.23
脚本:
#!/bin/bashfor ip in `cat /server/scripts/ip.txt`
doecho "====================start fenfa $ip===================="
sshpass -p123456 ssh-copy-id -i /root/.ssh/id_dsa.pub root@$ip "-o StrictHostKeyChecking=no" &>/dev/nullecho "=================host $ip success!!!!=================="echo "==================== end ===================="
done
4. ssh服务配置文件
4.1文件的一些中安要参数
/etc/ssh/sshd_config
port 22 端口号
ListenAddress 0.0.0.0 监听地址,能接受的远程访问请求指定的箭筒地址只能是本地网卡上有的地址PermitEmptyPasswords no 允许远程用户使用空密码进行连接,默认不允许
PermitRootLogin yes 不允许root用户进行远程连接
GSSAPIAuthentication no --- 是否开启GSSAPI认证功能 不用的时候关闭
UseDNS no --- 是否开启反向DNS解析功能 建议进行关闭
4.2远程服务防范入侵案列
1.使用秘钥登录,怒用密码登录
2.牤牛阵法
a 防火墙粉笔ssh
b 开启ssh只监听内网ip
3.尽量不给服务器的外网ip
4. 一个服务器的软甲安装最小化
5. 给系统的重要文件一个指纹,监控指纹即可 md5sum
6. 给他上锁 chattr +i
4.3 sftp参数详解
ls 查看远程ftp服务器信息
cd --- 查看远程ftp服务器信息
lls 查看本地ftp客户端信息
lcd --- 查看本地ftp客户端信息
get --- 下载信息
put --- 上传信息
help --- 查看命令帮助
bye --- 退出ftp连接
ssh 远程连接详解--(linux运维09)相关推荐
- 详解Linux运维工程师打怪升级篇
详解 Linux 运维工程师打怪升级篇 积累经验篇 做运维也快4年多了,就像游戏打怪升级,升级后知识体系和运维体系也相对变化挺大,学习了很多新的知识点. 运维工程师 是从一个呆逼进化为苦逼再成长为牛逼 ...
- 详解linux运维工程师入门级必备技能
it自动化运维就是要很方便的运用各种工具进行管理维护,有效的实施服务器保护 linux运维人员常用工具介绍 1.很多地方经常会用到的rsync工具 实施几台服务器的同步效果 我们公司就是使用这个工具完 ...
- 详解Linux运维工程师应具备的十大技能
Linux系统如果是学习可以选用Redhat或CentOS,特别是CentOS在企业中用得最多,当然还会有其它版本的,但学习者还是以这2个版本学习就行,因为这两个版本都是兄弟,没区别的,有空可以再研究 ...
- _linux中curl命令详解-linux运维
linux中curl命令的使用详情:1.[curl url]获取该网址的文本信息:2.[curl -i url]获取该网址的文本信息以及协议头部信息:3.[curl -x proxy url]使用代理 ...
- Linux运维09:ip命令详解
系列专题:Linux运维入门教程 Linux中的ip命令功能强大,可以完成接口配置.路由管理等任务. 1.ip与ifconfig的区别 Linux的ip命令和ifconfig类似,但前者功能更强大,并 ...
- linux下php远程连接mysql_Linux下PHP远程连接Oracle数据库 | 系统运维
说明: Web服务器环境:CentOS 5.8 32位+Nginx 1.2.3+Mysql 5.5.27+php 5.3.16 Web服务器IP:192.168.21.149 php源码编译目录:/u ...
- python编程入门与案例详解-Pythony运维入门之Socket网络编程详解
Socket是什么? Socket 是电脑网络中进程间数据流的端点Socket 是操作系统的通信机制应用程序通过Socket进行网络数据的传输 首先,简单了解一下TCP通信过程: TCP三次握手(面试 ...
- ssh远程连接不上linux
远程连接工具是:Xmanager Enterprise 5-->Xshell linux 发行版本是:CentOS-6.3-x86_64 问题:ssh一直都可以远程连接上linux,一段时间后突 ...
- 什么是 SRE?一文详解 SRE 运维体系
可观测性系统 在任何有一定规模的企业内部,一旦推行起来整个SRE的运维模式,那么对于可观测性系统的建设将变得尤为重要,而在整个可观测性系统中,通常我们会分为如下三个方面: 指标监控:即各种指标监控,比 ...
- 一文详解IT运维大会精华 网络安全等保2.0时代掌控万物互联
10月24日,由<网络安全和信息化>杂志社.IT运维网联合主办的"2019(第十届)IT运维大会"在北京新世纪日航酒店成功举行. 随着大数据.云计算.物联网.互联网+等 ...
最新文章
- html无效标签但是仍然能用,html 标签失效怎么办
- git reset HEAD^
- 开盘即破发,网易有道赴美上市,继续发力在线教育
- python启动mysql_Python操作MySQL
- 见良:学习多媒体主要靠实践
- CSS 3 中的伪类选择器
- 2139=数据结构实验之图论五:从起始点到目标点的最短步数(BFS)
- 学霸女神冯净冰:我是如何从复旦走到诺奖获得者经济学大会的
- java (lodop) 打印实例
- [原创]红马版验证码实现(中文+变形+噪点)
- hibernate 基础方法(一)及Hibernate中java对象的三种状态
- 开发人员一定要加入收藏夹的网站
- Spring AOP(面向切面)
- 转:饭后九不要包你保健康
- windows下使用vscode编写运行以及调试C/C++
- adlds文件服务器,Windows轻型目录(AD LDS)的备份恢复
- 可见性,原子性,有序性的源头(一)
- 超详细的canal使用总结
- java中extends用法_java中extends和implements的区别,怎么用?
- Linux / Windows系统中安装最新版 ElasticSearch (es)搜索引擎 超详细图文教程【一看就懂】
热门文章
- 半导体物理 第七章 金属半导体接触整流理论
- 福州化工实验室建设注意隐患分析
- jsp15公安海警学院值班管理系统(jsp+servlet+mysql)
- zte中兴应用Java版下载_中兴link app下载
- Axure 9.0 使用教程2-函数分类
- Navision的ERP系统 - 微软Dynamics NAV的ERP软件评论
- matlab教程pdf,Matlab2010经典超强教程(清晰、版).pdf
- WordPress收费下载插件Erphpdown v11.0
- Layout inflation的正确使用
- numpy - 数组随机排序