AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-140833

Rich's questions

Martin Hope
Rich
Asked: 2020-06-13 09:04:38 +0800 CST

如何在 Amazon Linux 2 上安装 certbot

  • 0

我有一个运行 Amazon Linux 第 2 版 (Karoo) 的 EC2 虚拟机 我怎样才能获得certbot?

它附带awscli安装的工具,这些工具似乎与certbotin epel 不兼容:

$ sudo bash
# yum install -y epel-release
# yum-config-manager --enable epel
# yum install certbot certbot-dns-route53
# certbot certonly --dns-route53 --dns-route53-propagation-seconds 30 -d mysite.com
An unexpected error occurred:
ContextualVersionConflict: (botocore 1.13.36 (/usr/lib/python2.7/site-packages), Requirement.parse('botocore<1.6.0,>=1.5.0'), set(['boto3']))
Please see the logfile '/tmp/tmpVO1RPd/log' for more details.

此处简要讨论:https ://community.letsencrypt.org/t/contextualversionconflict-botocore-1-12-92/94922和此处:https ://unix.stackexchange.com/questions/415874/certbot-and- awscli-require-different-versions-of-botocore/456362#456362但这些修复对我不起作用(我想同时拥有 awscli)。

所以我尝试将它安装在 Python venv 中,这样我就可以拥有 certbot 和 awscli,但我得到了这个:

$ sudo bash
# yum install pip
# pip install virtualenv
# virtualenv env
# source env/bin/activate
# pip install certbot certbot-dns-route53
# certbot certonly --dns-route53 --dns-route53-propagation-seconds 30 -d mysite.com
Traceback (most recent call last):
  File "/home/ec2-user/certbot-venv/env/bin/certbot", line 5, in <module>
    from certbot.main import main
  File "/home/ec2-user/certbot-venv/env/lib/python2.7/site-packages/certbot/main.py", line 2, in <module>
    from certbot._internal import main as internal_main
  File "/home/ec2-user/certbot-venv/env/lib/python2.7/site-packages/certbot/_internal/main.py", line 21, in <module>
    from certbot._internal import cert_manager
  File "/home/ec2-user/certbot-venv/env/lib/python2.7/site-packages/certbot/_internal/cert_manager.py", line 16, in <module>
    from certbot._internal import storage
  File "/home/ec2-user/certbot-venv/env/lib/python2.7/site-packages/certbot/_internal/storage.py", line 79, in <module>
    def add_time_interval(base_time, interval, textparser=parsedatetime.Calendar()):
  File "/home/ec2-user/certbot-venv/env/lib/python2.7/site-packages/parsedatetime/__init__.py", line 270, in __init__
    self.ptc = Constants()
  File "/home/ec2-user/certbot-venv/env/lib/python2.7/site-packages/parsedatetime/__init__.py", line 2381, in __init__
    self.locale = get_icu(self.localeID)
  File "/home/ec2-user/certbot-venv/env/lib/python2.7/site-packages/parsedatetime/pdt_locales/icu.py", line 56, in get_icu
    result['icu'] = icu = pyicu.Locale(locale)
AttributeError: 'module' object has no attribute 'Locale'

有谁知道如何解决?我尝试安装一些与语言环境相关的不同东西,但还没有运气。

amazon-ec2 pip certbot amazon-linux-2
  • 2 个回答
  • 1940 Views
Martin Hope
Rich
Asked: 2020-04-29 03:00:41 +0800 CST

如何从 CLI 为 AWS Secrets Manager 设置二进制密钥值

  • 9

如何使用 CLI 在 AWS Secrets Manager 中为密钥设置二进制值?

文档说:

--secret-binary (blob)

(可选)指定要加密并存储在新版本密钥中的二进制数据。要在命令行工具中使用此参数,我们建议您将二进制数据存储在文件中,然后使用适合您工具的技术将文件内容作为参数传递。

我尝试了以下方法:

