通过putty和 winscp操作aws机器笔记

24 篇文章 1 订阅

最近在生产aws环境部署了支持http3的nginx集群(nginx+consul+upsync)。整个部署过程使用putty操作虚拟机,通过winscp上传下载文件。

写了一些操作笔记以及记录了我自己碰到的几个问题

PS:
由于是生产环境,所以所有的服务机器都是通过堡垒机登录的,并且设置了密钥
下面提到的服务器地址都是不能直接通过ssh命令直接连接的应用服务器地址

WINSCP

winscp的操作相对putty来说比较简单
在这里插入图片描述
在这里插入图片描述
然后点击确认和登录按钮就可以看到如下连接成功的提示
在这里插入图片描述

PUTTY

putty通过密钥登录内网机器

在aws两台机器,一台是可以是堡垒机,可以在任何点通过ssh命令访问,一台是内网机器,只能通过堡垒机使用SSH命令连接,其安全组配置如下:
在这里插入图片描述
在这里插入图片描述
由于要使用密钥进行登陆,需要先保存私钥到本地(如果是pem文件需要先通过puttygen转换成ppk文件)

1.将pem转化成ppk文件
打开puttygen并点击load,选择自己电脑上的pem公钥并打开,就可以看到如下图所示的导入成功的消息,然后点击保存私钥的按钮,就可以得到对应的ppk文件
在这里插入图片描述
由于两台机器的登陆都需要私钥,而私钥只是存储在我本地,所以通过Pageant来保存私钥。
Pageant是PuTTY身份验证代理。 它可以私钥保存在内存中,以便我们可以在连接到服务器时使用它们。

2.添加私钥到Pageant
在这里插入图片描述
3. putty连接堡垒机
在这里插入图片描述
在这里插入图片描述
4.登陆堡垒机
在这里插入图片描述
通过ssh命令连接内网机器(aws上Red Hat的实例的默认登陆用户都是ec2-user)

putty做端口映射

在搭建nginx+consul+upsync集群的时候,为了安全性,所有的机器都仅可以通过堡垒机访问,consul集群通过私有子网来创建实例。这样一来,我们也不能直接通过consul服务端的ip+端口访问器web界面了,解决方案有三种:

  • 1.通过nginx映射到外网,然后访问nginx的时候做登陆验证
  • 2.使用consul 自己的ACL机制,设置token才可以访问 比较麻烦
  • 3.通过putty的ssh隧道,在登陆堡垒机的时候做端口映射,先给与堡垒机访问consul ui的权限,然后通过端口映射到本地

最终我选择了第三种,既保证了安全性,配置起来也很简单,使用putty 登陆堡垒机就可以访问consul的页面
consul服务器ip:172.33.63.50,登陆后安装并启动consul

在这里插入图片描述
在本地通过127.0.0.1:8500端口就可以访问了— 注意是映射到的是本地的端口
在这里插入图片描述

通过SSH命令进行私钥转发

按照上述操作可以使用putty连接内网服务器,不过每次都需要输入ssh ec2-user@ip命令来连接服务器,也比较麻烦,查阅了下看看是否有其他更简单的方式来连接
其中一个办法就是把命令保存成shell文件,这样在使用的时候就会方便些,不需要再去看对应服务的IP了

思路也是一样的,先是通过ssh-agent 管理私钥;然后转发私钥来登陆内网服务器

1.通过ssh-add命令添加私钥

在这里插入图片描述
执行ssh-add时如果出现"Could not open a connection to your authentication agent"错误,则执行ssh-agent bash命令
在这里插入图片描述
通过ssh-add -l命令我们可以看到对应的私钥已经被加入了

2.登陆内网服务器

ssh ec2-user@172.33.63.50 -p 22 -o ProxyCommand='ssh -p 22 ec2-user@54.238.43.140 -W %h:%p'

这条命令的意思是,我使用ec2-user用户,来经过堡垒机的认证,但是我登陆内网服务器则是使用ec2-user用户登录。前面的是目标服务器的信息,ProxyCommand里的是堡垒机的信息
在这里插入图片描述
为了便于简单,可以把上述信息写到配置文件~/.ssh/config里边

Host consul-server1
   HostName 172.33.63.50
   Port 22
   User ec2-user
   ProxyCommand ssh -p 22 ec2-user@54.238.43.140 -W %h:%p

在这里插入图片描述

这样以后想要连接对应的服务器只要使用ssh + host 就可以了

不过通过ssh-add命令添加的私钥只要关闭命令台就会失效了,每次都需要重新通过ssh-add命令添加一下

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PuTTYWinSCP都是常用的远程管理工具,可以与服务器建立安全连接并进行文件传输。 要下载PuTTYWinSCP,可以按照以下步骤进行操作: 1. 打开浏览器,进入PuTTY官方网站。在搜索栏中输入"PuTTY下载",然后点击搜索按钮。 2. 在搜索结果中找到官方网站链接,点击进入。 3. 在下载页面,找到与您的操作系统相对应的版本,比如Windows或Linux。点击相应的下载链接。 4. 下载完成后,打开下载的安装程序。按照提示进行安装,并选择您想要将PuTTY安装到的文件夹和其他设置。 5. 完成安装后,您就可以在计算机上找到PuTTY的图标。双击打开PuTTY,然后输入服务器的IP地址和端口号,选择连接方式(如SSH),并点击连接按钮。 6. 输入服务器的用户名和密码,然后按回车键,即可建立与服务器的连接。 要下载WinSCP,可以按照以下步骤进行操作: 1. 打开浏览器,进入WinSCP官方网站。在搜索栏中输入"WinSCP下载",然后点击搜索按钮。 2. 在搜索结果中找到官方网站链接,点击进入。 3. 在下载页面,找到与您的操作系统相对应的版本,比如Windows或Linux。点击相应的下载链接。 4. 下载完成后,打开下载的安装程序。按照提示进行安装,并选择您想要将WinSCP安装到的文件夹和其他设置。 5. 完成安装后,您就可以在计算机上找到WinSCP的图标。双击打开WinSCP,然后输入服务器的IP地址、用户名和密码。 6. 点击连接按钮,即可建立与服务器的连接,并可以进行文件传输和管理。 以上就是下载PuTTYWinSCP的简要步骤。希望对您有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值