diff --git a/files/etc/uci-defaults/99-sshd-root-login b/files/etc/uci-defaults/99-sshd-root-login new file mode 100644 index 0000000..07bcfb8 --- /dev/null +++ b/files/etc/uci-defaults/99-sshd-root-login @@ -0,0 +1,31 @@ +#!/bin/sh + +# 仅在首次启动时执行(/etc/uci-defaults机制) + +SSHD_CONF="/etc/ssh/sshd_config" + +# 如果 sshd 配置文件存在,则修改配置 +if [ -f "$SSHD_CONF" ]; then + + # 允许 root 远程登录 + if grep -q "^#*PermitRootLogin" "$SSHD_CONF"; then + sed -i 's/^#*PermitRootLogin.*/PermitRootLogin yes/' "$SSHD_CONF" + else + echo "PermitRootLogin yes" >> "$SSHD_CONF" + fi + + # 允许密码登录 + if grep -q "^#*PasswordAuthentication" "$SSHD_CONF"; then + sed -i 's/^#*PasswordAuthentication.*/PasswordAuthentication yes/' "$SSHD_CONF" + else + echo "PasswordAuthentication yes" >> "$SSHD_CONF" + fi +fi + +# 重启 OpenSSH 服务(如果已安装) +if [ -x /etc/init.d/sshd ]; then + /etc/init.d/sshd enable + /etc/init.d/sshd restart +fi + +exit 0 \ No newline at end of file diff --git a/main.sh b/main.sh index 9b621ca..549fb84 100644 --- a/main.sh +++ b/main.sh @@ -130,6 +130,9 @@ build(){ # 切换到 Image Builder 目录 cd "$BUILDER_DIR" + # 复制 files 目录下的自定义文件到 Image Builder 的 files 目录 + cp ${SCRIPT_DIR}/files/* $BUILDER_DIR/files/ -rf + # 修改.config文件, 不构建以下格式固件 sed -i \ -e 's/^CONFIG_ISO_IMAGES=y/# CONFIG_ISO_IMAGES is not set/' \