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
    • 最新
    • 标签
主页 / server / 问题

问题[amazon-linux](server)

Martin Hope
Richard Wheeldon
Asked: 2023-11-29 04:07:07 +0800 CST

如何在AL2023上安装moreutils

  • 5

如果我跑

docker run -it --rm --entrypoint=/bin/bash fedora:latest
dnf install moreutils

有用。

如果我运行:

19:57:34:~/ $ docker run -it --rm --entrypoint=/bin/bash public.ecr.aws/lambda/provided:al2023
bash-5.2# dnf install moreutils
dnf install moreutils
Downloading metadata...
error: No package matches 'moreutils'
bash-5.2# 

事实并非如此。为什么?

这些说明参考 AL2:https://stackoverflow.com/questions/37951437/installing-moreutils-on-ec2-instance,不适用于 Al2023,并且启用建议的存储库似乎也没有做任何有用的事情:

22:46:20:~/ $ docker run -it --rm --entrypoint=/bin/bash public.ecr.aws/lambda/provided:al2023
bash-5.2# dnf --enablerepo epel install moreutils
dnf --enablerepo epel install moreutils
error: repo epel not found
bash-5.2# 
amazon-linux
  • 1 个回答
  • 92 Views
Martin Hope
Rolo787
Asked: 2022-04-12 09:04:14 +0800 CST

减少 Amazon Linux 1 上的 Amazon EBS 根卷大小

  • 1

我一直在尝试使用本文档中的过程来减小我的 Amazon Linux 1 AMI 根卷的大小(在失败后进行了一些修改),并且在该步骤中不断遇到错误:

$ sudo grub-install --root-directory=/mnt/new-volume/ --force /dev/xvdf

这是旧版 GRUB(版本0.97-94.32.amzn1)

起初我收到以下错误:

