linux服务器之间跳转、传输文件

本文介绍如何使用SSH命令进行服务器间的跳转及文件传输。包括通过SSH直接连接远程主机端口的方法,以及如何利用scp命令上传和下载文件及目录。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、通过ssh跳转服务器

示例1

直接连接远程主机端口

前提条件:

两台服务器A、B;当前所在位置:服务器A;SSH服务已安装。

判断:

在服务器A中执行命令 ping B的IP地址 ,在能ping通的前提条件下

进入服务器A后,输入:

ssh -l 主机名 IP
  1. 主机名:要跳转的Linux服务器的主机名
  2. IP:要跳转的Linux服务器的ip地址

或者:

ssh 用户名@服务器地址

然后回车输入服务器B的用户密码就可以跳转到另一台服务器B。如 ssh root@127.0.0.1 

补充3: exit 退出远程连接服务器,回到本机的命令终端

二、传输文件

1、上传本地文件到服务器 

scp /path/filename username@servername:/path/

例如scp /opt/data/test.sql root@10.22.135.202:/opt/ 把本机/opt/data/目录下的test.sql文件上传到10.22.135.202这台服务器上的/opt/目录下。

2、下载服务器文件到本地

scp username@servername:/opt/test.sql /opt/data/(本地)

例如scp root@10.22.135.202:/opt/test.sql /opt/data把10.22.135.202上的/opt/test.sql 的文件下载到/opt/data(本地)

3、上传本地目录到服务器

scp -r /opt/local_test_dir username@servername:/opt/test

例如scp -r /opt/local_test_dir root@10.22.135.202:/opt/test 把本地的/opt/local_test_dir目录上传到服务器10.22.135.202的/opt/test 目录

4、下载服务器目录到本地

scp -r username@servername:/opt/test/(服务器目录) /opt/local_test_dir(本地目录)

例如:scp -r username@10.22.135.202:/opt/test/ /opt/local_test_dir 把服务器10.22.135.202 /opt/test/目录下载到/opt/local_test_dir目录下。

5、 scp 指定端口时,应该紧跟在scp命令后面指定端口号。

scp -P 20022 /Documents/test.txt optadmin@服务器名:/home/optadmin/tmp/

### 通过堡垒机向Linux服务器传输文件的方法 #### 使用 SCP 进行文件传输 SCP 是一种基于 SSH 的安全文件复制协议,可以通过堡垒机实现从本地主机到目标 Linux 服务器之间文件传输。假设堡垒机的 IP 地址为 `bastion_host`,目标 Linux 服务器的 IP 地址为 `target_server`,可以按照以下方式执行命令: ```bash scp -o ProxyJump=user@bastion_host local_file user@target_server:/remote/path/ ``` 此方法利用了 `-o ProxyJump` 参数,通过堡垒机建立跳转连接[^1]。 #### 使用 SFTP 进行文件传输 SFTP 是一种交互式的文件传输协议,同样基于 SSH 协议提供安全保障。要通过堡垒机访问目标 Linux 服务器上的文件,可以在客户端配置 SSH 隧道或者直接指定代理链路。例如,在终端中运行如下命令启动会话: ```bash sftp -oProxyCommand="ssh -W %h:%p user@bastion_host" user@target_server ``` 上述命令中的 `-oProxyCommand` 设置允许用户经由堡垒机间接到达最终的目的地机器并管理其上的资源。 #### 利用 SSH 隧道增强安全性 为了进一步提升数据交换过程中的保密性和完整性,推荐采用 SSH 隧道技术封装整个通信流程。这不仅适用于 VNC 远程桌面场景下的流量保护[^2],也适合于任何需要额外防护层的情况比如批量迁移敏感资料等场合。创建一条专用通道的具体做法如下所示: 先登录至中间节点即堡垒机: ```bash ssh -L 2222:target_server:22 user@bastion_host ``` 之后再借助新开辟出来的本地端口完成实际的数据搬运工作: ```bash scp -P 2222 /local/file_path/ username@localhost:/destination/directory/ ``` 以上三种途径各有优劣之处,可以根据具体需求灵活选用最合适的方案来进行跨网络环境间高效而可靠的信息流通处理活动。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值