我正在尝试为letsencrypt挑战调试我的DNS设置。
我知道 BIND9 可能没有收到请求,尽管它是在当天早些时候。不幸的是,.jnl 没有被创建。
我想知道的是如何从远程计算机发送请求以最终查看另一端发生了什么故障。letencrypt 如何向我们发送 TXT 字段更新?我可以运行哪些命令行命令?
这将等效于nsupdate
命令,但来自远程计算机。
我正在尝试为letsencrypt挑战调试我的DNS设置。
我知道 BIND9 可能没有收到请求,尽管它是在当天早些时候。不幸的是,.jnl 没有被创建。
我想知道的是如何从远程计算机发送请求以最终查看另一端发生了什么故障。letencrypt 如何向我们发送 TXT 字段更新?我可以运行哪些命令行命令?
这将等效于nsupdate
命令,但来自远程计算机。
我有一个相当简单的设置,我有两台计算机:
计算机 A. 具有正常的 NTP 设置并使用标准 Internet 资源(根据 Ubuntu)来确定时间。它还允许查询 IP 10.0.2.0/24
:
restrict 10.0.2.0 mask 255.255.255.0 nomodify notrap
计算机 B. 具有正常的 NTP 设置,但所有源都更改为使用10.0.2.1
(即计算机 A)。
有时,计算机 A 会从其中一个源获得死亡之吻信号。结果,它完全杀死了计算机 B 的 NTP(即看起来像是直接传输 KoD)。
有没有办法知道 NTP 服务器的状态是否只是发送 KoD 消息?(还有,我该如何摆脱这种情况?当我查看时,日志中显示的所有IP地址都没有被服务器使用?!所以我不明白为什么它坚持将KoD发送给它的客户端) .
到目前为止,我发现了两件事:
ntpq
我可以ntpq
这样跑:
ntpq -pn
当 NTP 服务器工作时,我可以在计算机满意的 IP 地址前看到一个星号。就我而言,所有状态标志(第一列、、、、+
等-
)都消失了。据我所知,这意味着 NTP 服务不满意并且没有执行同步。*
#
这是一个仍然有效的示例(即第一列中有标志):
remote refid st t when poll reach delay offset jitter
==============================================================================
10.0.2.255 .BCST. 16 B - 64 0 0.000 0.000 0.000
#51.77.203.211 134.59.1.5 3 u 4 64 1 171.248 -743.64 691.917
+72.5.72.15 216.218.254.202 2 u 2 64 1 19.223 -778.34 686.200
+159.69.25.180 192.53.103.103 2 u 3 64 1 237.733 -775.41 701.376
+173.0.48.220 43.77.130.254 2 u 2 64 1 35.489 -778.85 669.187
38.229.56.9 172.16.21.35 2 u 31 64 1 153.976 -268.90 122.557
+137.190.2.4 .PPS. 1 u 31 64 1 93.797 -253.69 116.289
+150.136.0.232 185.125.206.71 3 u 35 64 1 95.667 -178.19 114.912
94.154.96.7 194.29.130.252 2 u 31 64 1 237.560 -231.88 107.230
+162.159.200.123 10.4.1.175 3 u 34 64 1 16.246 -199.68 115.561
*216.218.254.202 .CDMA. 1 u 35 64 1 52.906 -193.84 131.148
91.189.91.157 132.163.96.1 2 u 45 64 1 87.772 -5.716 0.000
+204.2.134.163 44.24.199.34 3 u 34 64 1 16.711 -199.12 116.777
+74.6.168.73 208.71.46.33 2 u 35 64 1 69.772 -189.21 128.119
91.189.89.199 17.253.34.123 2 u 45 64 1 165.471 -3.708 0.000
+216.229.0.49 216.218.192.202 2 u 35 64 1 71.437 -178.94 97.505
91.189.89.198 17.253.34.123 2 u 44 64 1 172.852 -17.899 0.000
ntpdate -q <ip>
该ntpdate
命令实际上会告诉我 NTP 是否正在接受数据包。这是因为如果不是,它会给出错误消息:
$ sudo ntpdate -q 10.0.2.1
server 10.0.2.1, stratum 4, offset 5.194725, delay 0.02652
21 Jul 15:22:48 ntpdate[13086]: no server suitable for synchronization found
过了一会儿,当我的主服务器失去了*
它首先乐意与之同步的一台服务器上的状态时,就会发生这种情况......
现在......我仍然需要了解我必须做些什么来解决这个问题......
这可能会有所帮助,以下是有关从完全重新启动重新启动的日志:
Jul 21 18:29:13 vm-ve-ctl kernel: [ 434.275481] audit: type=1400 audit(1626917353.636:43): apparmor="DENIED" operation="open" profile="/usr/sbin/ntp
d" name="/snap/bin/" pid=3896 comm="ntpd" requested_mask="r" denied_mask="r" fsuid=0 ouid=0
Jul 21 18:29:13 vm-ve-ctl ntpd[3896]: ntpd [email protected] (1): Starting
Jul 21 18:29:13 vm-ve-ctl ntpd[3896]: Command line: /usr/sbin/ntpd -p /var/run/ntpd.pid -g -u 126:129
Jul 21 18:29:13 vm-ve-ctl ntpd[3901]: proto: precision = 0.190 usec (-22)
Jul 21 18:29:13 vm-ve-ctl ntpd[3901]: Cannot open logfile /var/log/ntp.log: Permission denied
Jul 21 18:29:13 vm-ve-ctl kernel: [ 434.291490] audit: type=1400 audit(1626917353.652:44): apparmor="DENIED" operation="capable" profile="/usr/sbin/
ntpd" pid=3901 comm="ntpd" capability=1 capname="dac_override"
Jul 21 18:29:13 vm-ve-ctl ntpd[3901]: leapsecond file ('/usr/share/zoneinfo/leap-seconds.list'): good hash signature
Jul 21 18:29:13 vm-ve-ctl ntpd[3901]: leapsecond file ('/usr/share/zoneinfo/leap-seconds.list'): loaded, expire=2021-12-28T00:00:00Z last=2017-01-01T
00:00:00Z ofs=37
Jul 21 18:29:13 vm-ve-ctl ntpd[3901]: Listen and drop on 0 v6wildcard [::]:123
Jul 21 18:29:13 vm-ve-ctl ntpd[3901]: Listen and drop on 1 v4wildcard 0.0.0.0:123
Jul 21 18:29:13 vm-ve-ctl ntpd[3901]: Listen normally on 2 lo 127.0.0.1:123
Jul 21 18:29:13 vm-ve-ctl ntpd[3901]: Listen normally on 3 enp0s3 192.168.2.120:123
Jul 21 18:29:13 vm-ve-ctl ntpd[3901]: Listen normally on 4 enp0s8 10.0.2.1:123
Jul 21 18:29:13 vm-ve-ctl ntpd[3901]: Listen normally on 5 lo [::1]:123
Jul 21 18:29:13 vm-ve-ctl ntpd[3901]: Listen normally on 6 enp0s3 [fe80::a00:27ff:fe25:38ff%2]:123
Jul 21 18:29:13 vm-ve-ctl ntpd[3901]: Listen normally on 7 enp0s8 [fe80::a00:27ff:fe35:c30b%3]:123
Jul 21 18:29:13 vm-ve-ctl ntpd[3901]: Listening on routing socket on fd #24 for interface updates
Jul 21 18:29:14 vm-ve-ctl ntpd[3901]: Soliciting pool server 51.77.203.211
Jul 21 18:29:15 vm-ve-ctl ntpd[3901]: Soliciting pool server 159.69.25.180
Jul 21 18:29:15 vm-ve-ctl ntpd[3901]: Soliciting pool server 72.5.72.15
Jul 21 18:29:16 vm-ve-ctl ntpd[3901]: Soliciting pool server 198.251.86.68
Jul 21 18:29:16 vm-ve-ctl ntpd[3901]: Soliciting pool server 173.0.48.220
Jul 21 18:29:16 vm-ve-ctl ntpd[3901]: Soliciting pool server 38.229.56.9
Jul 21 18:29:17 vm-ve-ctl ntpd[3901]: Soliciting pool server 150.136.0.232
Jul 21 18:29:17 vm-ve-ctl ntpd[3901]: Soliciting pool server 94.154.96.7
Jul 21 18:29:17 vm-ve-ctl ntpd[3901]: Soliciting pool server 137.190.2.4
Jul 21 18:29:18 vm-ve-ctl ntpd[3901]: Soliciting pool server 162.159.200.123
Jul 21 18:29:18 vm-ve-ctl ntpd[3901]: Soliciting pool server 216.218.254.202
Jul 21 18:29:18 vm-ve-ctl ntpd[3901]: Soliciting pool server 91.189.91.157
Jul 21 18:29:19 vm-ve-ctl ntpd[3901]: Soliciting pool server 91.189.89.199
Jul 21 18:29:19 vm-ve-ctl ntpd[3901]: Soliciting pool server 74.6.168.73
Jul 21 18:29:19 vm-ve-ctl ntpd[3901]: Soliciting pool server 204.2.134.163
Jul 21 18:29:20 vm-ve-ctl ntpd[3901]: Soliciting pool server 91.189.89.198
Jul 21 18:29:20 vm-ve-ctl ntpd[3901]: Soliciting pool server 216.229.0.49
Jul 21 18:29:20 vm-ve-ctl ntpd[3901]: Soliciting pool server 2604:ed40:1000:1711:d862:f5ff:fe4e:41c4
Jul 21 18:29:21 vm-ve-ctl ntpd[3901]: receive: Unexpected origin timestamp 0xe4a34871.ac57f05d does not match aorg 0000000000.00000000 from [email protected] xmt 0xe4a34871.65648c54
我不知道它什么时候开始变坏。我还看到了以下我认为可能与它有关的内容(即,当这种情况发生时,相应的 IP 将从列表中删除!),但现在已经很糟糕了,我上次运行时没有发生这样的错误。
Jul 21 18:08:57 vm-ve-ctl ntpd[9764]: 92.243.6.5 local addr 192.168.2.120 -> <null>
注意:192.168.2.120 是故障计算机的 IP。它是一个虚拟盒子。它已经工作了几个月......不过,也许发生了一些变化,这让它不开心。
我发现这篇关于消息问题的... -> <null>
帖子。但是,我认为我们在 Ubuntu 18.04 上有一个更新的版本:
SUSE 最低推荐版本:ntp-4.2.8p7-11.1
Ubuntu 18.04 版本:1:4.2.8p10+dfsg-5ubuntu7.3
以防万一,我尝试将 VM 连接到主机,但仍然会出现巨大的偏移和抖动。有什么可以改变的?!
remote refid st t when poll reach delay offset jitter
==============================================================================
10.0.2.10 .POOL. 16 p - 64 0 0.000 0.000 0.000
10.0.2.10 132.163.97.6 2 u 54 64 3 0.457 -5254.2 3917.68
正如 Paul Gear 所问的,这里是 ntpq 的输出以及其他详细信息:
$ ntpq -ncrv
associd=0 status=0028 leap_none, sync_unspec, 2 events, no_sys_peer,
version="ntpd [email protected] (1)", processor="x86_64",
system="Linux/4.15.0-151-generic", leap=00, stratum=4, precision=-23,
rootdelay=17.930, rootdisp=5019.260, refid=173.255.215.209,
reftime=e4a44f7a.1c2ec778 Thu, Jul 22 2021 13:11:38.110,
clock=e4a45030.c8a4b259 Thu, Jul 22 2021 13:14:40.783, peer=0, tc=6,
mintc=3, offset=-109.527915, frequency=-1.707, sys_jitter=0.000000,
clk_jitter=38.724, clk_wander=0.000, tai=37, leapsec=201701010000,
expire=202112280000
以下是可用时钟列表和当前使用的时钟:
$ grep . /sys/devices/system/clocksource/clocksource*/[ac]*clocksource
/sys/devices/system/clocksource/clocksource0/available_clocksource:kvm-clock tsc acpi_pm
/sys/devices/system/clocksource/clocksource0/current_clocksource:kvm-clock
最后,dmesg
关于时钟源选择过程的输出:
$ dmesg | grep clocksource
[ 0.000000] clocksource: kvm-clock: mask: 0xffffffffffffffff max_cycles: 0x1cd42e4dffb, max_idle_ns: 881590591483 ns
[ 0.000000] clocksource: refined-jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645519600211568 ns
[ 0.283117] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[ 1.161844] clocksource: Switched to clocksource kvm-clock
[ 1.208316] clocksource: acpi_pm: mask: 0xffffff max_cycles: 0xffffff, max_idle_ns: 2085701024 ns
[ 2.329228] clocksource: tsc: mask: 0xffffffffffffffff max_cycles: 0x1db81a3240f, max_idle_ns: 440795250379 ns
KB4461614 于 2019 年 1 月 8 日发布。它是针对 MS-Windows Office 32 位的安全更新。
只有我的电脑是 MS-Windows 64 位。
不仅如此,我从未安装过 MS-Office,甚至没有安装免费版。
为什么操作系统会要求我安装那个补丁?
我收到一些这样的错误消息:
Jan 28 17:20:47 halk postfix/smtpd[29413]: NOQUEUE:
reject: RCPT from mail.m2osw.com[138.197.205.139]:
504 5.5.2 <SRS1=R3xB=m2osw.com==hj4N=ZL=lime.ocn.ne.jp=@com>:
Sender address rejected: need fully-qualified address;
from=<SRS1=R3xB=m2osw.com==hj4N=ZL=lime.ocn.ne.jp=@com>
to=<[email protected]> proto=ESMTP helo=<m2osw.com>
我不太确定我是否理解尖括号之间的“电子邮件”地址:
SRS1=R3xB=m2osw.com==hj4N=ZL=lime.ocn.ne.jp=@com
这对我来说看起来很垃圾,但也许它是一种信封形式?
原始 From 如下所示:
From: western union <"westernunion1."@lime.ocn.ne.jp>
(这是一封明确的垃圾邮件,但非垃圾邮件也会发生这种情况。)
据我所知,我的设置之前运行良好,但我将其中一台邮件服务器升级到了最新的后缀(以及 Ubuntu 16.04 而不是 14.04)。存档服务器不久前升级了。
当我从 gmail 向自己发送电子邮件时会发生此错误。然后 gmail 收到退回邮件。
设置是这样的:
+------------------+ +------------------+
| | | |
| Client |--->| Main Server |
| | | |
+------------------+ +------------------+
|
v
+------------------+
| |
| Archive Server |
| |
+------------------+
在Main Server上,电子邮件按预期工作。当电子邮件到达存档服务器时会发生错误。
当从一个后缀 MTA 转发到另一个时,是否有什么可以改变的东西以这种方式“破坏”电子邮件地址?
我想知道知道每个后端服务器的 loadavg 是否会有优势,并要求 HAProxy 将下一个请求发送到 loadavg 最低的计算机。
但是,我还没有看到任何可以在 HAProxy 中提供这种功能的东西。也许它不可用?
我发现这篇文章显示了一个带有use_backend
命令的前端定义,但我认为地图将被加载一次并在 HAProxy 运行的整个持续时间内缓存。否则,通过 loadavg 动态更改对项目进行排序的地图不会有任何区别......
frontend ft_items
[...]
use_backend %[path,lower,map(/etc/haproxy/items.map,bk_default)]
我不清楚轮询对我的应用程序是否足够好,因为有些请求需要 50 毫秒(图像、CSS 等),而其他请求可能需要 2 秒(大型报告)。因此,检查计算机的 loadavg 似乎更符合此应用程序的要求。
当我们在 Linux 上开发一组复杂的服务时,我们开发了一个工具来逐个启动它们。创建此类工具的众多考虑因素之一是可以启动项目的顺序,但也是确保在守护进程死亡时,守护进程自动重新启动的一种方法。还有在所有服务之间共享的服务器范围的参数。
但是,我现在有一个问题,关闭这样的系统需要时间。关闭所有内容可能需要多达 10 秒的时间。
我想知道的是:下定义的脚本需要多长时间/etc/init.d/...
才能关闭它控制的守护进程?
虽然我想如果我们将所有这些守护进程分解在单独的包中(因为启动脚本现在可以包含依赖项列表......),我们会遇到完全相同的问题。所以在这一点上,我们更喜欢保持原样......
是否存在一个明确定义/已知的关闭时间,最多必须花费多少时间才能对所有守护进程保持优雅?
我已经看到很多人一起使用 ESTABLISHED和RELATED 标志来接受流量,一旦之前接受了连接(请参阅允许已建立的会话)。
假设我使用以下规则设置防火墙:
-A INPUT -i lo -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 80 -d x.x.x.x --syn -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp -s x.x.x.x --dport 22 -d x.x.x.x --syn -j ACCEPT
-A INPUT -i eth0 -p tcp -m state --state ESTABLISHED,RELATED -m tcp ! --syn -d x.x.x.x -j ACCEPT
-A INPUT -i all -p all -j REJECT
我希望任何新连接都会被最后一条规则阻止,除非它是端口 80 或端口 22。但是,对于端口 22,我将连接限制为一个输入 IP 地址(比如我的家庭办公室)。
然后我希望规则--state ESTABLISHED,RELATED
只接受以前使用端口 80 或端口 22 的规则连接的流量。
但是,从我在防火墙计数器中看到的情况来看,感觉如果我同时拥有 ESTABLISHED和RELATED,那么 TCP 上的任何流量都可以发送到服务器......
在我的测试中,假设我在端口 8080 上有另一个 HTTP 服务器,我首先连接到明确允许的端口 80,然后,我可以以某种方式连接并发送 GET 并在端口 8080 上接收响应,即使它没有打开。
同样,如果我在端口 22 上连接,则当前打开并在 0.0.0.0 上侦听的任何其他 TCP 端口都可以访问。我担心的是,这意味着连接到端口 80 的人现在可以访问端口 22,因为 RELATED 允许它(假设端口 80 已打开,然后与端口 22 建立新连接)。
我对么?我正在考虑将规则改为:
-A INPUT -i eth0 -p tcp -m state --state ESTABLISHED -m tcp ! --syn -d x.x.x.x -j ACCEPT
(即没有 RELATED 状态,只有 ESTABLISHED)
我还认为! --syn
会阻止使用该规则建立新连接,但这似乎也不正确......
我只用控制台安装了 Solaris 11。就像使用 Linux 一样,您可以使用 Alt-F1 到 Alt-F6 组合键在控制台之间切换。伟大的。只是,每次您这样做时,它都会要求您输入密码。
有没有办法解除控制台上的锁定,这样我就不必每分钟重新输入密码 10 次?
所以,我只是在 droplet 上设置了一个新服务器,然后查看 eth0,ifconfig
我可以看到网卡设置为一个 IPv4 地址和一个 IPv6 地址(为了保护而更改了 IPv4):
inet addr:192.168.111.111 Bcast:192.168.111.255 Mask:255.255.240.0
inet6 addr: fe80::601:29ff:fe72:9601/64 Scope:Link
我看到 IPv6 是本地的,因为它以fe80
.
然后我设置Apache2
并尝试使用 IPv4 地址加载首页(因为我没有为 IPv6 设置 AAAA 记录,它必须是 IPv4 加上 IPv6 是本地的。)但是,当我看听时,Apache2
服务器如下所示:
tcp6 0 0 :::443 :::* LISTEN
SSH 监听器做同样的事情。
所以我想知道的是......系统如何将传入的 IPv4 连接到侦听的 IPv6?之前,我记得,我不得不更改Apache2
设置以强制侦听 IPv4 地址。
我还有一个问题,因为 IPv6 是一个本地地址,我想我可以删除 ip6tables 中的大部分内容,对吗?不理会lo
界面,但放下其他任何东西,你会说什么?