Esempio n. 1
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()
Esempio n. 2
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()
Esempio n. 3
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()
Esempio n. 4
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()
Esempio n. 5
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()
Esempio n. 6
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()
Esempio n. 7
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()
Esempio n. 8
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()
Esempio n. 9
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()
Esempio n. 10
0
def fail_dummy(test):
    # jobs.job_clear_messages()
    jobs.job_error(_("Job fehlgeschlagen."))
    raise jobs.JobFailedError()
Esempio n. 11
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()