1. Рады видеть Вас на XenforoTest!

    У нас Вы можете скачать:

    Перед регистрацией рекомендую ознакомиться

    с Условиями скачивания определённых плагинов и Правилами форума.

    Присоединяйтесь! Учите и обучайтесь!

    Скрыть объявление

Конфигуратор шлюза

Тема в разделе "Информационная безопасность и информационные технологии", создана пользователем CyberWarning, 8 ноя 2015.

08.11.15 в 17:30
08.11.15 в 17:30
0
205
0
  1. CyberWarning

    CyberWarning rm -rf /dev/null/
    Забаненный

    Сообщения:
    39
    Симпатии:
    53
    Баллы:
    18
    Конфигурация шлюза на базе сентос или федора,без конфигурации wifi модуля

    Код:
    #!/usr/bin/python3
    import os
    print('Данный скрипт позволит сконфигурировать RedHat подобную систему в качестве интернет шлюза. \n ВАЖНО: Скрипт должен быть запущен с правами Администратора(root) !!!')
    print('\nКакая у вас операционная система? \n 1.CentOS 7 \n 2.Fedora 21+')
    dist = input("Номер: ")
    if dist == "1":
        os.system("yum -y install epel-release")
        os.system("yum -y install dnsmasq hostapd iptables-services")
    else:
        os.system("yum -y install dnsmasq hostapd iptables-services")
    print("\nГотовы?\n")
    hello = input("Ввод [y/n]: ")
    if hello == "y":
        os.system("systemctl disable firewalld")
        os.system("systemctl enable iptables")
        os.system("systemctl start iptables")
        os.system("iptables -F")
        selinux = open('/etc/selinux/config', 'w')
        selinux.write('SELINUX=disabled\nSELINUXTYPE=mls')
        selinux.close()
        os.system("ifconfig -a")
        wan = input("Введите внешний интерфейс: ")
        os.system("iptables -t nat -A POSTROUTING -o " + wan + " -j MASQUERADE")
        lan = input("Введите интерфейсы локальной сети(через запятую без пробела): ")
        handle = open('/etc/dnsmasq.conf', 'w')
        handle.write('interface='+ lan + '\nbind-interfaces\n')
        handle.close()
        interfaces = lan.split(',')
        for a in range(len(interfaces)):
            os.system("iptables -A FORWARD -i " + interfaces[a] + " -j ACCEPT")
            os.system("iptables -A FORWARD -o " + interfaces[a] + " -j ACCEPT")
            dhcp = open('/etc/dnsmasq.conf', 'a')
            dhcp.write('dhcp-range=' + interfaces[a] + ',192.168.' + str(a) + '.1,192.168.' + str(a) + '.254,255.255.255.0,24h\n')
            dhcp.close()
    
        os.system("systemctl enable dnsmasq")
        os.system("systemctl start dnsmasq")
        sysctl = open('/etc/sysctl.conf', 'w')
        sysctl.write('net.ipv4.ip_forward = 1 \nnet.ipv4.tcp_syncookies = 1 \nnet.ipv4.conf.all.accept_redirects = 0 \nnet.ipv4.icmp_echo_ignore_broadcasts= 1')
        sysctl.close()
        os.system("sysctl -p")
        os.system("iptables-save > /etc/sysconfig/iptables")
        print("\n Настроить wifi модуль?")
        wifi = input("Ввод [y/n]: ")
        if wifi == "y":
            wlan = input("Введите интерфейс wifi модуля: ")
            print("Данная функция не доступна в beta версии")
     
    else:
        print('Goodbye :)')
    Запуск из консоли очень прост python3 beta.py и следуем инструкции

    1e10c0f90f68.png
     
    #1 CyberWarning, 8 ноя 2015
    Последнее редактирование модератором: 9 ноя 2015
Rambler's Top100 Яндекс.Метрика INTERKASSA