小编anx*_*anx的帖子

强制 ssh 使用代理,而不直接访问 IdentityFile

公司政策要求安全存储一些 ssh 密钥,例如存储在专用 USB 设备上。使用 gnupg 和 来使用未存储在主机上的密钥可以完美地工作enable-ssh-support,即使使用多个密钥时也是如此:

Host example.com
    HostName ssh.example.com
    IdentityFile ~/.ssh/smartcard.pub
Host example.net
    HostName git.example.net
    IdentityFile ~/.ssh/another-smartcard.pub
Host example.org
    HostName sftp.example.org
    IdentityFile ~/.ssh/id_rsa.pub

IdentitiesOnly yes
PasswordAuthentication no
PubkeyAuthentication yes
Run Code Online (Sandbox Code Playgroud)

但是,当拔掉硬件时,gpg 会从代理中删除密钥,随后的 ssh 调用会导致:

Enter passphrase for key '/home/user/.ssh/smartcard.pub':
Run Code Online (Sandbox Code Playgroud)

这看起来很奇怪,因为 ssh 和 ssh-agent 都应该清楚该文件仅包含公钥。如果 ssh 无法访问指定的密钥,是否有一种好方法可以让 ssh 详细失败,而不是要求输入(毫无意义的)密码?

不完整的解决方案:

  1. 删除IdentitiesOnly- ssh 然后将按预期尝试所有可用密钥- 但会导致服务器限制每个会话的身份验证尝试出现问题
  2. 以某种方式包装 ssh alias ssh='grep ^4096 <(ssh-add -l)' && ssh'- 有效,但如果有人想找出他的 ssh 设置被破坏的原因,则会引起头痛

ssh gpg ssh-keys ssh-agent

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

为什么 systemd 拒绝我的单元名称作为“既不是有效的调用 ID 也不是单元名称”?

我需要覆盖systemd模板的ExecStartParameter。我已经确认单元文件存在并通过验证。添加unique-name@.service.d/override.conf文件在某些​​机器上运行良好:

user@prod-west-1604$ systemctl --version | head -1
systemd 229
user@prod-west-1604$ file -b /etc/systemd/system/unique-name@.service
symbolic link to /lib/systemd/system/nginx.service

user@prod-west-1604$ sudo systemctl edit unique-name@.service
# (opens editor as expected)
Run Code Online (Sandbox Code Playgroud)

但是,在运行较新 systemd 版本的机器上,操作失败:

user@prod-east-1810$ systemctl --version | head -1
systemd 239
user@prod-east-1810$ file -b /etc/systemd/system/unique-name@.service
symbolic link to /lib/systemd/system/nginx.service

user@prod-east-1810$ sudo systemctl edit unique-name@.service
Failed to get the load state of unique-name@.service: Unit name unique-name@.service is neither a valid invocation ID nor unit name.
Run Code Online (Sandbox Code Playgroud)

为什么 …

systemd

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

拒绝:RCPT 来自未知[]:450 4.7.1 客户端主机被拒绝:找不到您的反向主机名

从我的本地网络发送电子邮件一切顺利。还可以通过 Thunderbird 或使用本地安装的 Roundcube 进行远程操作。但现在,我在亚洲,尝试使用 Thunderbird 发送电子邮件。日志中出现以下错误:

postfix/submission/smtpd[4588]: NOQUEUE: reject: RCPT from unknown[110.170.163.146]: 450 4.7.1 Client host rejected: cannot find your reverse hostname, [110.170.163.146]; from=<<me>@<mydomain.com>> to=<<me>@<mydomain.co>> proto=ESMTP helo=<[10.10.3.55]>
Run Code Online (Sandbox Code Playgroud)

dig +short -t A mail.<mydomain.com> 给出:xxx.xxx.xxx.xxx,我的服务器的 IP。

dig +short -x 110.170.163.146 给出:110-170-163-146.static.asianet.co.th。在这里你可以看到,我现在在泰国。

在雷鸟我有:

Server Name: mail.<mydomain.com>
Port: 587
Connection security: STARTTLS
Authentication method: Normal password
Username: <me>@<mydomain.com>
Run Code Online (Sandbox Code Playgroud)

master.cf 中的所有 smtpd 行:

submission     inet     n    -    y    -    -    smtpd
  -o syslog_name=postfix/submission
  -o smtpd_tls_security_level=encrypt
  -o smtpd_tls_wrappermode=no
  -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
  -o smtpd_recipient_restrictions=permit_mynetworks,permit_sasl_authenticated,reject
  -o smtpd_sasl_auth_enable=yes
  -o …
Run Code Online (Sandbox Code Playgroud)

postfix hostname smtpd

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

AAAA 没有 ANSWER 部分

当我dig whoami.akamai.net AAAA在我的电脑上做的时候,我得到了

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 32160
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4000
;; QUESTION SECTION:
;whoami.akamai.net.     IN  AAAA
Run Code Online (Sandbox Code Playgroud)

但是,如果我从 @1.1.1.1 或 @8.8.8.8 甚至 OpenDNS 尝试,我可以获得 AAAA RR。

什么阻止我的本地挖掘没有得到结果?

根据 RFC4074 ( https://tools.ietf.org/html/rfc4074#section-3 ):

假设权威服务器有一个 A RR 但没有主机名的 AAAA RR。然后,服务器应返回对该名称的 AAAA RR 查询的响应,响应代码 (RCODE) 为 0(表示没有错误)并且答案部分为空(参见 RFC 的 4.3.2 和 6.2.4 节) 1034)。这样的响应表明,对于所查询的名称,至少有一个与 AAAA 类型不同的 RR,然后存根解析器可以查找 A …

domain-name-system

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

TFS:git web 源代码浏览器中的不一致

我们一直在使用内部部署的 Team Foundation Server v. 15.117.27414.0.

一切正常,除了在项目的门户网站上,在代码页(代码浏览器)上,git 存储库中的所有文件都没有出现。例如,我们有一个 MVC 项目,里面有一个 Models 文件夹,有 11 个类,但是只有 7 个出现在网页中。项目的显示方式还有其他问题。例如,有两个同名的项目文件夹(一个字符大小写不匹配),内容相似,实际上应该有一个。

侧边栏显示两个同名文件夹 - 但不是所有文件!

所有这些都令人困惑。否则,一切正常。我们可以克隆项目或将其下载为 zip 文件,所有文件都在那里。它只是混淆了它在 TFS 门户中的“代码”选项卡下的显示方式。

git team-foundation-server path

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

spamhaus.org 正在阻止我们的 IP,因为我们使用了多个不相关的 HELO 值

spamhaus.org 正在阻止我们的 IP,因为我们使用多个域名从单个 IP 发送邮件。

消息是

使用 aaa.bbb.ccc.ddd 的设备(计算机、服务器、移动电话等)或设备上的应用程序受到感染、严重配置错误或受到损害。它正在端口 25 上与多个不相关的 HELO 值建立 SMTP 连接。

最近的检测时间为:2022 年 5 月 18 日,10:20:00 UTC(+/- 5 分钟)。观察到的 HELO 值为 xxx yyy zzz ,...

我们有很多不同的电子邮件域(一个客户 = 一个域),并且所有电子邮件都是从同一 IP 发送的(使用同一互联网网关的多个不同服务器)。

我们应该如何处理这个用例?我们目前在多个服务器上使用 exim4 作为邮件服务器。

exim spam-marked

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