Saltar para o conteúdo
Blog

serviços Web Exchange da grommunio com clientes Linux

· por grommunio
serviços Web Exchange da grommunio com clientes Linux

Desde o ano passado que a grommunio tem vindo a suportar os Serviços Web do Exchange (EWS). Estes serviços, introduzidos pela primeira vez pela Microsoft no Exchange 2007, representam outra API importante através da qual os clientes utilizam para comunicar com os servidores Exchange (e o Office 365, agora MS 365). Especialmente interessante é o facto de a Microsoft ter introduzido abertamente os EWS para incentivar os programadores terceiros a contribuírem com os seus clientes.

E foi o que aconteceu, com o qual a grommunio também pode beneficiar. Os programadores, no entanto, beneficiam da vasta quantidade de funções de depuração e gestão que a grommunio oferece. É aqui que o poder do modelo de desenvolvimento de fonte aberta da grommunio se torna evidente. Para além do ambiente de trabalho interno da grommunio e das aplicações padrão totalmente suportadas no Windows e Mac (Outlook), bem como no Android e iPhones, existem aplicações cuja integração do EWS é mantida pela comunidade. Uma vez que existem em diferentes qualidades, o exemplo de um candidato algo “instável” mostra como o grommunio é útil e poderoso como servidor e as excelentes possibilidades que oferece para depuração, especialmente em comparação com o Exchange da Microsoft.

Serviços Web do Exchange: Totalmente suportado desde o grommunio 2023.11.3