$ V=$(cat mykeystore.jks)
$ aws secretsmanager put-secret-value --secret-id xxx --secret-binary "$V"
'utf8' codec can't decode byte 0xfe in position 0: invalid start byte
amazon-web-services aws-cli aws-secrets-manager
  • 2 个回答
  • 5401 Views
Martin Hope
Rich
Asked: 2020-04-17 08:00:44 +0800 CST

当 ECS 服务无法持续成功启动任务时创建 CloudWatch 警报

  • 4

如果我向我的 ECS 服务发布一个带有错误的新 Docker 映像,那么该服务将尝试启动新任务,但如果新任务无法启动,它将保留旧版本。

在这种情况下,它有时(并非总是)会向总线发出事件,例如:

服务 xxx 无法始终成功地启动任务。有关详细信息,请参阅故障排除部分。

有时它只会发出大量事件,例如:

服务 xxx 在目标组 yyy 中取消注册 1 个目标

我希望在这种情况下触发 CloudWatch 警报。我怎样才能做到这一点?

我看不到任何跟踪可用于触发此警报的任何相关事件的 CloudWatch 指标。https://docs.aws.amazon.com/AmazonECS/latest/developerguide/cloudwatch-metrics.html

如果任务无法启动,那么我什至不会在 LB 目标组上获得任何 UnHealthyHostCount 指标。

我想我必须创建一个 EventBridge 规则来监视上述命名事件,但我看不到让该规则触发警报的明显方法。我已经设置了将“WARN”和“ERROR”事件转发到 SNS/电子邮件的规则,但我并不总是收到这些事件。所以我经常得到一个没有警报触发的重启循环。:-(

monitoring amazon-web-services amazon-ecs amazon-cloudwatch
  • 1 个回答
  • 2026 Views
Martin Hope
Rich
Asked: 2017-08-30 08:00:37 +0800 CST

寻找轻量级 NTLM HTTP 代理服务器

  • 6

对于一些测试,我正在寻找 NTLM HTTP 代理服务器。服务器应该对客户端进行身份验证,而不是将该身份验证委托给上游“真实”NTLM 代理服务器(如“ NTLMAPS ”或“ CNTLM ”所做的那样)。

创建需要 NTLM 身份验证的 HTTP 代理服务器的最简单方法是什么?

我希望能够将用户添加到此代理并控制他们的密码。如果创建 Windows 域是实现这一目标的唯一方法,那么请在您的答案中包含实现这一点的最简单方法。

ntlm
  • 2 个回答
  • 5180 Views
Martin Hope
Rich
Asked: 2017-02-28 02:14:01 +0800 CST

您可以为多个 AWS 账户使用相同的金雅拓 MFA 离岸价吗?

  • 1

我控制多个 AWS 账户。我想使用 MFA 进行 root 登录。

我有一个来自 Amazon ( docs )的 Gemalto 硬件密钥卡,为其中一个的根帐户注册了 MFA。

我尝试使用相同的密钥卡将 MFA 添加到第二个帐户,但收到消息“ The token serial number was not found.”。

任何人都可以确认或否认是否可以为多个 AWS 账户重复使用相同的密钥卡用于 MFA?

我无法在亚马逊的文档中找到有关此场景的任何信息,并且错误消息不明确。在我看来,密码学上它应该可以正常工作,因为它是基于时间的令牌,而不是 OTP 链。

amazon-web-services two-factor-authentication
  • 1 个回答
  • 2389 Views
Martin Hope
Rich
Asked: 2016-07-05 02:28:54 +0800 CST

MySQL JDBC 强制忽略 AWS RDS 上的客户端证书

  • 5

我有一个在 AWS 上运行的 Java Web 应用程序并连接到在 AWS RDS 上运行的 MySQL 数据库。

我的应用程序使用我们自己的 CA 签名的 SSL 客户端证书来连接各种 Web 服务,因此我设置了-Djavax.net.ssl.keyStore和-Djavax.net.ssl.trustStore系统属性。

我已将https://s3.amazonaws.com/rds-downloads/rds-combined-ca-bundle.pem证书添加到我的trustStore.,我可以通过命令行客户端使用 SSL 很好地连接到 MySQL。

我的 MySQL 连接字符串如下所示:

jdbc:mysql://my-server-id.eu-west-1.rds.amazonaws.com/my-database?verifyServerCertificate=true&useSSL=true&requireSSL=true

我正在使用mysql:mysql-connector-java:jar:5.1.38运行 JBDC 连接。

我发现我的 Java 应用程序在设置 时可以正常连接到 MySQL ,但是当我设置和trustStore时它会失败:keyStoretrustStore

! javax.net.ssl.SSLException: Unsupported record version Unknown-0.0
! at sun.security.ssl.InputRecord.checkRecordVersion(InputRecord.java:552) ~[na:1.8.0_91]
! at sun.security.ssl.InputRecord.readV3Record(InputRecord.java:565) ~[na:1.8.0_91]
! at sun.security.ssl.InputRecord.read(InputRecord.java:532) ~[na:1.8.0_91]
! at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:973) ~[na:1.8.0_91]
! at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1375) ~[na:1.8.0_91]
! at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1403) ~[na:1.8.0_91]
! at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1387) ~[na:1.8.0_91]
! at com.mysql.jdbc.ExportControlled.transformSocketToSSLSocket(ExportControlled.java:149) ~[user-portal-web-0.0.1.jar:0.0.1]
! ... 40 common frames omitted