Unrecognized option `--force'

结果删除了--force标志并使用了:

$ sudo grub-install --root-directory=/mnt/new-volume/ /dev/xvdf

此后导致:

/dev/xvdf does not have any corresponding BIOS drive

我尝试按照该线程中提到的说明使用 parted 或 fdisk 创建 BIOS 引导分区,但每种方法都导致了同样的失败。请注意,我使用的特定实例类型 (r5.large) 将驱动器重命名为相应的“nvme*”名称,如 lsblk 输出中所述:

nvme0n1       259:3    0  200G  0 disk
├─nvme0n1p1   259:4    0  200G  0 part /
└─nvme0n1p128 259:5    0    1M  0 part
nvme1n1       259:0    0   40G  0 disk
├─nvme1n1p2   259:2    0   40G  0 part /mnt/new-volume
└─nvme1n1p1   259:1    0    1M  0 part

在这篇Linux Questions 帖子中找到了一篇与错误消息相关的文章,但这并没有证明可以解决我的问题。我尝试通过 chroot-ing 进入分区并遇到同样的问题,并尝试使用中间 Amazon Linux 1 或 Amazon Linux 2 主机,但继续遇到问题。

我确实注意到在 Amazon Linux 1 中单独使用根卷时也会出现同样的问题:

grub-install /dev/sda OR grub-install /dev/sda1

但无论如何,除非它被列为辅助驱动器,否则新磁盘无法启动。grub单独使用Legacy GRUB 手册中的命令进行安装也失败了。我是否正在寻找错误的程序来创建一个新的较小的根卷,或者我在上述步骤中遗漏了什么?可以根据需要提供进一步的细节。

linux grub amazon-web-services amazon-linux amazon-ami
  • 3 个回答
  • 146 Views
Martin Hope
Sam Bruton Developer
Asked: 2021-12-05 06:30:56 +0800 CST

AWS EC2 Yum 没有存储库

  • -1

我是一名前端 Web 开发人员,正在努力解决这些后端问题!

我的目标是在我的 AWS EC2 服务器上安装并更新到 PHP 7.4。

我需要 yum 来安装 amazon-linux-extras,但 yum 没有 repos。

在此处输入图像描述

我不知道如何设置 yum repo list 并且发现很难在网上找到任何关于 repo URL 及其名称等的帮助。NPM 更容易使用? 我想我会坚持使用前端下次。 在此处输入图像描述

在亚马逊文档上,他们声明服务器启用了配置的存储库,但我很难找到它们。(https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/add-repositories.html)

非常感谢任何指示和帮助。

linux ubuntu yum amazon-ec2 amazon-linux
  • 1 个回答
  • 1918 Views
Martin Hope
Caterina
Asked: 2021-10-24 13:48:17 +0800 CST

获取正确的 Python3 依赖项时出错

  • 1

尝试在 Amazon Linux 2 实例上安装 HTCondor 时出现此错误:

Error: Package: python3-condor-8.8.15-1.el7.x86_64 (htcondor-stable)
       Requires: libpython3.6m.so.1.0()(64bit)

我尝试自己安装 python 3.6(假设安装的是 3.7)并且在 /usr/local/lib 中我有 libpython3.6m.so.1.0。这和 libpython3.6m.so.1.0()(64bit) 一样吗?

将其添加到 LD 库路径 (export LD_LIBRARY_PATH=/usr/local/lib/) 似乎不起作用。

python amazon-web-services amazon-linux
  • 1 个回答
  • 369 Views
Martin Hope
MD Nasirul Islam
Asked: 2021-09-28 05:23:42 +0800 CST

在 Amazon Linux AMI 中安装 certbot nginx

  • 1

我有一个非常旧的amazon linux ami,我需要为运行 php 网站的 nginx 安装 certbot。现在我需要在这个网站上安装 ssl。但我无法在我的服务器上安装 certbot-nginx。每当我尝试安装

sudo yum install python2-certbot-nginx.noarch

它向我显示了一些依赖错误。最后像这样

--> Processing Dependency: python-requests >= 2.6.0 for package: python2-requests-2.6.0-0.el7.noarch
---> Package python2-six.noarch 0:1.9.0-0.el7 will be installed
--> Processing Dependency: python-six >= 1.9.0 for package: python2-six-1.9.0-0.el7.noarch
---> Package setools-libs.x86_64 0:3.3.7-34.23.amzn1 will be installed
--> Finished Dependency Resolution
Error: Package: python2-requests-2.6.0-0.el7.noarch (epel)
           Requires: python-requests >= 2.6.0
           Installed: python26-requests-1.2.3-5.10.amzn1.noarch (@amzn-main)
               python-requests = 1.2.3-5.10.amzn1
Error: Package: python2-acme-1.11.0-1.el7.noarch (epel)
           Requires: python2-cryptography
Error: Package: python2-acme-1.11.0-1.el7.noarch (epel)
           Requires: pyOpenSSL >= 0.13.1
           Installing: python26-pyOpenSSL-0.10-2.8.amzn1.x86_64 (amzn-main)
               pyOpenSSL = 0.10-2.8.amzn1
Error: Package: python2-acme-1.11.0-1.el7.noarch (epel)
           Requires: python2-pyasn1
Error: Package: certbot-1.11.0-1.el7.noarch (epel)
           Requires: systemd
Error: Package: python2-six-1.9.0-0.el7.noarch (epel)
           Requires: python-six >= 1.9.0
           Installed: python26-six-1.8.0-1.23.amzn1.noarch (@amzn-main)
               python-six = 1.8.0-1.23.amzn1
Error: Package: python2-josepy-1.3.0-2.el7.noarch (epel)
           Requires: python2-setuptools
Error: Package: python2-josepy-1.3.0-2.el7.noarch (epel)
           Requires: python2-cryptography
Error: Package: python2-certbot-1.11.0-1.el7.noarch (epel)
           Requires: python2-cryptography >= 1.2.3
Error: Package: python2-acme-1.11.0-1.el7.noarch (epel)
           Requires: pyOpenSSL >= 0.13.1
           Available: python26-pyOpenSSL-0.10-2.8.amzn1.x86_64 (amzn-main)
               pyOpenSSL = 0.10-2.8.amzn1
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

我已经尝试安装 yum-utils,package-cleanup --leaves但仍然出现以下错误。谁能告诉我如何防止这个问题?谢谢。顺便说一句,我的服务器 os-release

NAME="Amazon Linux AMI"
VERSION="2018.03"
ID="amzn"
ID_LIKE="rhel fedora"
VERSION_ID="2018.03"
PRETTY_NAME="Amazon Linux AMI 2018.03"
ANSI_COLOR="0;33"
CPE_NAME="cpe:/o:amazon:linux:2018.03:ga"
HOME_URL="http://aws.amazon.com/amazon-linux-ami/"

谁能帮我这个?我想如果我可以删除所有这些依赖项问题,那么我可以安装 python2-certbot-nginx 并且可以执行 ssl。我能得到什么帮助吗?提前致谢。

amazon-ec2 certbot amazon-linux
  • 1 个回答
  • 1139 Views
Martin Hope
Kevin Buchs
Asked: 2021-09-03 14:01:18 +0800 CST

使用 ssh 密钥、用户隔离(sftp 与 ssh)、不同端口和用户目录限制在 Amazon Linux 2 上设置 sftp

  • 3

TDLR:我有一个 Catch 22,根据用户主目录的权限,我可以让 SSH 身份验证正常工作,或者用户目录限制,但不能同时进行。

顺便说一句,我真的很想推出自己的 SFTP 服务器。请不要推荐我尝试 AWS Transfer 服务或其他替代方案。谢谢。

以下是 /etc/ssh/sshd_config 中的相关(从默认更改)内容:

Subsystem sftp internal-sftp
Port 22
Port 2299
Match Group sftpusers LocalPort 2299
  ChrootDirectory /sftp-data/%u
  ForceCommand internal-sftp
Match Group sftpusers LocalPort 22
  DenyGroups sftpusers
Match LocalPort 2299  Group *,!sftpusers
  DenyUsers *

我希望端口 22 像 ssh 通常那样运行,但仅适用于非 sftp 用户。对于 sftp 用户,在“sftpusers”组中,我希望端口 2299 仅用作 sftp,而不是 ssh。对于非 sftpusers,我希望拒绝访问端口 2299。

好的,所以,我用主目录 /sftp-data/user1 和 shell /sbin/nologin 创建了一个用户“user1”。我创建了 /sftp-data/user1/.ssh/authorized_keys 并用公共 ssh 密钥填充了它。/sftp-data 由具有 700 权限的 root 拥有。/sftp-data/user1/.ssh 及以下为 user1 所有,/sftp-data/user1/.ssh/authorized_keys 的权限为 600。 /sftp-data/user1 的所有权/权限在这里受到质疑。更多内容如下。

我创建了用户组 sftpusers 并将 user1 添加到该组。但是,您通过 AWS 获得的内置 ec2-user 不是该组的成员。使用 ec2-user 进行测试效果很好:通过 ssh 访问,端口 22 正常工作,但无法访问端口 2299。

因此,使用 user1 进行测试是有趣的地方。User1 无法访问端口 22 - 太好了!在 user1 拥有 /sftp-data/user1 的情况下,ssh 公钥认证在端口 2299 上成功,但用户立即注销,此消息保存在 /var/log/secure 中:

Sep  2 19:21:38 ip-192-168-0-25 sshd[10369]: Accepted publickey for user1 from <ip-address redacted> port 61110 ssh2: ECDSA SHA256:<sha redacted>
Sep  2 19:13:23 ip-192-168-0-25 sshd[9803]: pam_unix(sshd:session): session opened for user user1 by (uid=0)
Sep  2 19:13:23 ip-192-168-0-25 sshd[9803]: fatal: bad ownership or modes for chroot directory "/sftp-data/user1" [postauth]
Sep  2 19:13:23 ip-192-168-0-25 sshd[9803]: pam_unix(sshd:session): session closed for user user1

当然,这是有道理的。Chroot 要求 /sftp-data/user1 由 root 拥有,权限为 700。所以,这样做,现在 sftp(ssh 密钥)身份验证失败。

Sep  2 19:41:00 ip-192-168-0-25 sshd[11693]: error: AuthorizedKeysCommand /opt/aws/bin/eic_run_authorized_keys user1 SHA256:<sha redacted> failed, status 22

顺便说一句,eic_run_authorized_keys 是 AWS 围绕标准 ssh 身份验证启用 AWS Instance Connect 的包装器。

对于额外的信用......如果上述问题不够具有挑战性,你能想出一个方案,我可以让特定的 sftp 用户访问特定的项目目录,而且只有那些,而不为每个项目创建一个组?从每个用户的主目录链接到项目目录会很棒。

@anx 要求的其他信息:

# getent passwd user1
user1:x:1001:1001::/sftp-data/user1:/sbin/nologin
# namei -l /sftp-data/user1/.ssh/authorized_keys
f: /sftp-data/user1/.ssh/authorized_keys
dr-xr-xr-x root  root      /
drwxr-xr-x root  root      sftp-data
drwx------ root  root      user1
drwx------ user1 sftpusers .ssh
-rw------- user1 sftpusers authorized_keys

我为 sshd 打开了调试日志记录。使用 ChrootDirectory 指令,/sftp-data/user1 由 root 拥有,并且 SSH 身份验证失败,我在 /var/log/secure 中看到了这一点:

debug1:无法打开授权密钥“/sftp-data/user1/.ssh/authorized_keys”:权限被拒绝

ps 清楚地告诉我 root 正在运行 sshd 进程。

amazon-ec2 sftp amazon-linux amazon-linux-2 ssh-keys
  • 2 个回答
  • 1173 Views
Martin Hope
Jailbot
Asked: 2021-05-20 10:25:01 +0800 CST

从(工作)Lightsail 快照创建的实例不会响应 nginx 请求

  • 1

我正在尝试扩展 Lightsail 实例。它是运行 nginx 和 mariadb 的 Amazon Linux 2 AMI 上的基本 Wordpress 站点。它使用静态IP。工作正常。

当我创建它的快照,用它来启动一个更大的实例,然后附加静态 IP 时,它根本不起作用。Nginx 正在运行并为 IP 提供 404,但在尝试访问域时超时。完全没有错误。访问日志中没有任何内容。我没有对任何东西做任何改变。我唯一做的就是重启 nginx 和 php-fpm。

我已经仔细检查并三重检查了所有 conf 文件是否相同。还有什么我想念的吗?在我附加静态 IP 之前,新实例的 IP 是否正在某处使用?

nginx amazon-web-services amazon-linux amazon-lightsail
  • 1 个回答
  • 240 Views
Martin Hope
John M.
Asked: 2021-05-18 14:22:53 +0800 CST

在 CentOS 上哪里可以找到/如何安装 `libclang-*.so.1`?

  • 0

我试图libclang-*.so.1在 centOS 上找到一个库,但在任何地方都找不到。我已经安装了clang和llvm-toolset-7.0. 欢迎任何建议。

centos amazon-linux
  • 1 个回答
  • 882 Views
Martin Hope
Ruben John
Asked: 2020-10-06 22:22:51 +0800 CST

有什么方法可以将 AWS T3 x64 迁移到 T4G ARM?

  • 5

有什么简单的方法可以从aws x64 迁移到 arm arch?就像没有配置新的基于 arm 的服务器并安装包和文件?它目前正在使用 Amazon linux AMI 运行,我们希望将其更改为 Amazon linux AMI 2。

我只是想知道是否有一些工具/方法可以进行此操作。

linux upgrade amazon-linux arm cpu-architecture
  • 1 个回答
  • 2547 Views
Martin Hope
hbquikcomjamesl
Asked: 2020-08-05 10:53:21 +0800 CST

让我们在 Amazon Linux(不是 2)实例上加密 Bitnami 堆栈和乐高的问题

  • 0

我们有一个 Amazon Linux(不是 Amazon Linux 2)实例,运行一个相当旧的 Bitnami Trac/SVN 堆栈,还运行一个 Tomcat 服务器。它有两个 httpd 实例:一个是 Bitnami 堆栈的一部分,另一个是操作系统附带的。Tomcat 独立运行。Lego 已经存在,bncert-tool 也是如此,但 Bitnami 目录不是“/opt/bitnami”,而是“/opt/trac-1.2.3-11”。

操作系统 httpd 在启动时会监听 80,不安全。Bitnami httpd 监听 8000,安全,也可以监听 81。Tomcat 服务器独立于 httpd 运行,并监听 8443,安全(使用来自 443 的 iptables 重定向)和 7443(也安全)。

在现场实例上工作,从实时服务器的最新备份克隆,在 Route 53 中映射到它的域,以及在分配的安全组之一中向世界开放的端口 80 和 443,我一直在尝试按照https://docs.bitnami.com/aws/how-to/generate-install-lets-encrypt-ssl/#alternative-approach页面上“替代方法”下的说明进行操作,但未成功。

跳过过程中的第 1 步,因为乐高已经存在,直接进入第 2 步,我用“ctlscript.sh stop”停止了 Bitnami。然后,我(在 root 权限下运行)尝试使用程序中给出的命令获取证书,并根据情况进行调整。(注意域名已更改,“保护无辜”。)

sudo /opt/trac-1.2.3-11/letsencrypt/lego --tls --email="foo@bar.com" --domains="test.bar.net" --path="/opt/trac-1.2.3-11/letsencrypt" run

我懂了:

2020/08/04 18:01:29 No key found for account foo@bar.com. Generating a P384 key.
2020/08/04 18:01:29 Saved key to /opt/trac-1.2.3-11/letsencrypt/accounts/acme-v02.api.letsencrypt.org/foo@bar.com/keys/foo@bar.com.key
2020/08/04 18:01:30 Please review the TOS at https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf
Do you accept the TOS? Y/n
Y
2020/08/04 18:01:43 [INFO] acme: Registering account for foo@bar.com
!!!! HEADS UP !!!!

        Your account credentials have been saved in your Let's Encrypt
        configuration directory at "/opt/trac-1.2.3-11/letsencrypt/accounts".
        You should make a secure backup of this folder now. This
        configuration directory will also contain certificates and
        private keys obtained from Let's Encrypt so making regular
        backups of this folder is ideal.
2020/08/04 18:01:43 [INFO] [test.bar.net] acme: Obtaining bundled SAN certificate
2020/08/04 18:01:43 [INFO] [test.bar.net] AuthURL: https://acme-v02.api.letsencrypt.org/acme/authz-v3/6317334421
2020/08/04 18:01:43 [INFO] [test.bar.net] acme: use tls-alpn-01 solver
2020/08/04 18:01:43 [INFO] [test.bar.net] acme: Trying to solve TLS-ALPN-01
2020/08/04 18:01:50 [INFO] Unable to deactivated authorizations: https://acme-v02.api.letsencrypt.org/acme/authz-v3/6317334421
2020/08/04 18:01:50 Could not obtain certificates:
    acme: Error -> One or more domains had a problem:
[test.bar.net] acme: error: 403 :: urn:ietf:params:acme:error:unauthorized :: Cannot negotiate ALPN protocol "acme-tls/1" for tls-alpn-01 challenge, url: 

然后我尝试关闭操作系统 httpd 实例,并重复该命令。从“获取捆绑的 SAN 证书”消息开始,我得到了相同的结果。

然后,我尝试关闭 Tomcat。这一次,我在最后一行收到了不同的信息:

[test.bar.net] acme: error: 400 :: urn:ietf:params:acme:error:connection :: Connection refused, url:

显然这里出了点问题,但我的下一步是什么?

amazon-ec2 lets-encrypt amazon-linux bitnami
  • 1 个回答
  • 646 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