fix: harden mx helper and cleanup flow
This commit is contained in:
@@ -4,8 +4,8 @@ set -eu
|
||||
BASE_DIR="/usr/local/hitme_plugins/mail-login-helper"
|
||||
SCRIPT_DIR="$(CDPATH= cd -- "$(dirname -- "$0")" && pwd)"
|
||||
|
||||
mkdir -p "$BASE_DIR/bin" "$BASE_DIR/logs" "$BASE_DIR/state"
|
||||
chmod 700 "$BASE_DIR" "$BASE_DIR/bin" "$BASE_DIR/logs" "$BASE_DIR/state"
|
||||
mkdir -p "$BASE_DIR/bin" "$BASE_DIR/config" "$BASE_DIR/logs" "$BASE_DIR/state"
|
||||
chmod 700 "$BASE_DIR" "$BASE_DIR/bin" "$BASE_DIR/config" "$BASE_DIR/logs" "$BASE_DIR/state"
|
||||
|
||||
cp "$SCRIPT_DIR/mail-login-authorized-command.sh" "$BASE_DIR/bin/create-login-url"
|
||||
cp "$SCRIPT_DIR/cleanup-expired-login-urls.php" "$BASE_DIR/bin/cleanup-expired-login-urls"
|
||||
@@ -13,4 +13,17 @@ chmod 755 "$BASE_DIR/bin/create-login-url" "$BASE_DIR/bin/cleanup-expired-login-
|
||||
touch "$BASE_DIR/logs/audit.log"
|
||||
chmod 600 "$BASE_DIR/logs/audit.log"
|
||||
|
||||
if [ ! -f "$BASE_DIR/config/helper-settings.conf" ]; then
|
||||
cat > "$BASE_DIR/config/helper-settings.conf" <<'EOF'
|
||||
MAIL_LOGIN_ALLOWED_SOURCE_HOSTS=h4.domena.pl
|
||||
MAIL_LOGIN_DA_BIN=/usr/bin/da
|
||||
EOF
|
||||
chmod 600 "$BASE_DIR/config/helper-settings.conf"
|
||||
fi
|
||||
|
||||
cat > "$BASE_DIR/authorized_keys.example" <<'EOF'
|
||||
from="SOURCE_SERVER_PUBLIC_IP",restrict,no-agent-forwarding,no-port-forwarding,no-X11-forwarding,no-pty,command="/usr/local/hitme_plugins/mail-login-helper/bin/create-login-url" ssh-ed25519 SOURCE_SERVER_PUBLIC_KEY mail-login-source
|
||||
EOF
|
||||
chmod 600 "$BASE_DIR/authorized_keys.example"
|
||||
|
||||
echo "mail-login MX helper installed at $BASE_DIR"
|
||||
|
||||
Reference in New Issue
Block a user