From e5edaddc555c6123bc05be9433a80837b075e86e Mon Sep 17 00:00:00 2001 From: sagitov 3b Date: Tue, 31 Mar 2026 10:36:29 +0000 Subject: [PATCH] Delete isp_module_1.sh --- isp_module_1.sh | 233 ------------------------------------------------ 1 file changed, 233 deletions(-) delete mode 100644 isp_module_1.sh diff --git a/isp_module_1.sh b/isp_module_1.sh deleted file mode 100644 index 79d4470..0000000 --- a/isp_module_1.sh +++ /dev/null @@ -1,233 +0,0 @@ -#!/bin/bash - -# Скрипт настройки ISP хоста -# Проверяем, запущен ли скрипт от root -if [[ $EUID -ne 0 ]]; then - echo "Этот скрипт должен быть запущен с правами root" - exit 1 -fi - -echo "=== Настройка ISP хоста ===" - -# 1. Установка имени хоста -read -p "Введите имя хоста (например: isp.au-team.irpo): " hostname -if [[ -n "$hostname" ]]; then - echo "Устанавливаем имя хоста: $hostname" - hostnamectl set-hostname "$hostname" - exec bash -else - echo "Имя хоста не было введено, пропускаем этот шаг" -fi - -echo "" -echo "=== Настройка сетевых интерфейсов ===" - -# 2. Настройка enp0s8 -echo "Настройка интерфейса enp0s8 (HQ-RTR)" -read -p "Введите IP адрес для enp0s8 (например: 172.16.4.1/28): " ip_enp0s8 - -if [[ -n "$ip_enp0s8" ]]; then - echo "Настраиваем enp0s8 с адресом: $ip_enp0s8" - - # Создаем файл конфигурации для enp0s8 - cat > /etc/NetworkManager/system-connections/enp0s8.nmconnection << EOF -[connection] -id=enp0s8 -uuid=$(uuidgen) -type=ethernet -autoconnect-priority=-999 -interface-name=enp0s8 -timestamp=$(date +%s) - -[ethernet] - -[ipv4] -address1=$ip_enp0s8 -method=manual - -[ipv6] -addr-gen-mode=eui64 -method=disabled - -[proxy] -EOF - - chmod 600 /etc/NetworkManager/system-connections/enp0s8.nmconnection -fi - -# 3. Настройка enp0s9 -echo "" -echo "Настройка интерфейса enp0s9 (BR-RTR)" -read -p "Введите IP адрес для enp0s9 (например: 172.16.5.1/28): " ip_enp0s9 - -if [[ -n "$ip_enp0s9" ]]; then - echo "Настраиваем enp0s9 с адресом: $ip_enp0s9" - - # Создаем файл конфигурации для enp0s9 - cat > /etc/NetworkManager/system-connections/enp0s9.nmconnection << EOF -[connection] -id=enp0s9 -uuid=$(uuidgen) -type=ethernet -autoconnect-priority=-999 -interface-name=enp0s9 -timestamp=$(date +%s) - -[ethernet] - -[ipv4] -address1=$ip_enp0s9 -method=manual - -[ipv6] -addr-gen-mode=eui64 -method=disabled - -[proxy] -EOF - - chmod 600 /etc/NetworkManager/system-connections/enp0s9.nmconnection -fi - -# 4. Настройка enp0s3 (внешний интерфейс) -echo "" -echo "Настройка интерфейса enp0s3 (внешний, в интернет)" -read -p "Использовать DHCP для enp0s3? (y/n): " use_dhcp - -if [[ "$use_dhcp" == "y" || "$use_dhcp" == "Y" ]]; then - echo "Настраиваем enp0s3 на получение адреса по DHCP" - - cat > /etc/NetworkManager/system-connections/enp0s3.nmconnection << EOF -[connection] -id=enp0s3 -uuid=$(uuidgen) -type=ethernet -autoconnect-priority=-999 -interface-name=enp0s3 -timestamp=$(date +%s) - -[ethernet] - -[ipv4] -method=auto - -[ipv6] -addr-gen-mode=eui64 -method=disabled - -[proxy] -EOF -else - read -p "Введите статический IP для enp0s3 (формат: IP/маска, шлюз, DNS): " ip_enp0s3 - if [[ -n "$ip_enp0s3" ]]; then - echo "Настраиваем enp0s3 со статическим адресом" - - # Разбираем ввод (ожидается формат: 192.168.1.2/24,192.168.1.1,8.8.8.8) - IFS=',' read -ra ADDR <<< "$ip_enp0s3" - ip_with_mask="${ADDR[0]}" - gateway="${ADDR[1]}" - dns="${ADDR[2]}" - - cat > /etc/NetworkManager/system-connections/enp0s3.nmconnection << EOF -[connection] -id=enp0s3 -uuid=$(uuidgen) -type=ethernet -autoconnect-priority=-999 -interface-name=enp0s3 -timestamp=$(date +%s) - -[ethernet] - -[ipv4] -address1=$ip_with_mask -gateway=$gateway -dns=$dns -method=manual - -[ipv6] -addr-gen-mode=eui64 -method=disabled - -[proxy] -EOF - fi -fi - -chmod 600 /etc/NetworkManager/system-connections/enp0s3.nmconnection - -echo "" -echo "=== Перезапуск NetworkManager ===" -systemctl restart NetworkManager -sleep 3 - -echo "" -echo "=== Настройка iptables и маршрутизации ===" - -# 5. Включение и настройка iptables -systemctl enable --now iptables -echo "Статус iptables:" -systemctl status iptables --no-pager - -# 6. Очистка правил iptables и настройка NAT -iptables -F -iptables -t nat -F - -# Определяем подсети из введенных адресов -if [[ -n "$ip_enp0s8" ]]; then - # Извлекаем подсеть из формата IP/маска - subnet1=$(echo "$ip_enp0s8" | cut -d'/' -f1 | cut -d'.' -f1-3) - mask1=$(echo "$ip_enp0s8" | cut -d'/' -f2) - iptables -t nat -A POSTROUTING -s $subnet1.0/$mask1 -o enp0s3 -j MASQUERADE - echo "Добавлено правило NAT для подсети: $subnet1.0/$mask1" -fi - -if [[ -n "$ip_enp0s9" ]]; then - subnet2=$(echo "$ip_enp0s9" | cut -d'/' -f1 | cut -d'.' -f1-3) - mask2=$(echo "$ip_enp0s9" | cut -d'/' -f2) - iptables -t nat -A POSTROUTING -s $subnet2.0/$mask2 -o enp0s3 -j MASQUERADE - echo "Добавлено правило NAT для подсети: $subnet2.0/$mask2" -fi - -# 7. Сохранение правил iptables -service iptables save - -# 8. Включение IP forwarding -echo "Включаем IP forwarding..." -sysctl net.ipv4.ip_forward=1 >> /etc/sysctl.conf -sysctl -p - -echo "" -echo "=== Проверка настроек ===" -echo "Текущие правила iptables NAT:" -iptables -t nat -L POSTROUTING -n -v - -echo "" -echo "Текущее состояние IP forwarding:" -sysctl net.ipv4.ip_forward - -echo "" -echo "=== Тестирование соединения (после перезагрузки) ===" -echo "После перезагрузки вы можете выполнить следующие команды для проверки:" -if [[ -n "$ip_enp0s8" ]]; then - ip1=$(echo "$ip_enp0s8" | cut -d'/' -f1) - echo "ping ya.ru -I $ip1" -fi -if [[ -n "$ip_enp0s9" ]]; then - ip2=$(echo "$ip_enp0s9" | cut -d'/' -f1) - echo "ping ya.ru -I $ip2" -fi - -echo "" -read -p "Выполнить перезагрузку сейчас? (y/n): " reboot_now -if [[ "$reboot_now" == "y" || "$reboot_now" == "Y" ]]; then - echo "Перезагружаем систему..." - reboot -else - echo "Настройка завершена. Перезагрузите систему для применения всех изменений." - echo "Используйте команду: reboot" -fi - - - -