一、使用场景说明:


在公网上有一套OpenStack云环境,现在要做一次培训,共15个学员,每个学员分配三台虚拟机,每个学员都可通过ssh登陆管理三台虚拟机进行相关实验。目前国内条件有限就是公网IP地址比较少,不能给每个学员的虚拟机都绑定floatingIP,本人以前看到同事使用ssh隧道技术,专门研究了一天,居然实现了我想的功能,受6月9号蒋迪的《硬盘、RAID组与Ceph的IOPS公式与工具》的启发,现分享给大家。


二、环境说明


如图1所示,平台有一台跳板机,绑定公网IP103.x.x.205,可以直接ssh登陆,同一网段内还有三台Linux虚拟机,现实现通过IP103.x.x.205的不同端口分别直接登陆三台虚拟机。


图1 环境说明


三、技术实现



都是搞技术的,咱直接给出操作命令,供大家参考。


01

peixun2的相关操作

A、免秘钥登陆

登陆方向peixun2--tiaoban

#ssh-keygen

一路回车,生成公钥,如图2所示。


图2 生成公钥


#ssh-copy-id -i .ssh/id_rsa.pub root@10.1.1.14

把公钥拷贝到tiaoban机,为开机自动建立隧道做准备,如图3所示。


图3 公钥拷贝到tiaoban机B、编辑脚本service.sh,建立反向隧道


# viservice.sh

#!/bin/bash

ssh-fCNR 10002:localhost:22 root@10.1.1.14

# chmod+x service.sh

#./service.sh

添加执行权限,并执行脚本。

编辑rc.local,添加一行脚本内容。

# vi/etc/rc.d/rc.local

/root/service.sh


c、验证隧道


登陆tiaoban机,查一下10002端口是否建立,如果有10002端口说明peixun2的脚本执行成功。

#netstat -ano|grep 10002

给大家提个问题,这个隧道建立了,怎么删除呢?



02

跳板机(tiaoban)的相关操作

D、二次隧道的建立,编辑脚本service.sh,建立反向隧道


# viservice.sh

#!/bin/bash

ssh-fCNL *:20000:localhost:10000 localhost

ssh-fCNL *:20001:localhost:10001 localhost

ssh-fCNL *:20002:localhost:10002 localhost

这里直接建立了三条本地隧道。

# chmod+x service.sh

添加执行权限,并执行脚本。

编辑rc.local,添加一行脚本内容。

# vi/etc/rc.d/rc.local

/root/service.sh


E、验证隧道


查一下10002、20002端口是否建立,如果有10002、20002端口说明隧道链建立成功。


图4 验证隧道


03

云平台的相关操作


F、跳板机的防火墙及selinux的配置


#firewall-cmd--add-service=ssh-permanent

#firewall-cmd--add-port=20002/tcp --permanent

#semanageport -a -t ssh_port_t -p tcp 20002


G、云平台安全组的添加


云平台安全组的添加,这里添加一个端口范围,如图所示。

图5 安全组


04

ssh客户端的配置与操作


原来的22端口修改为20002端口,如图所示。


图6 ssh的配置H、远程连接


图6 ssh的登陆


小结:

咱还是画图吧,这个应该比较直观就不解释了。



图7 小结图


本实验虽然很简单,但实现了一个比较实际和有用的功能,希望能给大家启发,先有问题,然后想办法去解决问题,提高自己的工作效率。


©著作权归作者所有:来自51CTO博客作者mob604756fa4732的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. Docker-LinuxKit搭建及使用场景分析
  2. 提供坚固耐用的笔记本电脑的合作技术
  3. centos7 测试网速教程
  4. 2018,新开始,新起点!
  5. 苹果Mac图片批量压缩重命名添加水印工具:PhotoBulk
  6. 在苹果Mac上如何隐藏桌面图标?
  7. Python如何进行内存管理?
  8. 组件化思维对于一个UI设计来说有多重要?
  9. 人生首套房子的重要性,怎么买对,怎么置换?

随机推荐

  1. 一文搞懂Python文件读写
  2. 教你用pyecharts制作交互式桑基图,赶快学
  3. 如何使用scikit-learn机器学习库做预测
  4. 那些不为人知的优秀python可视化库
  5. 一文搞懂Python循环的技巧
  6. 一文搞懂Python匿名函数
  7. Python机器学习·微教程
  8. Quora千赞回答,python新手应该避免哪些坑
  9. numba,让你的Python飞起来!
  10. 一文搞懂Python迭代器和生成器