似乎 Java 正在向 MySQL 提供我的私有 CA 签名客户端证书,而 MySQL 拒绝了它。我已经使用 捕获了交互tcpdump,并且我的客户端证书的 DN 正在发送到 MySQL。

如何将我的客户端证书用于 HTTPS 连接,但不能用于 MySQL 连接?

我尝试创建一个空的密钥库并设置我的连接字符串以使用它:

jdbc:mysql://my-server-id.eu-west-1.rds.amazonaws.com/my-database?verifyServerCertificate=true&useSSL=true&requireSSL=true&clientCertificateKeyStoreUrl=file:nokeys.jks&clientCertificateKeyStorePassword=changeit

这给了我以下错误:

java.lang.IllegalStateException: TrustManagerFactoryImpl is not initialized
    at sun.security.ssl.TrustManagerFactoryImpl.engineGetTrustManagers(TrustManagerFactoryImpl.java:100)
    at javax.net.ssl.TrustManagerFactory.getTrustManagers(TrustManagerFactory.java:285)
    at com.mysql.jdbc.ExportControlled.getSSLSocketFactoryDefaultOrConfigured(ExportControlled.java:323)
    at com.mysql.jdbc.ExportControlled.transformSocketToSSLSocket(ExportControlled.java:85)
java mysql ssl amazon-web-services
  • 1 个回答
  • 2941 Views
Martin Hope
Rich
Asked: 2016-06-01 03:09:29 +0800 CST

Jenkins 为新分支构建监视并构建命名分支

  • 3

我想配置一个单一的 Jenkins 构建(“工作”),它会:

  1. 注意新的分支并在它们出现时构建它们
  2. 根据请求构建命名分支或提交

我可以通过将“要构建的分支”设置为“**”来实现(1)

我可以通过使构建参数化并将“要构建的分支”设置为“$branch”来实现(2)(如本教程)

有没有办法同时做到这两点?

动机

我对 (1) 的用例是我希望在合并到 master 之前测试“功能分支”,因此我们可以在代码审查/拉取请求时查看更改是否通过了所有测试。

我对 (2) 的用例是,有时构建会由于虚假原因(如不稳定的测试)而失败,我想重新运行它,或者旧分支可能已经从历史的底部掉了下来,我想重新-运行它的测试。

configuration jenkins continuous-integration
  • 2 个回答
  • 2827 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve