Converta uma conexão WPA2-Enterprise EDUROAM no NetworkManager para uma conexão do sistema

3

Sou estudante em uma universidade que tem eduroam, uma rede sem fio WPA2-Enterprise. Na minha conta, isso é configurado usando o NetworkManager. Esta é a visão geral de nm-connection-editor :

Marqueiqueestaéumaconexãodosistemadizendo"Todos os usuários podem se conectar a essa rede". Na prática, isso não funciona:

  • Quando eu entro na minha sessão do Awesome WM automaticamente, meu chaveiro (GNOME?) não é desbloqueado. Ele pede minha senha antes de tentar se conectar. Isso é chato, meu disco está criptografado de qualquer maneira. Então, eu gostaria de armazenar a senha como root , por assim dizer.

  • Quando eu faço login em outra conta com o KDE, a conexão não funciona lá.

Então, acho que há dois problemas potenciais aqui:

  1. O arquivo de certificado está no meu diretório pessoal. Outras contas de usuário não podem ler meu diretório pessoal. Se eu transferisse esse certificado para um local central (como /usr/share/ , eu acho?), Outras contas poderiam usar isso, pois o certificado não estaria mais em falta.

  2. A senha é armazenada no meu chaveiro local no meu diretório pessoal. A senha teria que ser armazenada em todo o sistema.

Eu não vejo nenhum arquivo de configuração de qualquer maneira. Do que eu leio , O NetworkManager armazena seus dados em algum serviço com o qual se comunica via D-Bus. Portanto, os dados são armazenados em algum lugar .

Como posso fazer disso uma configuração de sistema que funcione automaticamente para todos os usuários do sistema?

Se é preocupante, a distribuição é do Fedora 24.

    
por Martin Ueding 30.09.2016 / 18:13

2 respostas

3

Para se conectar ao EDUROAM , (uma confederação acadêmica mundial de redes Wi-Fi com roaming de usuários entre instituições / federações) no Linux , você precisará configurar wpa_supplicant .

As instruções e arquivos geralmente podem ser um pouco específicos para o corpo docente e / ou o nível superior do país do EDUROAM. Por isso, vou ligar a uma página em alemão com a configuração EDUROAM para 802.1X a federação DE.

Seu /etc/wpa_supplicant.conf deve ser algo semelhante a isto:

network={
ssid="eduroam"
key_mgmt=WPA-EAP
eap=TTLS
identity="[email protected]" # your login
domain_suffix_match="radius.lrz.de" # your local RADIUS server
subject_match="radius.lrz.de" # your local RADIUS server
anonymous_identity="[email protected]" # your login, or an anonymous generic login
password="XXXX" # your password ca_cert="/etc/ssl/certs/Deutsche_Telekom_Root_CA_2.pem"
phase2="auth=PAP"
}

domain_suffix_match e subject_match estão lá por motivos de segurança, por exemplo, para garantir que você se conecte ao servidor RADIUS real, e não a um servidor falsificado. Se você não souber o nome do seu servidor RADIUS local, tente colocar wpa_supplicant para funcionar sem essas duas diretivas.

Você também pode ter um instalador automatizado na configuração CAT (Ferramenta de Assistente de Configuração do eduroam) do seu corpo docente, que pode ou não ser de ajuda para você. (desde que o corpo docente tenha criado uma página CAT)

Consulte seu especialista local RADIUS / EDUROAM residente de sua faculdade para obter mais detalhes.

Disclaimer: Eu sou o mantenedor do RADIUS / EDUROAM de um corpo docente, e o FreeRadius conselheiro da federação PT .

    
por 30.09.2016 / 18:41
2

Sobre "todos os usuários podem se conectar a esta rede"

Isso define a opção "connection.permissions" em man nm-settings . Ele controla que apenas o usuário do sistema pode modificar, ver e usar a conexão. Isso também significa que a conexão só se conecta automaticamente se o usuário estiver conectado. Em um sistema usual de um usuário, a configuração não importa muito (a menos que você queira que a conexão se conecte automaticamente antes de efetuar login).

Em relação a senhas

Para cada propriedade de senha (por exemplo, WPA PSK, segredos VPN, etc), o NetworkManager suporta um atributo “flags” que permite armazenar a senha em todo o sistema (em texto simples, em um arquivo acessível apenas pelo root), recuperar da sessão do usuário , sempre pergunte, ou não é necessário. Veja a seção secrets em man nm-setttings . Em qualquer caso, sempre que o NM precisar de uma senha que não tenha, ele precisará pedir a outro programa para obtê-lo. Esse programa é o chamado "agente secreto", que é capaz de solicitar ao usuário a senha ou recuperá-la do chaveiro, ou o que for. Esse programa é, por exemplo, nm-applet , nmcli , gnome-shell , plama-nm . Então, geralmente quando você executa uma sessão gráfica como o KDE ou o Gnome, tal agente está de fato em execução. Isso também significa que, se você quiser autoconectar antes de fazer login, terá que armazenar a senha em todo o sistema (em texto simples) ou precisará configurar um agente secreto que recupere o segredo de algum lugar (o último exigiria para hackear alguma coisa, mas de qualquer forma, não está claro de onde você tiraria a senha, pois ninguém está logado).

Quanto a como configurar os sinalizadores de senha e, portanto, o local da senha, você pode fazer isso com vários clientes NM. Se você usar nm-connection-editor como na captura de tela acima, verá um pequeno ícone no campo de entrada de senha. Clique nele e selecione o que você quiser.

Observe que, por exemplo, no Gnome3, se você configurar seu chaveiro com a mesma senha que sua senha de usuário, o chaveiro pode ser automaticamente ignorado quando o usuário faz login. Essa configuração permite armazenar a senha no chaveiro e para se conectar automaticamente ao iniciar sua sessão do gnome. Os detalhes podem variar e provavelmente algo similar também funciona com o KDE.

Considera arquivos de certificado

Todos os certificados no NetworkManager podem ser armazenados em linha ou como um caminho. Inline não é ótimo, e na verdade o nm-connection-editor só permite que você especifique um caminho. O uso de caminhos também é problemático, porque o NetworkManager (e o wpa-suplicant e os plug-ins de VPN) são executados como um usuário diferente, portanto, você deve verificar se os arquivos estão acessíveis para o NetworkManager. Na prática, isso significa, por exemplo, garantir que eles tenham a marcação correta do SELinux, o que, por sua vez, significa copiar os certificados para ~/.cert . Isso um dia será melhorado com um gerenciador de certificados (fora do NetworkManager) e, em vez de passar pelo arquivo (path), usando URLs pkcs11 para fazer referência a certificados no armazenamento.

Quanto ao local onde suas conexões são armazenadas

Isso depende do plug-in de configurações configuradas (consulte plugins in man NetworkManager.conf ). No fedora, isso significa ifcfg-rh,keyfile por padrão. Então, de preferência, as conexões estão no formato ifcfg-rh (consulte man nm-settings-ifcfg-rh , /etc/sysconfig/networking-scripts/ifcfg-rh* ) e, em segundo lugar, no formato de arquivo de chave (consulte man nm-settings-keyfile , /etc/NetworkManager/system-connections ).

O motivo pelo qual o KDE se comportaria de maneira diferente do Gnome não é claro. Provavelmente algo com o agente secreto ( gnome-shell vs. plasma-nm ) e a configuração do conjunto de chaves.

    
por 01.10.2016 / 09:25