小编nde*_*mou的帖子

共享fail2ban禁止的IP

我在所有具有公开可见服务的服务器上使用 fail2ban,我想知道:

  1. 有没有一种简单的方法可以在我控制的主机之间共享被禁止的 IP?
  2. 是否有收集和发布这些数据的服务?

自设置此服务器的第一天起,我就进行了无数次登录尝试。

fail2ban

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

GRUB“核心映像中可能缺少某些模块”警告

一个硬盘从我的 RAID 中崩溃,我添加了一个新硬盘。
现在我想将 GRUB 安装到新硬盘上:使用grub-install /dev/sdb. 我收到这些警告:

Installing for i386-pc platform.
grub-install: warning: Couldn't find physical volume `(null)'. Some modules may be missing from core image..
grub-install: warning: Couldn't find physical volume `(null)'. Some modules may be missing from core image..
Installation finished. No error reported.
Run Code Online (Sandbox Code Playgroud)

update-grub2我得到:

Generating grub configuration file ...
/usr/sbin/grub-probe: warning: Couldn't find physical volume `(null)'. Some modules may be missing from core image..
/usr/sbin/grub-probe: warning: Couldn't find physical volume `(null)'. Some …
Run Code Online (Sandbox Code Playgroud)

ubuntu kernel grub grub2

16
推荐指数
3
解决办法
3万
查看次数

一些服务器的正确 NTP 配置

我在一个小型网络中有大约 20 个 Linux 服务器,我需要它们的时钟彼此非常接近(例如在 20 毫秒内)。我已经开始将它们中的每一个都同步到 europe.pool.ntp.org,然后工作就完成了。

