stop_portail.py 1.61 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
# Copyright © 2017  Gabriel Détraz
# Copyright © 2017  Goulven Kermarec
# Copyright © 2017  Augustin Lemesle
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License along
# with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
Gabriel Detraz's avatar
Gabriel Detraz committed
18
#
19 20 21
# Ce script est appellé avant le démarage du portail, il insère les bonnes règles
# dans l'iptables et active le routage

Gabriel Detraz's avatar
Gabriel Detraz committed
22
from django.core.management.base import BaseCommand, CommandError
23 24


Gabriel Detraz's avatar
Gabriel Detraz committed
25
from users.models import restore_iptables, create_ip_set, fill_ipset, disable_iptables, apply
26 27
from portail_captif.settings import AUTORIZED_INTERFACES

Gabriel Detraz's avatar
Gabriel Detraz committed
28 29 30 31 32 33 34 35 36 37 38 39
class Command(BaseCommand):
    help = 'Mets en place iptables et le set ip au démarage'

    def handle(self, *args, **options):
        # Destruction de l'iptables
        disable_iptables()
        # Desactivation du routage sur les bonnes if
        for interface in AUTORIZED_INTERFACES:
            apply(["sudo", "-n", "sysctl",  "net.ipv6.conf.%s.forwarding=0" % interface])
            apply(["sudo", "-n", "sysctl",  "net.ipv4.conf.%s.forwarding=0" % interface])


40 41