Exemple #1
0
def toggle_dhcpd(state):
    try:
        if state in ['no', 'yes']:
            try:
                logger.debug("dhcp server: %s" % state)
                if state == 'yes':
                    jobs.job_message(_("DHCP Server wird aktiviert..."))
                else:
                    jobs.job_message(_("DHCP Server wird deaktiviert..."))
                utils.exec_upri_config('set_dhcpd', state)

                jobs.job_message(_("DHCP Server wird konfiguriert..."))
                utils.exec_upri_config('restart_dhcpd')
                jobs.job_message(
                    _("Konfiguration des DHCP Servers erfolgreich."))

            except utils.AnsibleError as e:
                logger.error("ansible failed with error %d: %s" %
                             (e.rc, e.message))
                raise
        else:
            jobs.job_message(_("Es ist ein unbekannter Fehler aufgetreten."))
            raise jobs.JobFailedError()

    except Exception as e:
        logger.exception(e)
        # jobs.job_clear_messages()
        jobs.job_error(_("Konfiguration des DHCP Servers fehlgeschlagen."))
        raise jobs.JobFailedError()
Exemple #2
0
def reconfigure_wlan(ssid, password):
    try:
        jobs.job_message(_("Das Silent WLAN wird neu konfiguriert..."))
        try:
            if ssid:
                logger.debug("new ssid: %s" % ssid)
                jobs.job_message(_("Name wird geändert..."))
                utils.exec_upri_config('set_ssid', ssid)
            if password:
                logger.debug("new password: %s" % password)
                jobs.job_message(_("Passwort wird geändert..."))
                utils.exec_upri_config('set_password', password)
            if password or ssid:
                jobs.job_message(_("Wlan wird neu gestartet..."))
                logger.debug("restarting wlan")
                utils.exec_upri_config('restart_wlan')

            jobs.job_message(_("Konfiguration des WLANs erfolgreich."))

        except utils.AnsibleError as e:
            logger.error("ansible failed with error %d: %s" %
                         (e.rc, e.message))
            # jobs.job_message(_("Es ist ein unbekannter Fehler aufgetreten. Fehlercode: %(errorcode)s" % {'errorcode': e.rc}))
            raise

    except Exception as e:
        logger.exception(e)
        # jobs.job_clear_messages()
        jobs.job_error(_("Konfiguration des WLANs fehlgeschlagen."))
        raise jobs.JobFailedError()
Exemple #3
0
def toggle_vpn(state):
    try:
        if state in ['yes', 'no']:
            try:
                if state == 'yes':
                    jobs.job_message(_("VPN wird gestartet..."))
                else:
                    jobs.job_message(_("VPN wird gestoppt..."))

                # Restart VPN
                logger.debug("restarting vpn")
                utils.exec_upri_config('enable_vpn', state)
                utils.exec_upri_config('restart_vpn')
                jobs.job_message(_("Konfiguration des VPNs erfolgreich."))

            except utils.AnsibleError as e:
                logger.error("ansible failed with error %d: %s" %
                             (e.rc, e.message))
                raise
        else:
            jobs.job_message(_("Es ist ein unbekannter Fehler aufgetreten."))
            raise jobs.JobFailedError()
    except Exception as e:
        logger.exception(e)
        # jobs.job_clear_messages()
        jobs.job_error(_("Konfiguration des VPNs fehlgeschlagen."))
        raise jobs.JobFailedError()
Exemple #4
0
def delete_profile(profile_id):
    try:
        try:
            jobs.job_message(_("VPN Profile wird entfernt..."))
            logger.debug("deleting vpn profile")
            utils.exec_upri_config('delete_profile', profile_id)
            jobs.job_message(_("Entfernen des VPN Profiles erfolgreich."))

        except utils.AnsibleError as e:
            logger.error("ansible failed with error %d: %s" %
                         (e.rc, e.message))
            # jobs.job_message(_("Entfernen des VPN Profiles fehlgeschlagen."))
            raise

    except Exception as e:
        logger.exception(e)
        # jobs.job_clear_messages()
        jobs.job_error(_("Entfernen des VPN Profiles fehlgeschlagen."))
        raise jobs.JobFailedError()
