我认为答案是否定的,但我想确保我没有遗漏任何东西。一个EC2实例是否可以同时拥有多个VPC中的IP地址?
我尝试创建 2 个 VPC,然后创建两个网络接口,每个 VPC 各一个,但似乎无法将它们附加到同一个 EC2 实例,因为无法将它们附加到不在该 VPC 上的实例,这是正确的吗?
例如,我在vpc1中创建vpc1和eni1(网络接口)。然后我在vpc2中创建vpc2和eni2。然后我创建 ec21(一个 EC2 实例)并将其放入 vpc1 中,并使用 eni1 作为其网络接口。当我打开 eni2 并选择附加时,我无法选择 ec21,它显示:
vpc2 中的 us-esat-1f 中没有正在运行或已停止的实例。
我正在尝试使用 libpam-google-authenticator 通过 ssh 启用 2FA。并非所有用户都需要启用身份验证器。每个人都使用 ssh 公钥,但没有人有密码。我正在运行 Debian buster,并且还尝试了 bullseye 的 libpam-google-authenticator。
我的问题是,无论我在 PAM 配置中输入什么内容,未启用身份验证器的用户都不会直接登录,而是总是要求输入密码。
我已经安装了 libpam-google-authenticator 并配置了 /etc/ssh/sshd_config:
PasswordAuthentication no
ChallengeResponseAuthentication yes
AuthenticationMethods publickey,keyboard-interactive
PasswordAuthentication no
PermitEmptyPasswords no
Run Code Online (Sandbox Code Playgroud)
我无法计算出正确的 PAM 配置,以便没有 .google_authenticator 文件的用户仍然可以登录。根据我使用的内容,系统要么提示用户输入密码(他们没有密码),要么不提示完全允许进入。
在 /etc/pam.d/sshd 中,我尝试过(像这样Trying to get SSH with public key (no password) + googleauthenticatorworking on Ubuntu 14.04.1):
#@include common-auth
auth required pam_google_authenticator.so debug nullok
Run Code Online (Sandbox Code Playgroud)
在这种情况下,没有身份验证器设置的用户将通过以下调试被拒绝;
Aug 05 15:11:18 <host> sshd(pam_google_authenticator)[746624]: debug: start of google_authenticator for "<user>"
Aug 05 15:11:18 <host> sshd(pam_google_authenticator)[746624]: debug: …Run Code Online (Sandbox Code Playgroud) 我有一个只发送邮件的服务器,如下所示:
django/python --> postfix -----> smtp-relay.gmail.com -----> destination
当我打开收到电子邮件的 gmail 客户端时,并检查它说的详细信息: security: Standard encryption (TLS) Learn more
现在我怀疑它来自smtp-relay.gmail.com--> gmail 目的地的说法是 TLS,但我担心我正在以纯文本形式从 postfix 发送电子邮件到smtp-relay.gmail.com.
我的后缀配置文件有:
relayhost = smtp-relay.gmail.com:587
但是,如果我将其设置为:
relayhost = smtp-relay.gmail.com:25
它也有效。
如果我将 django 设置设置为EMAIL_USE_TLS = True并尝试发送电子邮件,它会失败并显示:
File "/usr/lib/python3.8/smtplib.py", line 755, in starttls
raise SMTPNotSupportedError(
smtplib.SMTPNotSupportedError: STARTTLS extension not supported by server.
Run Code Online (Sandbox Code Playgroud)
这让我觉得它没有使用 TLS,但我不知道如何验证。
我的要求是:
有很多答案,但它们要么不正确(声称您需要解密流量才能做到这一点),要么不完整。
我在 Circle CI“机器”执行器上运行 Ubuntu 20.04。今天我看到:
sudo apt-get install -y pkg1 pkg2
Run Code Online (Sandbox Code Playgroud)
正在抛出此警告:
W: --force-yes is deprecated, use one of the options starting with --allow instead
Run Code Online (Sandbox Code Playgroud)
我没有使用“--force-yes”。这是从哪里来的?甚至
sudo apt-get update
Run Code Online (Sandbox Code Playgroud)
抛出同样的警告。
我在我的 VPS 上使用 Mail Enable,并将生成的 DKIM(参见屏幕截图 1)复制到我的 DNS。(是的,我已经重新启动了 VPS):

现在我的 DNS 设置是在托管公司 A 上配置的,并指向我在公司 B 托管的 VPS:

现在奇怪的是,当我尝试检查 DKIM 有效性时,dmarcanalyzer.com 说它不正确,而 mxtoolbox.com 显示它是正确的。
我从 Google(和其他电子邮件服务提供商)获得的 DKIM 报告显示fail了 dkim 节点。请参阅此处的完整报告:

我通过以下方式发送电子邮件localhost(并且更愿意继续这样做),但我也想知道localhost特定域的 DKIM 是否可能发生冲突并导致此问题。
我已经与托管公司 A 联系,他们表示 DNS 设置是正确的,并且一切都已配置并按预期工作。我现在不知道还能在哪里配置我的 DKIM 设置。
附:我也在这里检查过:
更新1
通过 mail-tester.com,我得到您邮件的 DKIM 签名是:
v=1;
c=relaxed/relaxed;
h=mime-version:from:date:message-id:subject:to:content-type;
d=example.com;
s=default.domainkey;
a=rsa-sha256;
bh=9GbEYuoERz+rKK0duec8ZYNDPzF429KQdM3YJavh32U=;
b=YQxDCBHCx1n1aLE0uVyOb2QsT2wOnkFqziZcyZtdNsGtMwz2y7ItPpB1MMkL5VZJl8Jgtszh9DomKhBPQ50WwAmIi/ayrR8hq61h0I2zdBNOs9A2bTYSBd/H11iTXGOuc8FFS3GHj+ohh3E+r+V6gvi4NF5shQ041OEdeZNUigUDRRr0eRDUnrK2/jq5ERWNDcg3MCDZI7Kcgj75BDJKfxBioVesKTV3/iLLuoBiDdVRdjqdAQC0Izc7KXweYab0wAiWvsCKvzBAyh0ieYFYHR4Wy3RAsKNUAwJkOJLF2IzvIBJaeIU8KVqJHONJ+IV40l13EsMZQUINZhJG9hvbbw==;
Run Code Online (Sandbox Code Playgroud)
更新2
根据下面 @anx 的建议,我生成了一个新密钥rsa2021并将其添加到我的 DNS 中:
"v=DKIM1; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAum44LLMyisKD6mOwTaXQqNjYsI6bNBS4uzhA03RaifyRDmmIKUPNv1bGb3QGihdDFzKbL+aax6o3INZSFcf1o5rKr8+3a2gAf+p2daNlycFQFmsWK94h4Vtu6j0VZ5E7bElFI0NQ/MYBOVwUST6H5DOsygGK9uWm8zVSBk8QtknZlLCPJYjHYc8V3dejnYcNIjBDtPKCB20E0q0pzIm63Dn8Z78J9wSvsSGl4FLN/3Tr96RLxwhqu+tFN04OVpdmlKnM7IQ3pGFMSEXqUoucndPUqzaNgT/u8GtowBoz72UgpDzuxkiehvg7PK/FPC6Vj/jTwe9d3oj/ZMN2ujMWYQIDAQAB;"
然后我通过发送电子邮件smtp.example.com …
我已经安装containerd 1.4.9在 CentOS steam 8 服务器上。
基于此文档https://containerd.io/docs/getting-started/。我已经创建了containerd config default > /etc/containerd/config.toml这样的默认配置文件。
重新启动containerd后,当我运行crictl ps它时抛出以下错误
FATA[0000] listing containers failed: rpc error: code = Unimplemented desc = unknown service runtime.v1alpha2.RuntimeService
Run Code Online (Sandbox Code Playgroud)
如何修复这个错误?1.21.3修复此问题后,我想使用cfgroup将此节点加入到 Kubernets 集群systemd。
谢谢SR
根据这篇文章,我们预计 10,000 公里的距离至少 60 毫秒的 ping:
爱尔兰距离加利福尼亚大约 10,000 公里,因此这是我们期望的 ping。
我api.kraken.com从位于加利福尼亚州某处的爱尔兰ping 通。
我的 ping 怎么这么低 - 4 毫秒?
我ping在命令提示符中使用命令来测试这个:
而且绝对不只是我得到这么低的 ping。这是来自 check-host.net 的报告:
这是服务器的位置,使用iplocation.net:
如果有用,这是一个跟踪路由:
我已经使用 Graylog 设置了我的服务器日志记录,现在我看到我的日志被 level: 3 错误发送,如下所示:
systemd-udevd[1523120]: veth20996a5: Failed to get link config: No such device
Run Code Online (Sandbox Code Playgroud)
我认为 vethxxxxxxx 是 Docker 创建的接口,但我无法弄清楚是什么导致了这些错误。
任何帮助解决这个问题并找到这些错误原因的帮助都将非常感激。
该应用程序处理所有路由。所以这个基本配置块是有效的:
location / {
try_files $uri $uri/ /index.html;
}
Run Code Online (Sandbox Code Playgroud)
问题是我想在访问者请求某个 URI 时添加自定义标头。例如,/content。嗯,这一定很简单:
location ~ ^/content {
try_files $uri $uri/ /index.html;
add_header X-CUSTOM-HEADER value;
}
Run Code Online (Sandbox Code Playgroud)
但这是行不通的。Nginx 没有创建该标头。然后,我尝试try_files从内容块中删除该指令,但这显然不起作用,因为/content根目录中没有“真实”文件夹。因此,nginx 将抛出404 not found错误。
我还尝试将该块移动到根位置块内。也不工作。
在 Apache 中,可以使用以下命令轻松完成此操作:
<If "%{THE_REQUEST} =~ pattern">
Header set HEADER value;
</If>
Run Code Online (Sandbox Code Playgroud) debian ×2
apt ×1
aws-ec2 ×1
aws-vpc ×1
containerd ×1
dkim ×1
docker ×1
email ×1
kubernetes ×1
latency ×1
logging ×1
networking ×1
nginx ×1
pam ×1
ping ×1
postfix ×1
spam ×1
squid ×1
systemd ×1
two-factor ×1
ubuntu-20.04 ×1
udevd ×1
vps ×1