当 rsync/scp 不可用时,从系统传输文件或者 sosreport。

2023-05-16

环境

  • 红帽企业 Linux 5.x
  • 红帽企业 Linux 6.x
  • 红帽企业 Linux 7.x

问题

  • 文件需要转移到另一个系统,但是sshrsync未设置和/或允许。
  • 一个sosreport需要转移到另一个系统。

红帽企业 Linux 5.x

配置 iptables

笔记 如果您的环境中没有使用 iptables,您可以跳到“配置 nc”

  • 在救援环境中为系统设置网络
  • 这可以在初始设置期间或在Linux系统救援环境中实现联网完成
  • 通过运行记下救援环境中系统的 IP 地址# ip -4 a
sh-3.2# ip -4 a
3: eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop qlen 1000
    inet 192.168.122.3/24 scope global eth0
  • 检查系统上现有的链以接收sosreport# iptables -L -n -v
# iptables -L -n -v
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
 2594 3484K RH-Firewall-1-INPUT  all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 RH-Firewall-1-INPUT  all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain OUTPUT (policy ACCEPT 2174 packets, 307K bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain RH-Firewall-1-INPUT (2 references)
 pkts bytes target     prot opt in     out     source               destination         
   32  3822 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0           
    0     0 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0           icmp type 255 
    0     0 ACCEPT     esp  --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 ACCEPT     ah   --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            224.0.0.251         udp dpt:5353 
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0           udp dpt:631 
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:631 
 2561 3480K ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED 
    1    60 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22 
    0     0 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited
  • 插入新的初始规则INPUT或子链INPUT使用前面确定的 Rescue 系统的 IP 地址,其形式为:
  • # iptables -I <chain name> 1 -p tcp --dport <port to receive traffic> -s <IP address of Rescue system> -j ACCEPT 笔记 与 dport 关联的端口可以是任意的,但建议使用未使用的大号端口以避免任何冲突的网络流量
  • 鉴于上述设置,运行:# iptables -I "RH-Firewall-1-INPUT" 1 -p tcp --dport 12345 -s 192.168.122.3 -j ACCEPT

配置数控

接收服务器

  • 确保这件事# nc安装在接收主机上。
  • 可执行文件来自nc转数
# rpm -qf $(which nc)
nc-1.84-10.fc6

  • 该软件包应默认安装在系统上
  • 通过运行确定接收主机的 IP 地址# ip -4 a
  • 在上述 IP 链指定的端口上启动监听器,如果适用,否则建议您选择未使用的高编号端口
  • 重定向输出# nc命令到文件
  • # nc -l 12345 > /tmp/sosreport-$(date +%F).tar.bz2

发送服务器

  • 从救援环境生成 sosreport
  • # nc存在于救援环境中/usr/bin/nc
  • 连接到接收主机的开放端口,形式为
  • # nc <ip address> <port>
  • 发送sosreport通过将标准输入重定向到接收系统# nc
  • # nc 192.168.122.149 12345 < /mnt/sysimage/tmp/sosreport-jdoe.0123456789.tar.bz2

接收服务器

  • 删除之前添加的ipchain:# iptables -D "RH-Firewall-1-INPUT" 1

红帽企业 Linux 6.x

配置 iptables

笔记 如果您的环境中没有使用 iptables,您可以跳到“配置 nc”

  • 在救援环境中为系统设置网络
  • 这可以在初始设置期间或在Linux系统救援环境中实现联网完成
  • 通过运行记下救援环境中系统的 IP 地址# ip -4 a
bash-4.1# ip -4 a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN 
    inet 127.0.0.1/8 scope host lo
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    inet 192.168.122.3/24 scope global eth0
  • 检查系统上现有的链以接收sosreport# iptables -L -n -v
# iptables -L -n -v
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
 1173  463K ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED 
    0     0 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0           
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22 
    1   328 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited 

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited 

Chain OUTPUT (policy ACCEPT 712 packets, 129K bytes)
 pkts bytes target     prot opt in     out     source               destination 
  • 使用之前以以下形式确定的 Rescue 系统的 IP 地址,将新的初始规则插入 INPUT 或 INPUT 的子链:
  • # iptables -I <chain name> 1 -p tcp --dport <port to receive traffic> -s <IP address of Rescue system> -j ACCEPT 笔记 与 dport 关联的端口可以是任意的,但建议使用未使用的大号端口以避免任何冲突的网络流量
  • 鉴于上述设置,运行:# iptables -I INPUT 1 -p tcp --dport 12345 -s 192.168.122.3 -j ACCEPT

配置 nc/ncat

接收服务器

  • 确保# nc或者# ncat安装在接收主机上。
  • 可执行文件分别来自 nc 和 nmap rpm
# rpm -qf $(which nc)
nc-1.84-24.el6.x86_64
# rpm -qf $(which ncat)
nmap-5.51-4.el6.x86_64
  • nc软件包在 RHEL 6.X 存储库中可用
  • 通过运行确定接收主机的 IP 地址# ip -4 a
  • 在上述 IP 链指定的端口上启动监听器,如果适用,否则建议您选择未使用的高编号端口
  • 重定向输出# nc命令到文件
  • # nc -l 12345 > /tmp/sosreport-$(date +%F).tar.xz

发送服务器

  • 从救援环境生成 sosreport
  • # nc存在于救援环境中/usr/bin/nc
  • 连接到接收主机的开放端口,形式为
  • # nc <ip address> <port>
  • 发送sosreport通过将标准输入重定向到接收系统# nc
  • # nc 192.168.122.149 12345 < /mnt/sysimage/tmp/sosreport-jdoe.0123456789.tar.xz

接收服务器

  • 删除之前添加的ipchain:# iptables -D INPUT 1

红帽企业 Linux 7.x

配置防火墙

笔记 在 RHEL 7 中默认不使用 iptables。而是使用 firewalld 作为防火墙管理器。如果您不使用 firewalld,请跳至“配置 nc” 如果您在您的环境中使用 iptables,则为 RHEL 6 指定的现有指令也适用于 RHEL 7

  • 在救援环境中为系统设置网络
  • 这可以在初始设置期间或在Linux系统救援环境中实现联网完成
  • 通过运行记下救援环境中系统的 IP 地址# ip -4 a

sh-4.2# ip -4 a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN 
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000

    inet 192.168.122.7/24 scope global eth0
       valid_lft forever preferred_lft forever
  • 检查系统上的现有规则,包括丰富规则,以接收sosreport# firewall-cmd --list-all
# firewall-cmd --list-all
public (default, active)
  interfaces: eth0
  sources: 
  services: dhcpv6-client ssh
  ports: 
  masquerade: no
  forward-ports: 
  icmp-blocks: 
  rich rules: 
        rule port port="6000" protocol="tcp" drop

  • 使用前面确定的 Rescue 系统的 IP 地址添加新的丰富规则,其形式为:
  • # firewall-cmd --add-rich-rule 'rule family=ipv4 source address="source address" port port="port number" protocol=tcp accept' 笔记 与“端口”关联的端口可以是任意的,但建议使用未使用的大号端口以避免任何冲突的网络流量
  • 鉴于上述设置,运行:# firewall-cmd --add-rich-rule 'rule family=ipv4 source address="192.168.122.7" port port=12345 protocol=tcp accept'

配置数控

接收服务器

  • 确保# nc安装在接收主机上。
  • 可执行文件来自 nmap-ncat rpm
# rpm -qf $(which nc)
nmap-ncat-6.40-7.el7.x86_64
  • nc 包在 RHEL 7.X 存储库中可用
  • 通过运行确定接收主机的 IP 地址# ip -4 a
  • 在上述firewalld规则指定的端口上启动监听器,如果适用,否则建议您选择一个未使用的高编号端口
  • 重定向输出# nc命令到文件
  • # nc -l 12345 > /tmp/sosreport-$(date +%F).tar.xz

发送服务器

  • 从救援环境生成 sosreport
  • # nc救援环境中不存在。 注意有必要将本地安装的 dvd/iso 设置为存储库
  • 安装 nmap-ncat rpm:# yum install nmap-ncat
  • 连接到接收主机的开放端口,形式为
  • # nc <ip address> <port>
  • 发送sosreport通过将标准输入重定向到接收系统# nc
  • # nc 192.168.122.149 12345 < /mnt/sysimage/var/tmp/sosreport-jdoe.0123456789.tar.xz

接收服务器

  • 删除之前添加的 firewalld 富规则:# firewall-cmd --remove-rich-rule 'rule family=ipv4 source address="192.168.122.7" port port=12345 protocol=tcp accept'

根本原因

  • nc /ncat是一种网络实用程序,具有大量功能,包括通过网络读取和写入数据的能力。
  • 通过打开特定端口ncat, 数据可以在两个系统之间传输而无需ssh,rsync , 或者scp.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

当 rsync/scp 不可用时,从系统传输文件或者 sosreport。 的相关文章

  • 如何在 Linux 中转义 scp 复制路径中的空格?

    我想将文件从远程复制到本地系统 现在我在linux系统中使用scp命令 我有一些文件夹或文件名带有空格 当我尝试复制该文件时 它显示错误消息 没有这样的文件或目录 I tried scp email protected home 5105
  • 使用 Jenkins 管道脚本从 Windows 到 Linux 的 SCP

    我想要做SCP从 Windows Jenkins 节点到 Linux 服务器 在此设置中 Windows 计算机是 Jenkins 从机 我要复制的目标服务器是 Linux 下面是我的 Jenkins 管道脚本 在运行下面的脚本之前 我将克
  • 使用 Expect 脚本自动处理多个文件的 SCP

    所以我看过很多关于此的帖子 也许我只是没有看到合适的帖子 我正在使用 Expect 脚本将多个文件从我的语言环境传输到远程 我不想为无密码登录设置密钥 因为这样服务器就不会被吹走并在没有更多工作的情况下站起来 是的 我可以自动创建密钥 但我
  • 没有 SSH 访问权限的 Rsync

    首先 我不确定这是提出这个问题的最佳位置 所以如果它需要移动 那很酷 我有共享主机 没有 SSH 访问权限 在部署 rsyncing 方面我有哪些选择 我用 PHP 构建应用程序并使用 GIT 不确定这是否会改变事情 使用的 Rsync 旧
  • 我可以知道 unix 中 scp 命令的退出状态吗

    使用 scp 命令在 perl 中进行编程时 我坚持面对 scp 命令的退出状态如果你告诉我哪个退出值 0 成功 1 错误除外 是为了我的生活会很简单 From here http support attachmate com techdo
  • 相当于 ftp put 并追加到 scp 中

    我有一个我无法理解的遗留脚本 该脚本是将unix中的4个文件 2个ebcdic格式文件和2个pdf文件 通过ftp传输到主机上 ebcdic format file 1 is abc xyz ebcdic format file 2 is
  • 如何配置 SCP/SFTP 文件存储?

    我的 Laravel 应用程序应该将文件复制到另一个远程主机 远程主机只能通过带有私钥的 SCP 进行访问 我想配置一个新的文件存储 https laravel com docs 5 5 filesystem 与FTP类似 https la
  • 绕过 Rsync 提示“您确定要继续连接吗”

    如何绕过这个问题或添加一个自动回答这个问题的标志 因为我正在尝试编写一个脚本 并且这个问题不断停止 rsync 的过程 因为在提示时无法在脚本中回答这个问题 Set the StrictHostKeyChecking选项no 在配置文件中或
  • 如何使用 Maven 使用私钥通过 SCP 进行部署

    在Windows上使用Maven 通过SCP传输 使用私钥 这似乎是一个非常简单且有记录的过程 但这对我不起作用 在settings xml中
  • scp 失败并显示“协议错误:文件名与请求不匹配”

    我有一个使用 SCP 从 AWS 上的远程 Linux 主机提取文件的脚本 每晚运行相同的代码大约 6 个月没有出现问题后 今天开始失败protocol error filename does not match request 我在下面一
  • rsync 无法解释的错误(代码 129)

    我正在尝试将数据从一台服务器 rsync 到另一台服务器 大约有大约 1 1T 的数据 但是当我进行 rsync 时 我在传输过程中遇到以下异常 从而终止了进程 rsync 错误 rsync c 541 sender 3 0 7 出现无法解
  • Symfony 2.2.1 rsync 部署 - 无法在远程服务器上工作

    我对 Symfony 非常陌生 我正在尝试使用 rsync 自动化部署过程 同时保持 Symfony 的本地和远程安装正常工作 到目前为止我所做的 在我的本地计算机上安装了 Cygwin Windows 7 Apache2 2 PHP 5
  • Ansible 使用同步时提示密码

    我在用着ansible http www ansible com通过以下方式 ansible playbook f 1 my play book yaml ask pass ask sudo pass 之后我被要求输入 ssh 和 sudo
  • 具有 2 个不同 .pem 密钥的 2 个服务器之间的 scp 命令

    我想使用 scp 和 2 个不同的 pem 密钥将文件夹从服务器 A 传输到服务器 B 这是最好的方法吗 它是否真的有效 scp i Documents server1 pem r email protected cdn cgi l ema
  • 通过同时/并发文件传输加速 rsync?

    我们需要转移15TB尽可能快地将数据从一台服务器传输到另一台服务器 我们目前正在使用rsync但我们只能得到大约的速度150Mb s 当我们的网络能够900 Mb s 测试与iperf 我已经对磁盘 网络等进行了测试 发现 rsync 一次
  • 如何强制 rsync 创建目标文件夹

    Example rsync tmp fol1 fol2 fol3 foln user addr tmp fol1 fol2 fol3 foln 我的主要问题是远程计算机上不存在文件夹 tmp fol1 我可以使用哪些参数来强制 rsync
  • 如何 scp 到 Amazon s3?

    我需要将约 2TB 的备份文件发送到 S3 我想最轻松的选项是 Linux scp 命令 有困难 https stackoverflow com questions 5774808 s3cmd failed too many times使用
  • 递归使用 scp 但排除某些文件夹

    假设有一些具有这些结构的文件夹 bench1 1cpu p 0 image bench1 1cpu p 0 fl 1 bench1 1cpu p 0 fl 1 bench1 1cpu p 0 fl 1 bench1 1cpu p 0 fl
  • 使用 RSYNC,包含和排除如何组合?

    我想 rsync Volumes B 中的所有内容 除了缓存目录 我想全局排除它 另外 我不想同步任何其他 Volume 我有以下排除文件 Volumes B Cache Volumes 第一行和第三行似乎工作正常 除了 rsync 还拾取
  • SCP 权限被拒绝(公钥)。仅当在目录上使用 -r 标志时才在 EC2 上

    scp r Applications XAMPP htdocs keypairfile pem uploads ec2 user publicdns var www html 其中 uploads 是目录 返回权限被拒绝 公钥 Howeve

随机推荐

  • docker审计日志过大导致磁盘IO

    问题 xff1a 节点发生磁盘io 节点审计日志量较大 xff0c 由于操作系统内核缺陷 xff0c 会低概率出现io卡主 影响版本 xff1a v1 15 11 v 1 17 9 查看节点是否有问题 1 登录节点 2 如果有类似下图的回显
  • linux 环境命令随记

    sh steve bourne bash bourne again shell gpl centos和ubuntu 默认使用 csh c shell C语言风格 tcsh ksh xff1a korb shell aix默认shell zs
  • sed命令的使用

    sed命令 格式 sed 选项 脚本命令 文件名 选项 n 使用安静silent模式 在一般sed的用法中 xff0c 所有来自stdin的内容一般都会被列出到屏幕上 但如果加上 n参数后 xff0c 则只有经过sed特殊处理的那一行 或者
  • docker安装和info信息

    docker 容器的历史 xff1a 1 Chroot Jail 就是我们常见的 chroot 命令的用法 它在 1979 年的时候就出现了 xff0c 被认为是最早的容器化技术之一 它可以把一个进程的文件系统隔离起来 2 The Free
  • docker镜像管理

    docker镜像管理 镜像结构和原理 镜像就是创建容器的模版 xff0c 含有容器启动所需要的文件系统及所需要的内容 xff0c 因此镜像主要用于方便和快速创建启动容器 镜像结构 xff1a 一个典型的 Linux文件系统由 bootfs
  • 容器操作基础命令随记

    容器操作基础命令 命令周期 一次性启动容器docker run 一次性运行容器 xff0c 退出后立即删除 xff0c 用于测试 root 64 localhost docker run rm alpine cat etc issue We
  • SRE-Google运维解密随记-1

    雇佣系统管理员 sysadmin 运维复杂的计算机系统 xff0c 是行业内一直以来的普遍做法 这些系统管理员负责将现成的软件组件部署于生产环境中 xff0c 对外提供某种业务服务 系统管理员的主要工作在于应对系统中产生的各种需要人工干预的
  • SpringCloud-Netflix并没有闭源、Eureka1.X也没有闭源

    网上流行的说法 xff1a Netflix的Eureka 闭源了 xff08 不实 xff09 引起一些人的焦虑 恐慌 xff0c SpringCloud Netflix是不是就不能用了 xff0c 没人维护了 真相 xff1a 1 Spr
  • SRE-Google运维解密随记-2-服务目标质量

    服务质量指标 SLI 服务质量目标 SLO 服务质量协议 SLA 这三项分别是指该服务最重要的一些基础指标 这些指标的预期值 xff0c 以及当指标不符合预期时的应对计划 事先选择好合适的指标有助于在故障发生时帮助SRE进行更好地决策 xf
  • SRE-Google运维解密随记-3-分布式系统的监控

    监控的大部分通用的术语 xff1a 监控 monitoring 收集 处理 汇总 xff0c 并且显示关于某个系统的实时量化数据 xff0c 例如请求的数量和类型 xff0c 错误的数量和类型 xff0c 以及处理用时 xff0c 应用服务
  • SRE-Google运维解密随记-4

    自动化系统的演进 草率地进行自动化可能在解决问题的同时产生出其他问题 因此 xff0c 虽然我们认为在大多数情况下以软件为基础的自动化是优于手动操作的 xff0c 但是比 这两个选择更好的方案是一个不需要这些的系统设计一个自治的系统 或者换
  • linux下查看wwn号

    linux终端命令行中通过 cat sys class fc host host port name 命令查看wwn号即可 cat sys class fc host host port name
  • Linux系统权限集中管理项目案例实践

    目录 1 1 etc syduoers配置语法注意事项 1 2 etc sudoers配置文件别名知识 1 3 在 etc sudoers配置文件中 xff0c 别名和配置语法的对应关系表 1 4 利用别名配置授权实践案例 2 企业环境中用
  • 故障记录-磁盘性能下降导致节点触发迁移

    2023 03 11 11 28 52 012 ERROR 139673393420032 send ZMQ message to tcp 9765 failed 34 action 34 34 get pool status 34 34
  • gsch和redirfs模块导致系统hang或者重启 。

    Trend Micro Deep Security Agent 与Gluster 文件系统不兼容导致夯机 modules 34 gsch and redirfs 34 causing frequent kernel panic Trend
  • RedHat Linux系统故障修复—— grub引导、MBR损坏修复过程

    一 故障问题 MBR损坏是一种非常常见的错误 xff0c 两种情况 xff1a 1 MBR文件损坏 2 grub目录被误删除 1 首先 xff0c MBR是安装在硬盘的第一个扇区上占用了512个字节 xff0c 其中前446字节是bootl
  • 在救援模式下收集 sosreport

    问题 如何在救援模式下收集 sosreport xff1f 对于无法正常启动的操作系统 xff0c 如何收集 sosreport xff1f Red Hat Enterprise Linux 系统无法启动 当技术支持人员需要相关信息来进行问
  • 在Linux系统救援环境中实现联网

    环境 救援环境下的红帽企业 Linux 5 6 7 8 9 问题 生成了 sosreport 在初始救援环境设置期间未启用网络 解决方案 使用 IP 命令套件 iproute 包 xff1a 1 ip link 将显示连接到系统的可用设备
  • Rsa读取pem公钥和私钥

    1 把pem文件用text打开 xff0c 把开头和结尾的begin和end内容删去 xff0c 只留下字符串内容 xff1b 2 用流读取文件中的字符串 xff1b 3 用以下代码生成公钥和私钥对象 xff1b public static
  • 当 rsync/scp 不可用时,从系统传输文件或者 sosreport。

    环境 红帽企业 Linux 5 x红帽企业 Linux 6 x红帽企业 Linux 7 x 问题 文件需要转移到另一个系统 xff0c 但是ssh和rsync未设置和 或允许 一个sosreport需要转移到另一个系统 红帽企业 Linux