【问题标题】:CloudFormation userdata to create a RedHat userCloudFormation userdata 创建 RedHat 用户
【发布时间】:2019-08-14 22:51:27
【问题描述】:

如何在启动过程中在redhat实例上创建用户?我尝试在用户数据中包含以下命令,但没有奏效。知道为什么吗?还是有另一种使用用户数据创建用户的方法?

sudo su
useradd -s /bin/bash -m -d /home/testuser  -g root testuser
echo P@ssc0deT3st | passwd testuser --stdin
sed -re 's/^(PasswordAuthentication)([[:space:]]+)no/\1\2yes/' -i.`date -I` /etc/ssh/sshd_config
service sshd restart

【问题讨论】:

    标签: amazon-ec2 amazon-cloudformation


    【解决方案1】:

    确保您使用亚马逊的 ami。只有少数 ami 支持 UserData。 UserData 以 root 身份运行。

    【讨论】:

      【解决方案2】:

      试试这样的

      "UserData": {
        "Fn::Base64": {
          "Fn::Join": ["", [
            "#!/bin/bash -xe\n",
            "useradd -d /home/testuser -g root -m -s /bin/bash testuser", "\n",
          ]]
        }
      }
      

      虽然我不确定您是否可以将用户添加到组根目录,但这不是这里也不是那里。然后,您可以使用与我示例中的 useradd 命令相同的方式添加其余命令。

      请注意,有时 UserData 需要几分钟才能执行,因此请在实例启动并运行后等待几分钟。我相信你也可以在 cmd-init.log 中检查 /var/log 中的错误。

      确保在正在运行的实例上测试您的命令,以确保它们在堆栈中尝试之前可以正常工作,从长远来看,这将为您节省时间。

      【讨论】:

        猜你喜欢
        • 2015-10-15
        • 1970-01-01
        • 2017-01-11
        • 2017-07-27
        • 2020-11-02
        • 2023-03-05
        • 2017-04-14
        • 1970-01-01
        • 2021-10-15
        相关资源
        最近更新 更多