现在我有两个问题:

  1. 我是游泳池的明显负担吗?即,如果我从 20 台服务器或 2 台服务器命中,它对池有什么明显的影响吗?
  2. 如果它确实有所不同,那么什么设置/配置可以使我的子网保持同步并使池处于轻负载状态?有针对大型网络的指南(http://www.ntp.org/ntpfaq/NTP-s-config-adv.htm#AEN3101),但我发现没有针对小型网络的指南。

ntp

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

可视化 Linux 块设备(分区、LVM PV、LV、mdadm 设备...)的工具

我正在寻找一种工具,它将扫描我的无 GUI 服务器并以某种丰富的视觉格式创建所有块设备及其关系(磁盘分区、mdadm 设备、LVM PV 和 LV 等)的易于消化的粗略概述( html、pdf、svg、png...)。

这是一个简单的示例可视化:

    +--------+---------------------+ +-------------------+
    | sda1   |                     | |       sdc1        |
    +--------+---------------------+ +-------------------+
        +               +                      +
    +--------+---------------------+ +-------------------+
    | sdb1   |                     | |       sdd1        |
    +--------+---------------------+ +-------------------+
        |               |                      |
        v               v                      v
    +---+---+ +---------+----------+ +--------+----------+
    |  md0  | |        md1         | |       md2         |
    +-------+ +---------+----------+ +--------+----------+
    | /boot |                    \     /
      ext4                        \   /
                                   \ /
                                    +
                                    |
                                    v
              +------------------------------------------+
              |                vgmain                    |
              +------+-----------------+-----------------+
              |/root |  /home          |   /var          | …
Run Code Online (Sandbox Code Playgroud)

linux hard-drive visualization block-device

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

pfsense:动态 dns 不会自动更新 - 它知道它已经过时了

我正在使用带有 pfsense 的 dyndns,并且我在 WAN 线路上连接了一个路由器(DHCP 配置)。每隔几天我的 ISP 就会更改我的 IP,而 pfsense 无法自动更新它。如果我打开 WebUI 并访问动态 dns 服务,它会以红色显示我的 IP,因为它知道它不是当前的 IP。如果我单击“保存并更新”,它会正确更新 IP。

pfsense

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

如何为持久网络名称编写规则?

我知道一个进程会根据 /lib/udev/rules.d/75-persistent-net-generator.rules 中的规则生成持久网卡名称。我也知道如何用一个简单的方法完全禁用这个过程

echo '#' > /etc/udev/rules.d/75-persistent-net-generator.rules
Run Code Online (Sandbox Code Playgroud)

但我读到我“也可以编写自己的规则文件来为接口命名——如果已经设置了名称,持久性规则生成器将忽略该接口”(/etc/udev/rules.d/README 确认这个有可能)。

您能否提供有关如何编写此类规则的说明和/或示例?(我主要关心 Debian/Ubuntu,而对 CentOS 则不太关心)。就我而言,我想添加如下规则:

  • MAC A 或 B 的卡应命名为 eth0
  • MAC C 或 D 卡应命名为 eth1
  • 其他任何东西都遵循默认命名方案

作为我为什么要编写自定义规则的一个具体示例:我有两台相同的服务器,一个板载 LAN 和一个 PCI LAN。如果发生硬件故障,我希望能够将磁盘从 HW#1 移动到 HW#2,并且 eth0 继续指向板载卡并将 eth1 继续指向 PCI 卡(没有人想弄乱中间的布线)很重要硬件故障恐慌)。我目前的解决方法有效,但工作量很大 [1] 所以我想知道编写自定义规则是否可以让我表达上述规则


[1] 在 HW#1 中安装操作系统并保留 /etc/udev/rules.d/70-persistent-net.rules 的副本。将磁盘移动到 HW#2 并保留同一文件的第二个副本。连接两个副本并手动编辑 NAME="ethX" 部分。用我的版本替换 /etc/udev/rules.d/70-persistent-net.rules。最后使用禁用自动创建新的 70-persistent-net.rules

echo '#' > /etc/udev/rules.d/75-persistent-net-generator.rules
Run Code Online (Sandbox Code Playgroud)

networking linux udev

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

KVM/libvirt:如何在具有不同 CPU 的 2 台主机之间迁移

我试图将我的 KVM 主机从带有 AMD cpu 的主机迁移到带有 Intel CPU 的主机,但是当我运行时virsh start guest_name我得到了error: unsupported configuration: CPU model ... is not supported by hypervisor.

我知道 KVM 支持这样的迁移(在 FAQ 中他们甚至谈到了 64 位 AMD/Intel CPU 之间的实时迁移)。我该怎么办?

libvirt kvm-virtualization

4
推荐指数
1
解决办法
3220
查看次数

如何让 ntpd 仅服务于我的本地子网

我有一些带有公共 Internet IP 地址的服务器,例如A.B.C.x. 我的一位主机 ( A.B.C.10) 运行 ntpd,我让它从 europe.pool.ntp.org 同步时间。

现在我只想允许来自我的子网( A.B.C.x) 的主机能够同步到A.B.C.10. 默认情况下,全世界都可以同步到我的 NTP 服务器。我该如何实现?


我能找到的所有示例都假设我正在同步到特定的 IP 地址,但我同步到了 DNS 名称,并且据我所知,DNS 名称x.europe.pool.ntp.org 指向的 IP 地址是可变的。因此,我无法在防火墙中设置例外,也无法使用restrictntp.conf 中的选项,因为它也只接受IP 地址而不接受DNS 名称(哦!并且restrict像防火墙规则一样适用于客户端和服务器!)

firewall ntp iptables ntpd

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

sshd 仅在使用 bash -x /etc/init.d/sshd restart 重新启动时绑定到低编号端口

我在 /etc/ssh/sshd_config 中添加了行“端口 110”,就在现有行“端口 22”的/etc/init.d/sshd restart下方,然后期待看到 sshd 侦听两个端口(22 和 110)。但是 netstat -anp 显示 sshd 只侦听默认端口 (22)。

后来我尝试bash -x /etc/init.d/sshd restart并惊讶地看到 sshd 立即绑定到端口 110 !/etc/init.d/sshd restart再次发出一秒钟无视我的变化。重新启动也会忽略我的更改,所以我被卡住了,完全不解。

更新这个奇怪的行为出现在低端口(<1024)

这是在 CentOS 6 服务器上。


细节

这是我对 /etc/ssh/sshd_config 的修改:

grep ^Port /etc/ssh/sshd_config
Port 22
Port 110
Run Code Online (Sandbox Code Playgroud)

netstat 后的输出 bash -x /etc/init.d/sshd restart

netstat -anp | grep -i listen|grep sshd|grep -v :::
tcp        0      0 0.0.0.0:110                 0.0.0.0:*                   LISTEN      7031/sshd           
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      7031/sshd …
Run Code Online (Sandbox Code Playgroud)

ssh centos

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