find_smart_port() {

local port=443
    if ss -tlnp | grep -qE ":${port}\b"; then
        echo -e "  ${YELLOW}ℹ Порт 443 занят (Hiddify/Nginx). Пробую 8443...${NC}" >&2
        port=8443
        if ss -tlnp | grep -qE ":${port}\b"; then
            port=$(( (RANDOM % 10000) + 20000 ))
            echo -e "  ${YELLOW}ℹ Порт 8443 тоже занят. Выбран случайный: $port${NC}" >&2
        fi
    fi
    echo "$port"
}
This commit is contained in:
kobaltgit
2026-04-05 23:10:37 +03:00
parent 1747e8e969
commit 89825de812

View File

@@ -135,13 +135,12 @@ analyze_best_domain() {
# ── Умный поиск порта ──────────────────────────────────────────────────────── # ── Умный поиск порта ────────────────────────────────────────────────────────
find_smart_port() { find_smart_port() {
local port=443 local port=443
# Проверяем 443, если занят — проверяем 8443, если и он занят — берем рандом
if ss -tlnp | grep -qE ":${port}\b"; then if ss -tlnp | grep -qE ":${port}\b"; then
echo -e " ${YELLOW} Порт 443 занят (Hiddify/Nginx). Пробую 8443...${NC}" echo -e " ${YELLOW} Порт 443 занят (Hiddify/Nginx). Пробую 8443...${NC}" >&2
port=8443 port=8443
if ss -tlnp | grep -qE ":${port}\b"; then if ss -tlnp | grep -qE ":${port}\b"; then
port=$(( (RANDOM % 10000) + 20000 )) port=$(( (RANDOM % 10000) + 20000 ))
echo -e " ${YELLOW} Порт 8443 тоже занят. Выбран случайный: $port${NC}" echo -e " ${YELLOW} Порт 8443 тоже занят. Выбран случайный: $port${NC}" >&2
fi fi
fi fi
echo "$port" echo "$port"
@@ -184,9 +183,10 @@ menu_install() {
optimize_system optimize_system
local DOMAIN=$(analyze_best_domain) local DOMAIN=$(analyze_best_domain)
local PORT=$(find_smart_port) local PORT=$(find_smart_port)
echo -e " ${GREEN}${NC} Итоговый порт: ${WHITE}$PORT${NC}"
fix_firewall "$PORT" fix_firewall "$PORT"
# Процесс Docker # Процесс Docker