Exemple #5
0
def generate_profile(profile_id):
    try:
        try:
            jobs.job_message(_("VPN Profile wird generiert..."))
            logger.debug("generating vpn profile")
            utils.exec_upri_config('generate_profile', profile_id)
            jobs.job_message(_("Generieren des VPN Profiles erfolgreich."))

        except utils.AnsibleError as e:
            logger.error("ansible failed with error %d: %s" %
                         (e.rc, e.message))
            raise
            # jobs.job_message(_("Generieren des VPN Profiles fehlgeschlagen."))
            #profile = VpnProfile.objects.get(id=profile_id)
            #profile.delete()
    except Exception as e:
        logger.exception(e)
        # jobs.job_clear_messages()
        jobs.job_error(_("Generieren des VPN Profiles fehlgeschlagen."))
        raise jobs.JobFailedError()
Exemple #6
0
def toggle_ssh(state):
    try:
        if state in ['yes', 'no']:
            try:
                if state == 'yes':
                    jobs.job_message(_("SSH wird gestartet..."))
                else:
                    jobs.job_message(_("SSH wird gestoppt..."))

                logger.debug("restarting ssh")
                utils.exec_upri_config('enable_ssh', state)
                utils.exec_upri_config('restart_ssh')
                jobs.job_message(_("Konfiguration von SSH erfolgreich."))

            except utils.AnsibleError as e:
                logger.error("ansible failed with error %d: %s" %
                             (e.rc, e.message))
                raise
        else:
            # jobs.job_message(_("Es ist ein unbekannter Fehler aufgetreten."))
            logger.error("something unexpected happened")
            raise jobs.JobFailedError()
    except Exception as e:
        logger.exception(e)
        # jobs.job_clear_messages()
        jobs.job_error(_("Konfiguration von SSH fehlgeschlagen."))
        raise jobs.JobFailedError()
Exemple #7
0
def toggle_static(state):
    try:
        if state in ['no', 'yes']:
            try:
                if state == 'yes':
                    jobs.job_message(_("Statische IP wird aktiviert..."))
                else:
                    jobs.job_message(_("Statische IP wird deaktiviert..."))

                logger.debug("restarting network")
                utils.exec_upri_config('enable_static_ip', state)
                utils.exec_upri_config('restart_network')
                jobs.job_message(
                    _("Konfiguration der statischen IP erfolgreich."))

            except utils.AnsibleError as e:
                logger.error("ansible failed with error %d: %s" %
                             (e.rc, e.message))
                raise
        else:
            logger.error("something unexpected happened")
            raise jobs.JobFailedError()

    except Exception as e:
        logger.exception(e)
        # jobs.job_clear_messages()
        jobs.job_error(_("Konfiguration der statischen IP fehlgeschlagen."))
        raise jobs.JobFailedError()
Exemple #8
0
def delete_profile(profile_id):
    try:
        jobs.job_message(_("VPN Profile wird entfernt..."))
        logger.debug("deleting vpn profile")
        utils.exec_upri_config('delete_profile', profile_id)
        jobs.job_message(_("Entfernen des VPN Profiles erfolgreich."))

    except utils.AnsibleError as e:
        logger.error("ansible failed with error %d: %s" % (e.rc, e.message))
        jobs.job_message(_("Entfernen des VPN Profiles fehlgeschlagen."))
Exemple #9
0
def generate_profile(profile_id):
    try:
        jobs.job_message(_("VPN Profile wird generiert..."))
        logger.debug("generating vpn profile")
        utils.exec_upri_config('generate_profile', profile_id)
        jobs.job_message(_("Generieren des VPN Profiles erfolgreich."))

    except utils.AnsibleError as e:
        logger.error("ansible failed with error %d: %s" % (e.rc, e.message))
        jobs.job_message(_("Generieren des VPN Profiles fehlgeschlagen."))
Exemple #10
0
def toggle_apate(state, messages=True):
    try:
        if state in ['yes', 'no']:
            try:
                if state == 'yes':
                    if messages:
                        jobs.job_message(
                            _("Apate ARP Spoofing Daemon wird gestartet..."))
                else:
                    if messages:
                        jobs.job_message(
                            _("Apate ARP Spoofing Daemon wird gestoppt..."))

                logger.debug("restarting apate")
                utils.exec_upri_config('enable_apate', state)
                utils.exec_upri_config('restart_apate')
                if messages:
                    jobs.job_message(
                        _("Konfiguration von Apate ARP Spoofing Daemon erfolgreich."
                          ))

            except utils.AnsibleError as e:
                logger.error("ansible failed with error %d: %s" %
                             (e.rc, e.message))
                raise

        else:
            logger.error("something unexpected happened")
            raise jobs.JobFailedError()

    except Exception as e:
        logger.exception(e)
        # jobs.job_clear_messages()
        jobs.job_error(
            _("Konfiguration von Apate ARP Spoofing Daemon fehlgeschlagen."))
        raise jobs.JobFailedError()
