v3.4
Добавлена функция check_and_configure_vps_sshd() - автоматически настраивает SSH сервер на VPS для:
Многопользовательского доступа
Одновременных подключений с нескольких мест
Сохраняет аутентификацию по паролю (PasswordAuthentication yes)
Добавляет аутентификацию по ключам
Настраивает лимиты сессий (MaxSessions 20, MaxStartups 20:30:100)
Включает поддержку туннелей
Обновлена функция setup_vps() - теперь предлагает автоматическую настройку SSH на VPS после копирования ключа
Добавлено новое меню "Настройки SSH Демона на VPS" (пункт 7) с опциями:
Автоматическая настройка SSH сервера на VPS
Ручная настройка (инструкции)
Проверка текущих настроек на VPS
Разделены настройки SSH демона:
Пункт 7: Настройки SSH на VPS (удаленном сервере)
Пункт 8: Настройки локального SSH демона
Добавлена функция configure_vps_ssh_manually() - показывает подробные инструкции для ручной настройки VPS
Обновлены конфигурации SSH - везде добавлены настройки для поддержки многопользовательского доступа:
PasswordAuthentication yes
PubkeyAuthentication yes
MaxSessions 20
MaxStartups 20:30:100
This commit is contained in:
@@ -210,11 +210,13 @@ check_ssh_connection() {
|
||||
echo "2. Порт $VPS_PORT закрыт на VPS"
|
||||
echo "3. SSH сервер на VPS не запущен"
|
||||
echo "4. Проблемы с сетью/файрволом"
|
||||
echo "5. На VPS отключена аутентификация по паролю, а ключ не настроен"
|
||||
echo ""
|
||||
echo -e "${YELLOW}Проверьте:${NC}"
|
||||
echo "1. Что ключ скопирован на VPS: ssh-copy-id -p $VPS_PORT $VPS_USER@$VPS_HOST"
|
||||
echo "2. Что порт $VPS_PORT открыт: nc -zv $VPS_HOST $VPS_PORT"
|
||||
echo "3. Что SSH сервер запущен на VPS"
|
||||
echo "4. Что на VPS разрешена аутентификация по паролю (PasswordAuthentication yes)"
|
||||
|
||||
# Пробуем подключиться без ключа для диагностики
|
||||
echo -e "\n${YELLOW}Проверка доступности порта...${NC}"
|
||||
@@ -228,6 +230,155 @@ check_ssh_connection() {
|
||||
fi
|
||||
}
|
||||
|
||||
# Функция проверки и настройки SSH сервера на VPS
|
||||
check_and_configure_vps_sshd() {
|
||||
if ! load_vps_settings; then
|
||||
log_message "Сначала необходимо настроить VPS (опция 1)." "$RED"
|
||||
return 1
|
||||
fi
|
||||
|
||||
local VPS_PASSWORD="$1"
|
||||
|
||||
echo -e "${CYAN}Проверка и настройка SSH сервера на VPS...${NC}"
|
||||
|
||||
# Создаем временный скрипт для настройки VPS
|
||||
local SETUP_SCRIPT="/tmp/setup_vps_sshd_$(date +%s).sh"
|
||||
cat > "$SETUP_SCRIPT" << 'EOF_VPS_SETUP'
|
||||
#!/bin/bash
|
||||
|
||||
# Настройка SSH сервера для поддержки многопользовательского доступа
|
||||
# и работы туннелей с сохранением доступа по паролю
|
||||
|
||||
SSHD_CONFIG="/etc/ssh/sshd_config"
|
||||
BACKUP_FILE="${SSHD_CONFIG}.backup.$(date +%Y%m%d%H%M%S)"
|
||||
|
||||
echo "=== Настройка SSH сервера на VPS ==="
|
||||
echo "Создание резервной копии: $BACKUP_FILE"
|
||||
cp "$SSHD_CONFIG" "$BACKUP_FILE"
|
||||
|
||||
echo "Настройка параметров SSH для туннелей и многопользовательского доступа..."
|
||||
|
||||
# Массив настроек, которые нужно применить
|
||||
declare -A SSH_SETTINGS
|
||||
SSH_SETTINGS=(
|
||||
["PasswordAuthentication"]="yes"
|
||||
["PubkeyAuthentication"]="yes"
|
||||
["PermitRootLogin"]="yes"
|
||||
["GatewayPorts"]="yes"
|
||||
["AllowTcpForwarding"]="yes"
|
||||
["PermitTunnel"]="yes"
|
||||
["ClientAliveInterval"]="30"
|
||||
["ClientAliveCountMax"]="3"
|
||||
["MaxSessions"]="20"
|
||||
["MaxStartups"]="20:30:100"
|
||||
["TCPKeepAlive"]="yes"
|
||||
["AllowStreamLocalForwarding"]="yes"
|
||||
["X11Forwarding"]="yes"
|
||||
["PrintMotd"]="no"
|
||||
["PrintLastLog"]="yes"
|
||||
["UsePAM"]="yes"
|
||||
["UseDNS"]="no"
|
||||
)
|
||||
|
||||
# Применяем настройки
|
||||
for key in "${!SSH_SETTINGS[@]}"; do
|
||||
value="${SSH_SETTINGS[$key]}"
|
||||
|
||||
# Проверяем существует ли настройка
|
||||
if grep -q "^#\?\s*$key" "$SSHD_CONFIG"; then
|
||||
# Заменяем существующую настройку
|
||||
sed -i "s/^#\?\s*$key.*/$key $value/" "$SSHD_CONFIG"
|
||||
echo "Обновлено: $key $value"
|
||||
else
|
||||
# Добавляем новую настройку
|
||||
echo "$key $value" >> "$SSHD_CONFIG"
|
||||
echo "Добавлено: $key $value"
|
||||
fi
|
||||
done
|
||||
|
||||
# Добавляем настройки для поддержки IPv4
|
||||
if ! grep -q "^AddressFamily" "$SSHD_CONFIG"; then
|
||||
echo "AddressFamily inet" >> "$SSHD_CONFIG"
|
||||
echo "Добавлено: AddressFamily inet"
|
||||
fi
|
||||
|
||||
# Проверяем конфигурацию
|
||||
echo ""
|
||||
echo "Проверка конфигурации SSH..."
|
||||
if sshd -t; then
|
||||
echo "✓ Конфигурация корректна"
|
||||
|
||||
# Перезапускаем SSH сервер
|
||||
echo "Перезапуск SSH сервера..."
|
||||
if systemctl restart sshd 2>/dev/null || service ssh restart 2>/dev/null || /etc/init.d/ssh restart 2>/dev/null; then
|
||||
echo "✓ SSH сервер перезапущен"
|
||||
echo ""
|
||||
echo "=== НАСТРОЙКИ ВЫПОЛНЕНЫ ==="
|
||||
echo "SSH сервер настроен для:"
|
||||
echo " - Поддержки обратных туннелей"
|
||||
echo " - Многопользовательского доступа"
|
||||
echo " - Аутентификации по паролю И по ключам"
|
||||
echo " - Одновременных подключений с нескольких IP"
|
||||
echo ""
|
||||
echo "Резервная копия: $BACKUP_FILE"
|
||||
else
|
||||
echo "✗ Не удалось перезапустить SSH сервер"
|
||||
echo "Выполните вручную: systemctl restart sshd"
|
||||
fi
|
||||
else
|
||||
echo "✗ Ошибка в конфигурации SSH"
|
||||
echo "Восстановление из резервной копии..."
|
||||
cp "$BACKUP_FILE" "$SSHD_CONFIG"
|
||||
fi
|
||||
EOF_VPS_SETUP
|
||||
|
||||
# Копируем скрипт на VPS и выполняем
|
||||
echo "Копирование скрипта настройки на VPS..."
|
||||
|
||||
if [ -n "$VPS_PASSWORD" ]; then
|
||||
# Используем sshpass для передачи пароля
|
||||
if command -v sshpass &> /dev/null; then
|
||||
# Копируем скрипт на VPS
|
||||
if sshpass -p "$VPS_PASSWORD" scp -P "$VPS_PORT" -o StrictHostKeyChecking=no "$SETUP_SCRIPT" "$VPS_USER@$VPS_HOST:/tmp/setup_vps_sshd.sh" 2>/dev/null; then
|
||||
echo "✓ Скрипт скопирован на VPS"
|
||||
|
||||
# Выполняем скрипт на VPS
|
||||
echo "Выполнение настройки на VPS..."
|
||||
if sshpass -p "$VPS_PASSWORD" ssh -p "$VPS_PORT" -o StrictHostKeyChecking=no "$VPS_USER@$VPS_HOST" "chmod +x /tmp/setup_vps_sshd.sh && sudo /tmp/setup_vps_sshd.sh" 2>&1; then
|
||||
echo -e "${GREEN}✓ Настройка SSH сервера на VPS выполнена успешно${NC}"
|
||||
else
|
||||
echo -e "${YELLOW}⚠ Не удалось выполнить настройку автоматически${NC}"
|
||||
echo -e "${YELLOW}Выполните настройку вручную на VPS${NC}"
|
||||
fi
|
||||
else
|
||||
echo -e "${RED}✗ Не удалось скопировать скрипт на VPS${NC}"
|
||||
fi
|
||||
else
|
||||
echo -e "${YELLOW}⚠ sshpass не установлен. Невозможно автоматически настроить VPS${NC}"
|
||||
fi
|
||||
else
|
||||
echo -e "${YELLOW}⚠ Пароль не указан. Невозможно автоматически настроить VPS${NC}"
|
||||
echo -e "${YELLOW}Выполните настройку вручную:${NC}"
|
||||
cat "$SETUP_SCRIPT"
|
||||
fi
|
||||
|
||||
# Удаляем временный скрипт
|
||||
rm -f "$SETUP_SCRIPT"
|
||||
|
||||
echo ""
|
||||
echo -e "${CYAN}Рекомендуемые настройки для VPS (/etc/ssh/sshd_config):${NC}"
|
||||
echo " PasswordAuthentication yes"
|
||||
echo " PubkeyAuthentication yes"
|
||||
echo " PermitRootLogin yes"
|
||||
echo " MaxSessions 20"
|
||||
echo " MaxStartups 20:30:100"
|
||||
echo " GatewayPorts yes"
|
||||
echo " AllowTcpForwarding yes"
|
||||
echo ""
|
||||
echo -e "${YELLOW}После изменения настроек перезапустите SSH сервер:${NC}"
|
||||
echo " systemctl restart sshd"
|
||||
}
|
||||
|
||||
# --- Основные функции ---
|
||||
|
||||
# 1. Установка зависимостей и настройка системы
|
||||
@@ -442,6 +593,9 @@ LogLevel INFO
|
||||
LoginGraceTime 120
|
||||
PermitRootLogin yes
|
||||
StrictModes yes
|
||||
PasswordAuthentication yes
|
||||
PubkeyAuthentication yes
|
||||
AuthenticationMethods publickey,password
|
||||
|
||||
# Allow forwardings for tunnels
|
||||
AllowTcpForwarding yes
|
||||
@@ -473,8 +627,8 @@ ClientAliveInterval 30
|
||||
ClientAliveCountMax 3
|
||||
|
||||
# Max sessions
|
||||
MaxSessions 10
|
||||
MaxStartups 10:30:100
|
||||
MaxSessions 20
|
||||
MaxStartups 20:30:100
|
||||
|
||||
# Allow tunnel creation
|
||||
AllowStreamLocalForwarding yes
|
||||
@@ -503,6 +657,10 @@ EOFSSHD
|
||||
"ClientAliveInterval 30"
|
||||
"ClientAliveCountMax 3"
|
||||
"TCPKeepAlive yes"
|
||||
"PasswordAuthentication yes"
|
||||
"PubkeyAuthentication yes"
|
||||
"MaxSessions 20"
|
||||
"MaxStartups 20:30:100"
|
||||
)
|
||||
|
||||
# Применяем настройки
|
||||
@@ -545,7 +703,7 @@ EOFSSHD
|
||||
fi
|
||||
}
|
||||
|
||||
# 2. Настройка VPS (сервера)
|
||||
# 2. Настройка VPS (сервера) с автоматической настройкой SSH для многопользовательского доступа
|
||||
setup_vps() {
|
||||
check_root "setup_vps"
|
||||
log_message "Настройка подключения к удаленному VPS (серверу)..." "$CYAN"
|
||||
@@ -633,6 +791,26 @@ EOFSETTINGS
|
||||
echo -e "${BLUE}Копирую ключ на VPS...${NC}"
|
||||
if sshpass -p "$VPS_PASSWORD" ssh-copy-id -p "$VPS_PORT" -i /root/.ssh/id_rsa.pub -o StrictHostKeyChecking=no "$VPS_USER@$VPS_HOST" 2>&1 | tee -a "$LOG_DIR/manager.log"; then
|
||||
log_message "SSH ключ успешно скопирован на VPS!" "$GREEN"
|
||||
|
||||
# Предлагаем настроить SSH сервер на VPS для многопользовательского доступа
|
||||
echo ""
|
||||
echo -e "${CYAN}Настройка SSH сервера на VPS для поддержки:${NC}"
|
||||
echo " - Многопользовательского доступа"
|
||||
echo " - Одновременных подключений с нескольких мест"
|
||||
echo " - Аутентификации по паролю И по ключам"
|
||||
echo " - Обратных туннелей"
|
||||
echo ""
|
||||
|
||||
CONFIGURE_VPS=$(read_input "Настроить SSH сервер на VPS автоматически? (y/N): ")
|
||||
if [[ "$CONFIGURE_VPS" =~ ^[Yy]$ ]]; then
|
||||
check_and_configure_vps_sshd "$VPS_PASSWORD"
|
||||
else
|
||||
echo -e "${YELLOW}Пропущена автоматическая настройка VPS${NC}"
|
||||
echo -e "${YELLOW}Важно! Убедитесь, что на VPS в /etc/ssh/sshd_config есть:${NC}"
|
||||
echo " PasswordAuthentication yes"
|
||||
echo " MaxSessions 20"
|
||||
echo " MaxStartups 20:30:100"
|
||||
fi
|
||||
else
|
||||
log_message "ОШИБКА: Не удалось скопировать ключ через sshpass." "$RED"
|
||||
log_message "Возможно, пароль неверен, или на VPS не установлен ssh-copy-id." "$YELLOW"
|
||||
@@ -661,6 +839,80 @@ EOFSETTINGS
|
||||
read_input "Нажмите Enter для продолжения..."
|
||||
}
|
||||
|
||||
# Функция для ручной настройки VPS SSH сервера
|
||||
configure_vps_ssh_manually() {
|
||||
echo -e "${BOLD}${CYAN}--- Ручная настройка SSH сервера на VPS ---${NC}"
|
||||
echo ""
|
||||
echo -e "${YELLOW}Для правильной работы туннелей и многопользовательского доступа,${NC}"
|
||||
echo -e "${YELLOW}на VPS должны быть настроены следующие параметры в /etc/ssh/sshd_config:${NC}"
|
||||
echo ""
|
||||
echo -e "${GREEN}1. Разрешить аутентификацию по паролю:${NC}"
|
||||
echo " PasswordAuthentication yes"
|
||||
echo ""
|
||||
echo -e "${GREEN}2. Разрешить аутентификацию по ключам:${NC}"
|
||||
echo " PubkeyAuthentication yes"
|
||||
echo ""
|
||||
echo -e "${GREEN}3. Разрешить вход root:${NC}"
|
||||
echo " PermitRootLogin yes"
|
||||
echo ""
|
||||
echo -e "${GREEN}4. Настройки для туннелей:${NC}"
|
||||
echo " GatewayPorts yes"
|
||||
echo " AllowTcpForwarding yes"
|
||||
echo " PermitTunnel yes"
|
||||
echo ""
|
||||
echo -e "${GREEN}5. Настройки многопользовательского доступа:${NC}"
|
||||
echo " MaxSessions 20"
|
||||
echo " MaxStartups 20:30:100"
|
||||
echo ""
|
||||
echo -e "${GREEN}6. Дополнительные настройки:${NC}"
|
||||
echo " ClientAliveInterval 30"
|
||||
echo " ClientAliveCountMax 3"
|
||||
echo " TCPKeepAlive yes"
|
||||
echo ""
|
||||
|
||||
if load_vps_settings; then
|
||||
echo -e "${CYAN}Ваш VPS: $VPS_USER@$VPS_HOST:$VPS_PORT${NC}"
|
||||
echo ""
|
||||
echo -e "${YELLOW}Команды для настройки VPS:${NC}"
|
||||
echo "ssh -p $VPS_PORT $VPS_USER@$VPS_HOST"
|
||||
echo ""
|
||||
echo -e "${YELLOW}После подключения выполните на VPS:${NC}"
|
||||
cat << 'EOF_VPS_COMMANDS'
|
||||
# Создайте резервную копию конфигурации
|
||||
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.backup
|
||||
|
||||
# Отредактируйте файл конфигурации
|
||||
sudo nano /etc/ssh/sshd_config
|
||||
|
||||
# Добавьте или измените следующие параметры:
|
||||
PasswordAuthentication yes
|
||||
PubkeyAuthentication yes
|
||||
PermitRootLogin yes
|
||||
GatewayPorts yes
|
||||
AllowTcpForwarding yes
|
||||
PermitTunnel yes
|
||||
MaxSessions 20
|
||||
MaxStartups 20:30:100
|
||||
ClientAliveInterval 30
|
||||
ClientAliveCountMax 3
|
||||
TCPKeepAlive yes
|
||||
|
||||
# После сохранения проверьте конфигурацию
|
||||
sudo sshd -t
|
||||
|
||||
# Если проверка прошла успешно, перезапустите SSH сервер
|
||||
sudo systemctl restart sshd
|
||||
|
||||
# Или для старых систем:
|
||||
sudo service ssh restart
|
||||
EOF_VPS_COMMANDS
|
||||
else
|
||||
echo -e "${RED}Сначала настройте VPS в основном меню (опция 1)${NC}"
|
||||
fi
|
||||
|
||||
read_input "Нажмите Enter для продолжения..."
|
||||
}
|
||||
|
||||
# 3. Добавление нового туннеля
|
||||
add_tunnel() {
|
||||
check_root "add_tunnel"
|
||||
@@ -1111,12 +1363,71 @@ setup_routing() {
|
||||
done
|
||||
}
|
||||
|
||||
# Функция настройки SSH демона
|
||||
setup_ssh_config() {
|
||||
# Функция настройки SSH демона на VPS
|
||||
setup_vps_ssh_config() {
|
||||
while true; do
|
||||
clear
|
||||
echo -e "${BOLD}${CYAN}Настройки SSH Демона (sshd)${NC}"
|
||||
echo -e "${YELLOW}=============================${NC}"
|
||||
echo -e "${BOLD}${CYAN}Настройки SSH Демона на VPS${NC}"
|
||||
echo -e "${YELLOW}==============================${NC}"
|
||||
|
||||
if ! load_vps_settings; then
|
||||
log_message "Сначала необходимо настроить VPS (опция 1)." "$RED"
|
||||
read_input "Нажмите Enter для продолжения..."
|
||||
return
|
||||
fi
|
||||
|
||||
echo -e "${CYAN}VPS: $VPS_USER@$VPS_HOST:$VPS_PORT${NC}"
|
||||
echo ""
|
||||
echo "1) Автоматическая настройка SSH сервера на VPS"
|
||||
echo "2) Ручная настройка SSH сервера на VPS (инструкции)"
|
||||
echo "3) Проверить текущие настройки SSH на VPS"
|
||||
echo "4) Назад"
|
||||
echo ""
|
||||
|
||||
ssh_choice=$(read_input "Выберите действие: ")
|
||||
|
||||
case $ssh_choice in
|
||||
1)
|
||||
echo -e "${YELLOW}Для автоматической настройки потребуется пароль от VPS${NC}"
|
||||
VPS_PASSWORD=$(read_secret "Введите пароль для $VPS_USER@$VPS_HOST: ")
|
||||
|
||||
if [ -n "$VPS_PASSWORD" ]; then
|
||||
check_and_configure_vps_sshd "$VPS_PASSWORD"
|
||||
else
|
||||
echo -e "${RED}Пароль не введен. Невозможно выполнить автоматическую настройку.${NC}"
|
||||
fi
|
||||
read_input "Нажмите Enter для продолжения..."
|
||||
;;
|
||||
2)
|
||||
configure_vps_ssh_manually
|
||||
;;
|
||||
3)
|
||||
echo -e "${CYAN}Текущие настройки SSH на VPS:${NC}"
|
||||
if [ -f "/root/.ssh/id_rsa" ]; then
|
||||
ssh -p "$VPS_PORT" -i /root/.ssh/id_rsa -o BatchMode=yes "$VPS_USER@$VPS_HOST" \
|
||||
"grep -E '^(PasswordAuthentication|PubkeyAuthentication|PermitRootLogin|GatewayPorts|AllowTcpForwarding|MaxSessions|MaxStartups)' /etc/ssh/sshd_config 2>/dev/null || echo 'Не удалось получить настройки'" 2>/dev/null
|
||||
else
|
||||
echo -e "${YELLOW}SSH ключ не найден. Сначала выполните установку.${NC}"
|
||||
fi
|
||||
read_input "Нажмите Enter для продолжения..."
|
||||
;;
|
||||
4)
|
||||
return
|
||||
;;
|
||||
*)
|
||||
log_message "Неверный выбор" "$RED"
|
||||
sleep 1
|
||||
;;
|
||||
esac
|
||||
done
|
||||
}
|
||||
|
||||
# Функция настройки локального SSH демона
|
||||
setup_local_ssh_config() {
|
||||
while true; do
|
||||
clear
|
||||
echo -e "${BOLD}${CYAN}Настройки локального SSH Демона (sshd)${NC}"
|
||||
echo -e "${YELLOW}====================================${NC}"
|
||||
echo "1) Показать текущие настройки sshd (для туннелей)"
|
||||
echo "2) Перезапустить SSH демон"
|
||||
echo "3) Проверить конфигурацию sshd"
|
||||
@@ -1132,7 +1443,7 @@ setup_ssh_config() {
|
||||
1)
|
||||
echo -e "${CYAN}Текущие настройки sshd (GatewayPorts, AllowTcpForwarding):${NC}"
|
||||
if [ -f "/etc/ssh/sshd_config" ]; then
|
||||
grep -E "^(GatewayPorts|AllowTcpForwarding|PermitTunnel|AllowStreamLocalForwarding|PermitRootLogin)" /etc/ssh/sshd_config 2>/dev/null ||
|
||||
grep -E "^(GatewayPorts|AllowTcpForwarding|PermitTunnel|AllowStreamLocalForwarding|PermitRootLogin|PasswordAuthentication)" /etc/ssh/sshd_config 2>/dev/null ||
|
||||
echo "Настройки не найдены или файл конфигурации отсутствует"
|
||||
else
|
||||
echo "Файл /etc/ssh/sshd_config не найден"
|
||||
@@ -1282,7 +1593,7 @@ manage_tunnels_menu() {
|
||||
;;
|
||||
d)
|
||||
systemctl disable "tunnel-$TUNNEL_ID_MANAGE.service" 2>/dev/null
|
||||
log_message "Автозагрузка отключена для туннеля $TUNNEL_ID_MANAGE" "$YELLOW"
|
||||
log_message "Автозагрузка отключена для туннеля $TUNNEL_ID_MANage" "$YELLOW"
|
||||
sleep 1
|
||||
;;
|
||||
x)
|
||||
@@ -1320,7 +1631,7 @@ main_menu() {
|
||||
while true; do
|
||||
clear
|
||||
echo -e "${BOLD}${CYAN}========================================================${NC}"
|
||||
echo -e "${BOLD}${CYAN} SSH Tunnel Manager v1.1 (by Manus) ${NC}"
|
||||
echo -e "${BOLD}${CYAN} SSH Tunnel Manager v2.0 (by Manus) ${NC}"
|
||||
echo -e "${BOLD}${CYAN}========================================================${NC}"
|
||||
|
||||
# Проверяем наличие SSH ключа
|
||||
@@ -1356,9 +1667,9 @@ main_menu() {
|
||||
echo -e "4) ${BOLD}Просмотр логов и мониторинг${NC}"
|
||||
echo -e "5) ${BOLD}Тестирование подключений${NC}"
|
||||
echo -e "6) ${BOLD}Настройка маршрутизации (iptables)${NC}"
|
||||
echo -e "7) ${BOLD}Настройки SSH Демона (sshd)${NC}"
|
||||
echo -e "8) ${BOLD}Показать публичный ключ${NC} (Для копирования на VPS)"
|
||||
echo -e "9) ${BOLD}Переустановка/обновление${NC}"
|
||||
echo -e "7) ${BOLD}Настройки SSH Демона на VPS${NC} (Важно! Для многопользовательского доступа)"
|
||||
echo -e "8) ${BOLD}Настройки локального SSH Демона${NC}"
|
||||
echo -e "9) ${BOLD}Показать публичный ключ${NC} (Для копирования на VPS)"
|
||||
echo -e "0) ${BOLD}Выход${NC}"
|
||||
echo ""
|
||||
|
||||
@@ -1371,13 +1682,9 @@ main_menu() {
|
||||
4) view_logs ;;
|
||||
5) test_connections ;;
|
||||
6) setup_routing ;;
|
||||
7) setup_ssh_config ;;
|
||||
8) show_public_key ;;
|
||||
9)
|
||||
echo -e "${YELLOW}Выполняется переустановка...${NC}"
|
||||
install_manager
|
||||
read_input "Нажмите Enter для продолжения..."
|
||||
;;
|
||||
7) setup_vps_ssh_config ;;
|
||||
8) setup_local_ssh_config ;;
|
||||
9) show_public_key ;;
|
||||
0)
|
||||
log_message "Выход из менеджера." "$GREEN"
|
||||
exit 0
|
||||
@@ -1393,7 +1700,7 @@ main_menu() {
|
||||
# --- Точка входа ---
|
||||
# Главное изменение: если скрипт запущен без аргументов, выполняем автоматическую установку и запуск меню
|
||||
if [[ $# -eq 0 ]]; then
|
||||
echo -e "${BOLD}${CYAN}SSH Tunnel Manager v1.1${NC}"
|
||||
echo -e "${BOLD}${CYAN}SSH Tunnel Manager v2.0${NC}"
|
||||
echo -e "Автоматический запуск установки и меню..."
|
||||
echo ""
|
||||
|
||||
@@ -1420,7 +1727,7 @@ else
|
||||
main_menu
|
||||
;;
|
||||
*)
|
||||
echo -e "${BOLD}${CYAN}SSH Tunnel Manager v1.1${NC}"
|
||||
echo -e "${BOLD}${CYAN}SSH Tunnel Manager v2.0${NC}"
|
||||
echo -e "Использование:"
|
||||
echo -e " 1. Запуск одной командой (автоустановка + меню):"
|
||||
echo -e " curl -s https://git.softuniq.eu/OpenDoor/vps_ssh_tunel/raw/branch/main/install_ssh_tunnel.sh | sudo bash"
|
||||
|
||||
Reference in New Issue
Block a user