Como aplicar automaticamente a configuração do wpa_supplicant?

1

Para autenticar em uma rede corporativa, tenho que executar o seguinte comando:

$ sudo wpa_supplicant -i eth0 -D wired -c /etc/wpa_supplicant/mywired.conf -B

O script de configuração carregado está assim:

# global configuration
ctrl_interface=/var/run/wpa_supplicant
#ctrl_interface_group=wheel
ap_scan=0

# 802.1x wired configuration    

# eap-ttls
network={
    key_mgmt=IEEE8021X
    eap=TTLS
    identity="[email protected]"
    anonymous_identity="[email protected]"
    password="password"
    ca_cert="/home/user/deutsche-telekom-root-ca-2.pem"
    phase2="auth=PAP"
    eapol_flags=0
    priority=5
}

# eap-peap
network={
    key_mgmt=IEEE8021X
    eap=PEAP
    identity="[email protected]"
    anonymous_identity="[email protected]"
    password="password"
    ca_cert="/home/user/deutsche-telekom-root-ca-2.pem"
    phase2="auth=MSCHAPV2"
    eapol_flags=0
    priority=10
}

Sem a configuração eu faço não obter um endereço IP atribuído via DHCP.
Como posso aplicar automaticamente essa configuração na inicialização? Estou executando o Ubuntu 14.10.

    
por JJD 04.02.2015 / 10:33

2 respostas

1

Basta colocar seu comando em /etc/rc.local. Certifique-se de que esteja em uma única linha.

sudo wpa_supplicant -i eth0 -D wired -c /etc/wpa_supplicant/mywired.conf -B

Eu suponho que sua conexão é estável e não está caindo. Comente se sua conexão cair. Eu vou fazer um script. Tem que dormir agora.

    
por 21.02.2015 / 15:16
3

Se você quer que o wpa-suplicante rode usando essa configuração na inicialização, você deve colocar o comando em rc.local .
Como root, abra /etc/rc.local em um editor de texto e cole em seu comando:

wpa_supplicant -i eth0 -D wired -c /etc/wpa_supplicant/mywired.conf -B

Certifique-se de que Systemd esteja sendo executado rc.local :

sudo systemctl enable rc-local

e reinicie. Deve funcionar.

EDITAR:

Caso contrário, você também pode simplesmente escrever sua própria regra systemd .

Primeiro, salve seu comando wpa-supplicant em algum lugar sensível, como / usr / local / bin ou / opt e torne-o executável.
O arquivo deve ficar assim:

#!/bin/sh
wpa_supplicant -i eth0 -D wired -c /etc/wpa_supplicant/mywired.conf -B

Vamos supor que você tenha chamado de wpastart.sh .
Agora crie um arquivo em / usr / lib / systemd / system e nomeie-o como wpa.service .
Abra o arquivo vazio em um editor de texto e faça com que pareça:

[Unit]
Description=WPA Supplicant Startup

[Service]
Type=idle
ExecStart=/usr/local/bin/wpastart.sh

[Install]
WantedBy=multi-user.target

Inicie o serviço como de costume:

systemctl enable wpastart.service

E agora você escreveu seu primeiro script de inicialização systemd .

    
por 18.02.2015 / 03:50