Exemple #11
0
def toggle_apate(state):

    if state in ['yes', 'no']:
        try:
            if state == 'yes':
                jobs.job_message(_("Apate ARP Spoofing Daemon wird gestartet..."))
            else:
                jobs.job_message(_("Apate ARP Spoofing Daemon wird gestoppt..."))

            logger.debug("restarting apate")
            utils.exec_upri_config('enable_apate', state)
            utils.exec_upri_config('restart_apate')
            jobs.job_message(_("Konfiguration von Apate ARP Spoofing Daemon erfolgreich."))

        except utils.AnsibleError as e:
            logger.error("ansible failed with error %d: %s" % (e.rc, e.message))
            if state == 'yes':
                jobs.job_message(_("Starten von Apate ARP Spoofing Daemon fehlgeschlagen."))
            else:
                jobs.job_message(_("Stoppen von Apate ARP Spoofing Daemon fehlgeschlagen."))
    else:
        jobs.job_message(_("Es ist ein unbekannter Fehler aufgetreten."))
Exemple #12
0
def toggle_vpn(state):
    if state in ['yes', 'no']:
        try:
            if state == 'yes':
                jobs.job_message(_("VPN wird gestartet..."))
            else:
                jobs.job_message(_("VPN wird gestoppt..."))

            # Restart VPN
            logger.debug("restarting vpn")
            utils.exec_upri_config('enable_vpn', state)
            utils.exec_upri_config('restart_vpn')
            jobs.job_message(_("Konfiguration des VPNs erfolgreich."))

        except utils.AnsibleError as e:
            logger.error("ansible failed with error %d: %s" % (e.rc, e.message))
            if state == 'yes':
                jobs.job_message(_("Starten des VPNs fehlgeschlagen."))
            else:
                jobs.job_message(_("Stoppen des VPNs fehlgeschlagen."))
    else:
        jobs.job_message(_("Es ist ein unbekannter Fehler aufgetreten."))
Exemple #13
0
def toggle_device_mode(mode, device):
    dbfile = None
    try:
        if mode in [entry[0] for entry in DeviceEntry.MODES]:
            if device:
                try:
                    with open('/etc/ansible/default_settings.json', 'r') as f:
                        config = json.load(f)
                except IOError as e:
                    logger.error('Cannot read Default Settings File: ' +
                                 e.strerror)
                    raise

                dbfile = config['django']['db']

                jobs.job_message(_("Gerätemodus wird geändert..."))

                try:
                    if mode == "SL":
                        utils.exec_upri_config('silent_device', device.mac)
                    elif mode == "NJ":
                        utils.exec_upri_config('torify_device', device.mac)
                    elif mode == "NO":
                        utils.exec_upri_config('exclude_device', device.mac)

                    logger.debug("configuring device modes")
                    utils.exec_upri_config('configure_devices')

                except utils.AnsibleError as e:
                    logger.error("ansible failed with error %d: %s" %
                                 (e.rc, e.message))
                    raise

                try:
                    with sqlite3.connect(dbfile) as conn:
                        c = conn.cursor()
                        c.execute(
                            "Update devices_deviceentry set mode=?, changing=? where id=?;",
                            (mode, False, device.id))
                        conn.commit()
                except sqlite3.Error as dbe:
                    # logger.exception(dbe)
                    raise

                jobs.job_message(_("Gerätemodus erfolgreich geändert."))

            else:
                logger.error("device id unknown")
                raise jobs.JobFailedError()
        else:
            logger.error("something unexpected happened")
            # jobs.job_message(_("Es ist ein unbekannter Fehler aufgetreten."))
            raise jobs.JobFailedError()
    except Exception as e:
        logger.exception(e)
        # jobs.job_clear_messages()
        jobs.job_error(_("Ändern des Gerätemodus fehlgeschlagen."))
        try:
            with sqlite3.connect(dbfile) as conn:
                c = conn.cursor()
                c.execute(
                    "Update devices_deviceentry set changing=? where id=?;",
                    (False, device.id))
                conn.commit()
        except Exception:
            # logger.exception(dbe)
            raise jobs.JobFailedError()
        raise jobs.JobFailedError()
