39 lines
1.2 KiB
Bash
Executable File
39 lines
1.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -e
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
BASE_DIR="${PRACTICE2_DIR:-/usr/local/practice2}"
|
|
|
|
echo "Setting up directory structure at: $BASE_DIR"
|
|
|
|
mkdir -p "$BASE_DIR/etc" "$BASE_DIR/confdata" "$BASE_DIR/bin" "$BASE_DIR/log"
|
|
|
|
touch "$BASE_DIR/etc/passwd"
|
|
|
|
cp "$SCRIPT_DIR/config.py" "$BASE_DIR/bin/config.py"
|
|
cp "$SCRIPT_DIR/usermgr.py" "$BASE_DIR/bin/usermgr"
|
|
cp "$SCRIPT_DIR/access.py" "$BASE_DIR/bin/confaccess"
|
|
cp "$SCRIPT_DIR/bruteforce.py" "$BASE_DIR/bin/bruteforce"
|
|
|
|
chmod +x "$BASE_DIR/bin/usermgr" "$BASE_DIR/bin/confaccess" "$BASE_DIR/bin/bruteforce"
|
|
|
|
if [ "$(id -u)" -eq 0 ]; then
|
|
chmod 700 "$BASE_DIR" "$BASE_DIR/etc" "$BASE_DIR/confdata" "$BASE_DIR/bin" "$BASE_DIR/log"
|
|
chmod 600 "$BASE_DIR/etc/passwd"
|
|
echo "Permissions set (root-only)."
|
|
else
|
|
echo "Warning: not running as root; skipping permission hardening."
|
|
fi
|
|
|
|
echo ""
|
|
echo "Done. Directory layout:"
|
|
ls -la "$BASE_DIR"
|
|
echo ""
|
|
echo "Next steps:"
|
|
echo " $BASE_DIR/bin/usermgr add <login>"
|
|
echo " $BASE_DIR/bin/confaccess"
|
|
echo " $BASE_DIR/bin/bruteforce <login>"
|
|
echo ""
|
|
echo "To add bin to PATH temporarily:"
|
|
echo " export PATH=\"$BASE_DIR/bin:\$PATH\""
|