小编Sha*_*dur的帖子

说服 apt-get *not* 使用 IPv6 方法

我工作的 ISP 正在建立一个内部 IPv6 网络,为最终连接到 IPv6 互联网做准备。因此,该网络中的一些服务器在运行时默认尝试通过其 IPv6 地址连接到 security.debian.org apt-get update,这导致每当我下载任何类型的更新时都必须等待很长时间.

有没有办法告诉 apt 是更喜欢 IPv4 还是完全忽略 IPv6?

apt ipv6

262
推荐指数
5
解决办法
19万
查看次数

两个接口,两个地址,两个网关?

我有一个系统,它有两个不同 IP 地址的网络接口,它们都在公共地址范围内(尽管在第一个的情况下通过 NAT)并且它们都有不同的网关。(长话短说,用于测试目的)

现在的问题是,如果我尝试 ping 第二个接口上的地址,默认路由会通过第一个接口指出 - 并且永远不会正确到达。

是否可以确保响应始终通过相同的网络接口(并具有相同的源 IP)发出?如果是这样,如何?

networking debian ipv4

17
推荐指数
2
解决办法
6万
查看次数

使用 rsync 输出中的“对话框”制作进度条

我正在寻找一种过滤/重定向 rsync 输出的方法,可以将其提供给“dialog --gauge”命令,以便在文件同步期间获得漂亮的进度条。目前我只在提示符下直接对其进行了测试,但我计划在 (bash) shell 脚本中执行此操作。

我环顾了互联网,发现了一些零碎的东西,但我仍然缺少一些东西来使它工作

(免责声明:这可能是一种完全错误的方法,并且是一种重定向/管道怪物)

我目前汇总的内容:

rsync -avz --progress -e "ssh" user@server:/home/user/data/ /home/user/data | awk -f /home/user/rsync.awk | sed 's/\([0-9]*\).*/\1/' | dialog --title "My Gauge" --gauge "Hi, this is a gauge widget" 20 70
Run Code Online (Sandbox Code Playgroud)

首先,我有带有 --progress 选项的实际 rsync 命令 rsync 的输出通过管道传输到 awk 并使用以下 awk 过滤器:

{
   if (index($0, "to-check=") > 0)
   {
        split($0, pieces, "to-check=")
        split(pieces[2], term, ")");
        split(term[1], division, "/");
        print (1-(division[1]/division[2]))*100
}
#   else
#   {
#       print "#"$0;
#   }
   fflush();
}
Run Code Online (Sandbox Code Playgroud)

这会过滤掉 …

linux scripting bash awk rsync

16
推荐指数
1
解决办法
8924
查看次数

gnome-session/gnome-shell 在哪里存储其配置?

长话短说; 我有一个 debian 系统,它已经连续运行unstable了十多年(通过火灾、火焰和多次硬件升级,但除此之外)。然而,不久前,当 Debian 过渡到 gnome3 和gnome-shell桌面时,在这个过程中出现了一些gnome-shell故障,其中一个或另一个让我的普通用户无法使用配置——启动并立即崩溃。

我尝试设置一个完全空白的新用户,并且该用户一切正常,所以这绝对是我的主要用户在某处本地设置的问题......只是我不知道从哪里开始寻找,我不知道不想全面擦除所有配置文件,因为我需要其中的绝大多数。因此,相反,我希望手术删除所有相关的配置文件和/或选项,gnome-shell并让它在我启动时从头开始重建它们,然后从那里开始工作。

编辑:我糟糕的、轻微的命名失败。问题似乎在gnome-shell而不是gnome-session

debian gnome-shell gnome3

11
推荐指数
1
解决办法
1万
查看次数

'passwd' 命令如何获得 root 用户权限?

Linux 怎么知道它必须只将 euid 0(root 的 uid)提供给某些进程,例如 passwd、setuid 等。

如果一个进程能够获得root权限,会不会导致Linux平台潜在的安全漏洞?

例如,如果我编写一个可以获取像 passwd 这样的 root 用户权限的程序,我可能会损坏像 /etc/passwd、/etc/groups 这样的重要系统文件。

Linux 如何仍然保持安全?

linux security root permissions

11
推荐指数
2
解决办法
1万
查看次数

如何在 Linux 和 Windows 之间共享文件?

我想知道,有没有办法在 Linux 和 Windows 之间轻松共享文件夹?

linux file-sharing windows

9
推荐指数
2
解决办法
2万
查看次数

如何在路由器上禁用自动 IPv6 邻居路由广告?

我为一家 ISP 工作,该 ISP 正在为其基础设施准备 IPv6。我们的核心路由器已经有一个工作设置,但我们的大部分光纤客户都在运行 Debian Squeeze 的路由器后面。