Primeiro as coisas mais importantes: Com a última versão 2023.11.3 do grommunio, o EWS ultrapassou o estatuto beta e é agora totalmente suportado. Esta funcionalidade é especialmente [útil para os clientes Apple] (https://support.apple.com/en-gb/guide/deployment/dep158966b23/web), não só o Outlook para Mac, mas também aplicações como o Apple Mail e o Calender são agora suportados pelo grommunio. Os serviços EWS estão activos por predefinição desde 2023.11.3 - consulte Notas de lançamento.

A Microsoft especificou a sua API EWS em grande detalhe e permite funções extensivas, incluindo administração e gestão de dados. No entanto, o EWS é também particularmente atrativo porque o fabricante pretende e incentiva o desenvolvimento de clientes pela comunidade em geral. O EWS deverá tornar-se a interface para outros clientes, ferramentas e processamento de dados para dados do Exchange, bem como para ferramentas como o Sharepoint ou o Skype. Se quiser saber mais, pode encontrar mais informações em blogues como o TechGenix.

Groupware, administração remota e muito mais

Há muito tempo que existem implementações do lado do cliente para o EWS no mundo do código aberto: O Mozilla Thunderbird, bem como o Evolution do GNOME e o KDE Kontact têm vindo a oferecer a ligação ao EWS, embora com qualidade diferente e com premissas diferentes. Quem mergulhar nestas implementações não deve esperar quaisquer milagres. Mesmo que cada vez mais utilizadores confiem no software livre no local de trabalho, o ambiente de trabalho Linux continua a ser uma ferramenta exótica, apenas atrás do MacOS como sistema cliente.

Pior ainda: entre os utilizadores do ambiente de trabalho Linux, aqueles que necessitam de um cliente de groupware completo, como o Outlook, são uma exceção; as ferramentas Web são normalmente suficientes para esses utilizadores, e existem implementações como o grommunio Desktop, que trazem sempre o aspeto e a sensação do sítio Web para todos os sistemas operativos de uma forma uniforme, segura e independente do navegador. A coisa boa sobre essas variantes do Electron é que elas combinam todos os recursos em uma GUI, assim como eles aparecem na interface web.

grommunio Desktop Mail

O ambiente de trabalho do grommunio também está disponível em todos os sistemas operativos Linux, mas não utiliza o EWS.

Mas mesmo que o grupo-alvo para um cliente ou plugin EWS nativo no ambiente de trabalho Linux seja pequeno e a comunidade de programadores também, não deixa de ser surpreendente o que a comunidade Linux já conseguiu aqui (sem o apoio, por exemplo, do grommunio), e até onde se pode chegar com ele na vida quotidiana.

Vencedor do teste EWS: Evolution

Entre os clientes EWS reais para Linux, o programa Evolution do Gnome tem o melhor desempenho, e faz isso muito melhor do que seus concorrentes. Com o seu estilo e interface de utilizador bastante clássicos e simples, tem de longe a melhor integração EWS, que também funcionou de imediato no teste e reconheceu automaticamente todas as definições necessárias, também em combinação com o grommunio.

No openSUSE, a maneira mais fácil de obter o Evolution instalado com sua extensão EWS é um “zypper in evolution-ews”, que também baixa o plugin EWS. A partir do Evolution 3.27.91 o Oauth 2 também funciona com o MS 365, atualmente o Tumbleweed já instala o evolution-ews 3.52.

grommunio Exchange Web Services: Instalação do Evolution EWS

Especialmente agradável: Após a instalação, no primeiro arranque, o Evolution faz todo o trabalho para o utilizador: Um assistente pede o endereço de correio eletrónico, o que é suficiente para descobrir automaticamente todos os outros dados relevantes. Se o utilizador quiser fazer isto mais tarde, pode fazer o mesmo com o menu “Contas | Adicionar”.

Especialmente agradável: Após a instalação, no primeiro arranque, o Evolution faz todo o trabalho para o utilizador: Um assistente pede o endereço de correio eletrónico, o que é suficiente para descobrir automaticamente todos os outros dados relevantes. Se o utilizador quiser fazer isto mais tarde, pode fazer o mesmo com o menu “Contas | Adicionar”.

grommunio Exchange Web Services: Evolution

O Evolution é fornecido com uma integração limpa e completa e um assistente de configuração inteligente.

Proprietário hoje, livre amanhã: EWS no Mozilla Thunderbird

A Mozilla também está a trabalhar em serviços Web: “Em relação aos planos futuros da Microsoft, o EWS é a nossa melhor maneira de garantir o suporte tanto para o Exchange Online quanto para as instalações locais”, o portal Linux Howtogeek cita o desenvolvedor Sean Burke. O post ainda é bastante recente, de fevereiro de 2024, ainda não há uma data exacta para os planos da Mozilla, mas pelo menos há um compromisso. Além disso, na FOSDEM em Bruxelas, após a Jan Engelhardt’s Talk sobre o grommunio, houve conversas entre desenvolvedores sobre o EWS no Thunderbird. Estando a ferramenta da Mozilla disponível tanto no Windows como na Apple e no Linux, parece-me uma óptima ideia.

No entanto, até lá, os amantes do Thunderbird terão que se contentar com o ExQuilla add-on (alguns testadores preferiram o termo “struggle”), que tem críticas mistas. Do site vem um ficheiro .xpi, que o utilizador carrega na gestão de extensões do Thunderbird.

Sem calendário?

Depois de clicar no dramático “Permitir ao Exquilla acesso total a este computador”, o utilizador ainda tem de configurar a sua conta Exchange. Não se deixe confundir pela documentação do Exquilla agora apresentada: Ela ainda mostra a interface desatualizada do Thunderbird (através do menu principal, “Ferramentas | ExQuilla para MicrosoftExchange | Adicionar conta do Microsoft Exchange”). Nos Thunderbirds modernos é fornecido um botão separado para a ligação EWS depois de ter instalado a extensão Xpi, diretamente na página inicial.

Tal como no Evolution, a descoberta automática dos dados do grommunio funciona sem problemas, os contactos e os e-mails são transferidos para o Thunderbird. No entanto, o utilizador terá de procurar em vão um calendário, uma vez que a sincronização não faz parte do leque de funções do ExQuilla.

grommunio Exchange Web Services: ExQuilla

Por uma taxa e sem calendário: O ExQuila for Exchange é um plugin para o Mozilla Thunderbird.

Terceiro no grupo: KDE Kontact com EWS

O Kontact do KDE - ou “Kmail” - também tem o EWS “a bordo” há algum tempo, um plugin não é necessário, e o EWS está disponível como um tipo de servidor separado para as contas nas distribuições Linux comuns. É apenas uma pena que a integração pareça estar um pouco órfã, como mostra o copyright na “caixa de diálogo Info”, que data de 2020. Por conseguinte, a integração é instável em alguns sítios. Tal como está atualmente, o EWS funciona com o KDE Kontact, mas ainda não parece recomendável; a depuração manual é por vezes necessária.

grommunio Exchange Web Services: Kontact

O KDE Kontact também vem com um assistente de configuração, mas falha (a partir de abril de 2024) na deteção automática do URL do EWS e causa mensagens de erro.

A instalação em si é muito rápida: basta clicar no botão para adicionar uma nova conta. Clique em ""Setup | Accounts | Add | Custom Mailbox” e selecione a entrada “Microsoft Exchange Server (EWS)”, sendo então apresentado um assistente de configuração semelhante ao do Evolution.

Em teoria, os clientes de groupware de código aberto parecem ter caraterísticas bastante semelhantes: Oauth, NTLMv2, com ou sem domínio, o utilizador pode selecionar muitas definições úteis. Na sua maioria, isto funciona de imediato, apenas o Kontact tropeça (pelo menos com o grommunio) na deteção automática do URL do servidor. É necessário introduzi-lo manualmente para desfrutar do EWS com o KDE no ambiente de trabalho Linux - com alguns inconvenientes e mensagens de erro. Os programadores do grommunio ainda estão a investigar as razões exactas para isto, no teste tivemos simplesmente de introduzir o URL “https://$SERVERNAME/EWS/Exchange.asmx” manualmente ($SERVERNAME, claro, substituído pelo servidor de correio responsável) e desativar a autenticação NTLMv2.

Eis os passos necessários para o Kontact com o grommunio:

  • Abra a caixa de diálogo de configuração clicando em “Definições | Configurar Kmail” no menu principal do Kontact. Selecione o separador “Contas | Receção” e clique em “Adicionar | Caixa de correio personalizada”.
  • Atribua um nome e introduza um endereço de e-mail, desmarque a opção “Domínio”
  • Introduza o nome de utilizador (idêntico ao endereço de correio eletrónico) e a palavra-passe
  • Desativar a caixa de verificação “Deteção automática do servidor” para o grommunio e introduzir o seguinte valor como “EWS URL”: “https://$SERVERNAME/EWS/Exchange.asmx”. Substitua $SERVERNAME pelo FQDN do seu servidor de correio eletrónico.
  • Clique em “Testar ligação”. Se não aparecer nenhuma mensagem de erro, pode continuar com “Execute” e concluir a configuração com “OK”. Depois de ativar as caixas de verificação no calendário e no livro de endereços, os dados do Exchange (ou os dados do grommunio ou do MS365) estarão disponíveis, assim que atualizar o seu E-mail. Tal como acontece com o Evolution, os outros separadores na caixa de diálogo de definições oferecem várias opções de ajuste fino. Mas é aconselhável ter cuidado.

grommunio ajuda na depuração

Particularmente irritante no teste foi um erro no plugin EWS, que parecia colocar o sistema de teste sob uma carga desnecessariamente alta: a mensagem de erro “org.kde.pim.ews.client: Failed to read EWS request - expected GetEventsResponseMessage element” apareceu no diário de mensagens do cliente Linux duas vezes por segundo, indicando que o plugin KDE ainda usa “GetEvents”, enquanto os outros clientes usam agora o funcionamento “GetStreamingEvents”. Também se observaram falhas ocasionais.

Mas o grommunio também pode ajudar aqui: A transparência e a facilidade de administração do seu software de código aberto tornam possível um olhar mais atento aos programas. Se ativar a depuração EWS no servidor, o frontend web de administração da grommunio fornece informações detalhadas sobre os pedidos dos clientes - uma funcionalidade útil não só para ligar programas de groupware Linux não suportados, mas também para além dos Serviços Web do Exchange.

grommunio Exchange Web Services: grommunio-server-log

O registo do servidor mostra os pedidos incorrectos do cliente EWS da Kontact.

Se quiser detetar o comportamento incorreto, defina o “http_log_level” no ficheiro de configuração do grommunio “/etc/gromox/http.cfg” para o valor 7 e os parâmetros ews_request_logging=2 e ews_response_logging=2 em “/etc/gromox/ews.cfg”. Atenção: Estas definições não devem ser mantidas em funcionamento produtivo, uma vez que podem gerar grandes quantidades de dados de registo.

serviços Web de Troca de Informações do grommunio: Depuração](/img/posts/24-04-22_ews-debugging.jpg)

As definições de depuração para o tráfego EWS no servidor grommunio devem ser comentadas durante o funcionamento.

Conclusão: Evolution sim, Kontact não, Thunderbird em breve

Os serviços EWS totalmente integrados que estão agora activos por defeito no grommunio não são apenas interessantes para os clientes Apple. A Microsoft cumpriu a sua promessa de permitir qualquer cliente, e o grommunio e todo o mundo de código aberto também beneficiam com isso. Mas com o grommunio, o primeiro servidor de groupware de fonte aberta totalmente funcional com Exchange Web Services está agora disponível, muitos clientes já o estão a utilizar e, graças à transparência e rastreabilidade da fonte aberta e às muitas opções de configuração, o grommunio também pode ajudar nos casos em que os administradores do Exchange são deixados à sua sorte. Com a grommunio, pode administrar a sua substituição do Exchange a partir de uma linha de comandos Linux, em ficheiros de texto simples, com uma abundância de informações de depuração e - se quiser, puder, precisar - adaptar o código-fonte às suas necessidades.