我的 CloudFormation 模板创建了一个自动缩放组并使用实用程序脚本 /opt/aws/bin/cfn-init 对其进行引导。当我从模板中删除引导程序部分时,自动缩放创建没有任何问题,但我添加它 CloudFormation 堆栈失败并在 /var/log/cloud-init.log 中添加行:
Error: AutoScalingGroupName does not specify any metadata
Run Code Online (Sandbox Code Playgroud)
上面的行紧跟在以下命令之后:
/opt/aws/bin/cfn-init --verbose --configsets orderedConfig --region us-east-1 --stack AS15 --resource AutoScalingGroupName --access-key XXXXXXXXXXXXX --secret-key XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Run Code Online (Sandbox Code Playgroud)
深入挖掘一点,在 cfn-init 中,我在退出点添加了以下几行:
from pprint import pprint
pprint(vars(detail))
Run Code Online (Sandbox Code Playgroud)
在运行之前的 cfn-init 命令时,我得到以下跟踪:
{'_description': None,
'_lastUpdated': datetime.datetime(2012, 7, 12, 14, 52, 42),
'_logicalResourceId': u'AutoScalingGroupName',
'_metadata': None,
'_physicalResourceId': u'AS15-AutoScalingGroupName-HNPOXXXXXXXX',
'_resourceStatus': u'CREATE_COMPLETE',
'_resourceStatusReason': None,
'_resourceType': u'AWS::AutoScaling::AutoScalingGroup',
'_stackId': u'arn:aws:cloudformation:us-east-1:XXXXXXXXXXXXX:stack/AS15/XXXXXXXX-cc30-11e1-XXXXXX-XXXXXXXXXX',
'_stackName': u'AS15'}
Run Code Online (Sandbox Code Playgroud)
如您所见,元数据字段为空,这就是它无法创建堆栈的原因。与 autoscale 一起使用时, cfn-init 是否有任何已知的副作用?
从 Ubuntu 8.04 升级到 10.04 后,我的 DNS 不再正常工作。
当我运行 named-checkzone example.com /var/cache/bind/example.com.zone.db 时,我不断收到此错误
zone example.com/IN: NS 'mx002a.example.com' has no address records (A or AAAA)
zone example.com/IN: not loaded due to errors.
Run Code Online (Sandbox Code Playgroud)
在/var/cached/bind/example.com.db
$TTL 3D
@ IN SOA mx002a.example.com. chantra.example.com. (
200608081 ; serial, todays date + todays serial #
8H ; refresh, seconds
2H ; retry, seconds
4W ; expire, seconds
1D ) ; minimum, seconds
;
;
mx002a.example.com IN A 192.168.85.19
example.com. IN NS mx002a.example.com.
mx001 60 IN A …Run Code Online (Sandbox Code Playgroud) 我在使用 cron 发送电子邮件时遇到了一些麻烦。我的 ISP 要求“发件人:”字段与发送电子邮件的电子邮件地址相匹配,否则电子邮件将被拒绝。由于 cron 将“发件人:”字段硬编码为“root(Cron Daemon)”,因此不会发送这些电子邮件。
我已经设置了 msmtp 并且可以从命令行毫无问题地发送电子邮件。事实上,我已经将我的一些 cron 作业包装在一个发送电子邮件本身的脚本中。这工作正常,但我想要一个更优雅的解决方案。
我最初使用的是包msmtp-mta,它只是符号链接/usr/lib/sendmail,/usr/bin/msmtp以便 cron 使用 msmtp 发送电子邮件。由于这不起作用,我删除了该包并放入了一个 bash 脚本,/usr/lib/sendmail该脚本应该只从标准输入中读取并发送带有正确标题的电子邮件:
#!/bin/bash
HEADERS="To: <myemail>
From: Cron <myotheremail>
Subject: Vixie-cron snooper ($@)
"
INPUT=$( cat /dev/stdin )
echo -e "$HEADERS""Stdin:\n$INPUT\n" | msmtp <myemail>
echo "$HEADERS""Stdin:\n$INPUT\n" > /tmp/vixielog
Run Code Online (Sandbox Code Playgroud)
然而,这并没有达到预期的效果。我刚刚收到一封几乎是空的电子邮件,/tmp/vixielog内容相同:
To: <myemail>
From: Cron <myotheremail>
Subject: Vixie-cron snooper (-i -FCronDaemon -oem <myemail>)
Stdin:
Run Code Online (Sandbox Code Playgroud)
电子邮件来得正是时候,所以我知道 cron 作业正在正常运行,但我没有得到输出。我如何调整这种方法以在电子邮件中获取命令的输出?
我正在寻找一种方法来安全地破坏 ext3 分区,以便下次启动时可以通过 fsck 恢复它,以进行测试。谢谢!
我刚刚用过apt-get update,我的 apache 已经更新到2.4.6.
我想安装 apxs 来编译模块,但出现此错误
The following packages have unmet dependencies:
apache2-prefork-dev : Depends: apache2.2-common (= 2.2.22-1ubuntu1.4) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
Run Code Online (Sandbox Code Playgroud) 我在 127.0.0.1:9000 上使用 tcp 套接字将 nginx 连接到 php5-cgi。但是我想确保不能对这个 IP 发出外部请求,这样攻击者就不能混淆 IP 并绕过 nginx 用 php 做讨厌的事情。
现在我想知道是否真的可以进行这种利用,如果可以,我该如何使用 iptables 来避免它?
我的 iptables 中有一条记录拒绝连接的规则,即-A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied: " --log-level 7
我想要一个类似的规则来记录所有已建立的连接,即与所有端口的非拒绝连接。我该怎么做,我尝试搜索谷歌并进行实验,但找不到匹配的字符串
所以基本上我愚蠢到在我的 sshd 配置文件上写了可能不正确的选项。我没有重新启动服务并检查新配置是否有效,而是重新启动机器,自动将我注销(我知道......)。现在,当我尝试通过 ssh 连接到这台机器时,连接被拒绝。我怀疑 ssh 服务器无法启动,或无法正常启动,因为配置不正确。我想知道是否有任何机会可以使用 ssh(或替代协议)远程使用这台机器,以便我可以解决问题。
了解如何防止不正确的选项(例如有关 chroot 特定用户的选项)使完整的 ssh 功能变得无用也会很有帮助。
我有一个带有 LE 证书的主机,它在浏览器中运行良好,但我仍然无法使用curl, openssl, wget, POST(libwww-perl) 进行连接:
卷曲
# curl -v -3 https://example.com/
* Hostname was NOT found in DNS cache
* Trying 123.123.123.123...
* Connected to example.com (123.123.123.123) port 443 (#0)
* successfully set certificate verify locations:
* CAfile: none
CApath: /etc/ssl/certs
* SSLv3, TLS handshake, Client hello (1):
* Unknown SSL protocol error in connection to example.com:443
* Closing connection 0
Run Code Online (Sandbox Code Playgroud)
openssl
# openssl s_client -connect example.com:443
CONNECTED(00000003)
write:errno=104
---
no peer certificate …Run Code Online (Sandbox Code Playgroud) 在我的一些生产环境时间漂移,我在我的系统上安装了 ntp。
当我执行 ntpstat 命令时,我可以看到下面的输出。
synchronised to NTP server (169.254.169.123) at stratum 4
time correct to within 20 ms
polling server every 512 s
Run Code Online (Sandbox Code Playgroud)
但我无法理解这个输出。
就像如果我的 linux 时间漂移了 1 秒,那么我执行 ntpstat 命令该命令将执行什么操作。
是命令从 ntp 服务器同步时间并自动调整我的本地时间。
我如何确保我的 linux 时间不正确并且 ntp 更正了这一点。
iptables ×2
linux ×2
apache-2.2 ×1
apache-2.4 ×1
autoscaling ×1
bind ×1
cron ×1
curl ×1
email ×1
ext3 ×1
firewall ×1
fsck ×1
lets-encrypt ×1
networking ×1
nginx ×1
ntp ×1
openssl ×1
ssh ×1
ssl ×1
ubuntu ×1