在 linux 上启用 IPv6 功能不是问题,但是,一旦我们为 linux 路由器分配了 IPv6 地址和工作路由,它立即将工作地址和路由传输到它后面的所有系统,这不是我们想要的。

我们当前的计划涉及在所有系统上手动设置 IPv6 地址,但我似乎找不到告诉内核不执行路由器广告的开关或选项。

有什么建议?

routing debian ipv6

8
推荐指数
1
解决办法
1万
查看次数

重启期间 /etc/resolv.conf 更改

我的 ISP 要求我使用自定义nameserver设置。我已经把这些放在/etc/resolv.conf. 不幸的是,每次我重新启动计算机时,这个文件的内容都会改变。要连接到 Internet,我必须首先编辑该文件。如何确保此文件不会更改?

dns debian ppp

6
推荐指数
1
解决办法
1万
查看次数

iptables:更改 TEE 数据包的目标 IP

由于我无法进入此处的原因,我发现自己必须将 UDP 数据包流(网络流数据,如果重要的话)复制到第二个目的地。

经过一番研究,我发现 'mangle table 的 TEE 目标iptables正是这样做的:

iptables -t mangle -A PREROUTING -d 192.168.81.21 --protocol udp --destination-port 6343 -j TEE --gateway 192.168.228.2 
iptables -t mangle -A PREROUTING -d 192.168.81.21 --protocol udp --destination-port 6344 -j TEE --gateway 192.168.228.2 
Run Code Online (Sandbox Code Playgroud)

我现在遇到的唯一问题是目标服务器接收192.168.228.2到带有原始192.168.81.21地址的目标标头的数据包,因此侦听网络流流量的软件不接受它们。

“显而易见的”解决方案是使用iptables自己的数据包重写代码将目标标头重写为正确的值,但这只需要发生在重复的数据包上,而不是原始数据包上。这意味着我通常使用的 DNAT 已经不再适用,因为它只对 PREROUTING 表有效,此时我还无法区分正常数据包和重复数据包。

除非我遗漏了一些明显的东西,否则我就会陷入困境。有什么建议么?

有没有办法为 POSTROUTING 添加规则,将数据包的 IP 地址更改为正确的目标服务器?

iptables iptables-redirect

5
推荐指数
1
解决办法
2538
查看次数

如何将ssh日志条目中的密钥指纹转换为相应的authorized_key?

我正在强制使用 ssh 密钥作为我们组织的 Linux 系统上管理的标准做法。这包括一个充当技术支持帐户的特定帐户,该帐户没有完全的 root 权限,该帐户拥有允许在其文件中访问它们的每个人的公钥authorized_keys

但是,在最近的日志检查过程中,发现ssh用于向日志或系统日志报告成功登录的指纹格式与文件中记录的指纹不匹配authorized_keys

Apr 26 12:34:28 proteus sshd[44277]: Accepted publickey for adminuser from a.b.c.d port 54674 
ssh2: ED25519 SHA256:e1rz**REDACTED**8EZIY
Run Code Online (Sandbox Code Playgroud)

相关authorized_keys条目:

ssh-ed25519 AAAAC3Nz**REDACTED**PfrMZ Shadur
Run Code Online (Sandbox Code Playgroud)

(日志条目确实ssh-add -l与匹配键的结果匹配)。

如何将日志中的密钥与中的条目进行比较authorized_keys以验证使用哪个密钥登录?

ssh

3
推荐指数
1
解决办法
1818
查看次数

不小心 dd 到 /dev/sda

我使用 Kali Linux,在尝试备份文件时不小心使用了 dd 到 /dev/sda。它会在几秒钟后完成,总大小约为 10 - 20 mb。我的计算机重新启动后,无法启动,并且无法读取磁盘(损坏)。我立即使用 SystemRescue 磁盘并制作损坏磁盘的 img 副本。

我尝试过使用 Testdisk 和 Photorec,并且找回了大部分文件(我认为),我还使用了 gdisk,并在 Lost+Found 中找回了大约 60% 的文件。

有什么方法可以修复分区表并使其再次可启动,同时我仍然保留所有文件,就像以前一样?

fsck、e2fsck、fsck.ext4 不工作。

请帮忙,谢谢。

dd kali-linux system-recovery

0
推荐指数
1
解决办法
151
查看次数

sudo -i 给出错误

我创建了一个 user1 并尝试使用将用户切换到 user2 帐户sudo -i user2。但是我收到此错误:

Sorry, user user1 is not allowed to execute '/bin/bash -c user2' as root on hostname.
Run Code Online (Sandbox Code Playgroud)

请在这方面协助我。

linux sudo

-2
推荐指数
1
解决办法
59
查看次数