Add Joplin, old Mac, and Fedora WiFi runbooks; simplify JA3 Whisky scripts and hotspot recovery.
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
59
docs/old_mac/scripts/connect-rdp-fedora.sh
Executable file
59
docs/old_mac/scripts/connect-rdp-fedora.sh
Executable file
@@ -0,0 +1,59 @@
|
||||
#!/usr/bin/env bash
|
||||
# Mac: RDP к Fedora (xrdp, порт 3389).
|
||||
# bash docs/old_mac/scripts/connect-rdp-fedora.sh
|
||||
set -euo pipefail
|
||||
|
||||
ENV="${OLD_MAC_FEDORA_ENV:-$HOME/.config/old_mac/fedora.env}"
|
||||
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
||||
|
||||
if [ -f "$ENV" ]; then
|
||||
# shellcheck disable=SC1090
|
||||
source "$ENV"
|
||||
fi
|
||||
|
||||
FEDORA_USER="${FEDORA_USER:-p}"
|
||||
FEDORA_RDP_PORT="${FEDORA_RDP_PORT:-3389}"
|
||||
|
||||
# Порядок хостов: BT PAN → mDNS → hotspot IP
|
||||
HOSTS=(
|
||||
"${FEDORA_BT_IP:-172.20.99.1}"
|
||||
"${FEDORA_HOST:-fedora.local}"
|
||||
"${FEDORA_IP:-10.23.120.30}"
|
||||
)
|
||||
|
||||
reachable() {
|
||||
nc -z -G 2 -w 2 "$1" "$FEDORA_RDP_PORT" 2>/dev/null
|
||||
}
|
||||
|
||||
TARGET=""
|
||||
for h in "${HOSTS[@]}"; do
|
||||
if reachable "$h"; then
|
||||
TARGET="$h"
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
if [ -z "$TARGET" ]; then
|
||||
printf 'RDP %s недоступен на:\n' "$FEDORA_RDP_PORT"
|
||||
for h in "${HOSTS[@]}"; do printf ' %s:%s\n' "$h" "$FEDORA_RDP_PORT"; done
|
||||
printf '\nПричина: изоляция хотспота или нет BT PAN.\n'
|
||||
printf ' bash %s/discover-fedora.sh\n' "$SCRIPT_DIR"
|
||||
printf ' docs/old_mac/REMOTE_ACCESS.md\n'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
printf 'RDP → %s:%s (user %s)\n' "$TARGET" "$FEDORA_RDP_PORT" "$FEDORA_USER"
|
||||
|
||||
if command -v xfreerdp >/dev/null 2>&1; then
|
||||
exec xfreerdp "/v:${TARGET}:${FEDORA_RDP_PORT}" "/u:${FEDORA_USER}" +clipboard /dynamic-resolution
|
||||
fi
|
||||
|
||||
if [ -d "/Applications/Microsoft Remote Desktop.app" ]; then
|
||||
exec open -a "Microsoft Remote Desktop"
|
||||
fi
|
||||
|
||||
printf 'Установите клиент:\n'
|
||||
printf ' brew install freerdp\n'
|
||||
printf ' или Microsoft Remote Desktop из App Store\n'
|
||||
printf '\nВручную: %s:%s user %s\n' "$TARGET" "$FEDORA_RDP_PORT" "$FEDORA_USER"
|
||||
exit 1
|
||||
Reference in New Issue
Block a user