Exemple #14
0
def reconfigure_wlan(ssid, password):

    jobs.job_message(_("Das Silent WLAN wird neu konfiguriert..."))
    try:
        if ssid:
            logger.debug("new ssid: %s" % ssid)
            jobs.job_message(_("Name wird geändert..."))
            utils.exec_upri_config('set_ssid', ssid)
        if password:
            logger.debug("new password: %s" % password)
            jobs.job_message(_("Passwort wird geändert..."))
            utils.exec_upri_config('set_password', password)
        if password or ssid:
            jobs.job_message(_("Wlan wird neu gestartet..."))
            logger.debug("restarting wlan")
            utils.exec_upri_config('restart_wlan')

        jobs.job_message(_("Konfiguration erfolgreich"))

    except utils.AnsibleError as e:
        logger.error("ansible failed with error %d: %s" % (e.rc, e.message))
        jobs.job_message(_("Es ist ein unbekannter Fehler aufgetreten. Fehlercode: %(errorcode)s" % {'errorcode': e.rc}))
Exemple #15
0
def toogle_tor(state):

    if state in ['yes', 'no']:
        try:
            if state == 'yes':
                jobs.job_message(_("ninja WLAN wird gestartet..."))
            else:
                jobs.job_message(_("ninja WLAN wird gestoppt..."))

            logger.debug("restarting tor")
            utils.exec_upri_config('enable_tor', state)
            utils.exec_upri_config('restart_tor')
            jobs.job_message(_("Konfiguration des ninja WLAN erfolgreich."))

        except utils.AnsibleError as e:
            logger.error("ansible failed with error %d: %s" %
                         (e.rc, e.message))
            if state == 'yes':
                jobs.job_message(_("Starten des ninja WLAN fehlgeschlagen."))
            else:
                jobs.job_message(_("Stoppen des ninja WLAN fehlgeschlagen."))
    else:
        jobs.job_message(_("Es ist ein unbekannter Fehler aufgetreten."))
Exemple #16
0
def reconfigure_network(ip, netmask, gateway, dns, enable=False):
    try:
        jobs.job_message(
            _("Die Netzwerkeinstellungen werden neu konfiguriert..."))
        try:
            if enable:
                logger.debug("Static IP activated")
                logger.debug(enable)
                jobs.job_message(
                    _("Modus zur Vergabe statischer IP Adressen wird aktiviert..."
                      ))
                utils.exec_upri_config('enable_static_ip', "yes")
            if ip:
                logger.debug("new IP: %s" % ip)
                jobs.job_message(_("IP Adresse wird geändert..."))
                utils.exec_upri_config('set_ip', ip)
            if netmask:
                logger.debug("new netmask: %s" % netmask)
                jobs.job_message(_("Subnetzmaske wird geändert..."))
                utils.exec_upri_config('set_netmask', netmask)
            if gateway:
                logger.debug("new gateway: %s" % gateway)
                jobs.job_message(_("Gateway wird geändert..."))
                utils.exec_upri_config('set_gateway', gateway)
            if dns:
                logger.debug("new dns server: %s" % dns)
                jobs.job_message(_("DNS Server wird geändert..."))
                utils.exec_upri_config('set_dns_server', dns)
            if ip or netmask or gateway or dns:
                if utils.get_fact('interfaces', 'general', 'mode') == "static":
                    jobs.job_message(_("Netzwerk wird neu gestartet..."))
                    logger.debug("restarting network")
                    utils.exec_upri_config('restart_network')

            jobs.job_message(
                _("Konfiguration der Netzwerkeinstellungen erfolgreich."))

        except utils.AnsibleError as e:
            logger.error("ansible failed with error %d: %s" %
                         (e.rc, e.message))
            # jobs.job_message(_("Es ist ein unbekannter Fehler aufgetreten. Fehlercode: %(errorcode)s" % {'errorcode': e.rc}))
            raise
    except Exception as e:
        logger.exception(e)
        # jobs.job_clear_messages()
        jobs.job_error(
            _("Konfiguration der Netzwerkeinstellungen fehlgeschlagen."))
        raise jobs.JobFailedError()
Exemple #17
0
def reconfigure_network(ip, netmask, gateway, dns, dhcp):

    jobs.job_message(_("Die Netzwerkeinstellungen werden neu konfiguriert..."))
    try:
        logger.debug("Static IP activated")
        jobs.job_message(_("Modus zur Vergabe statischer IP Adressen wird aktiviert..."))
        utils.exec_upri_config('enable_static_ip', "static")
        if ip:
            logger.debug("new IP: %s" % ip)
            jobs.job_message(_("IP Adresse wird geändert..."))
            utils.exec_upri_config('set_ip', ip)
        if netmask:
            logger.debug("new netmask: %s" % netmask)
            jobs.job_message(_("Subnetzmaske wird geändert..."))
            utils.exec_upri_config('set_netmask', netmask)
        if gateway:
            logger.debug("new gateway: %s" % gateway)
            jobs.job_message(_("Gateway wird geändert..."))
            utils.exec_upri_config('set_gateway', gateway)
        if dns:
            logger.debug("new dns server: %s" % dns)
            jobs.job_message(_("DNS Server wird geändert..."))
            utils.exec_upri_config('set_dns_server', dns)
        if ip or netmask or gateway or dns:
            jobs.job_message(_("Netzwerk wird neu gestartet..."))
            logger.debug("restarting network")
            utils.exec_upri_config('restart_network')
        if dhcp is not None:
            logger.debug("dhcp server: %s" % dhcp)
            jobs.job_message(_("DNS Server wird geändert..."))
            utils.exec_upri_config('set_dhcpd', "yes" if dhcp else "no")
            jobs.job_message(_("DHCP Server wird konfiguriert..."))
            utils.exec_upri_config('restart_dhcpd')

        jobs.job_message(_("Konfiguration von Interfaces erfolgreich."))

    except utils.AnsibleError as e:
        logger.error("ansible failed with error %d: %s" % (e.rc, e.message))
        jobs.job_message(_("Es ist ein unbekannter Fehler aufgetreten. Fehlercode: %(errorcode)s" % {'errorcode': e.rc}))
Exemple #18
0
def reconfigure_tor(ssid, password):

    jobs.job_message(_("Das Ninja WLAN wird neu konfiguriert..."))

    try:
        if ssid:
            logger.debug("new tor ssid: %s" % ssid)
            jobs.job_message(_("Name wird geändert..."))
            utils.exec_upri_config('set_tor_ssid', ssid)
        if password:
            logger.debug("new tor password")
            jobs.job_message(_("Passwort wird geändert..."))
            utils.exec_upri_config('set_tor_password', password)
        if password or ssid:
            logger.debug("restarting tor wlan")
            jobs.job_message(_("WLAN wird neu gestartet..."))
            utils.exec_upri_config('restart_wlan')

        jobs.job_message(_("Konfiguration erfolgreich."))

    except utils.AnsibleError as e:
        logger.error("ansible failed with error %d: %s" % (e.rc, e.message))
        jobs.job_message(
            _("Es ist ein unbekannter Fehler aufgetreten. Fehlercode: %(errorcode)s"
              % {'errorcode': e.rc}))
Exemple #19
0
def toggle_static(state):

    if state in ['dhcp', 'static']:
        try:
            if state == 'static':
                jobs.job_message(_("Statische IP wird aktiviert..."))
            else:
                jobs.job_message(_("Statische IP wird deaktiviert..."))

            logger.debug("restarting network")
            utils.exec_upri_config('enable_static_ip', state)
            utils.exec_upri_config('restart_network')
            jobs.job_message(_("Konfiguration von Interfaces erfolgreich."))

        except utils.AnsibleError as e:
            logger.error("ansible failed with error %d: %s" % (e.rc, e.message))
            if state == 'static':
                jobs.job_message(_("Aktivierung von statischer IP fehlgeschlagen."))
            else:
                jobs.job_message(_("Deaktivierung von statischer IP fehlgeschlagen."))
    else:
        jobs.job_message(_("Es ist ein unbekannter Fehler aufgetreten."))