Pular para o conteúdo
Blog

Exchange Web Services da grommunio com clientes Linux

· por grommunio
Exchange Web Services da grommunio com clientes Linux

Desde o ano passado, a grommunio oferece suporte ao Exchange Web Services (EWS). Esses serviços, introduzidos pela primeira vez pelo Microsoft no Exchange 2007, representam outro importante API por meio do qual os clientes se comunicam com os servidores Exchange (e Office 365, agora MS 365). Especialmente interessante é o fato de que o Microsoft introduziu abertamente o EWS para incentivar os desenvolvedores de terceiros a contribuírem com seus clientes.

E eles o fizeram, o que também pode beneficiar a grommunio. Os desenvolvedores, no entanto, se beneficiam da grande quantidade de funções de depuração e gerenciamento que a grommunio oferece. É aí que o poder do modelo de desenvolvimento de código aberto da grommunio se torna evidente. Além do desktop interno da grommunio e dos aplicativos padrão totalmente compatíveis com o Windows e o Mac (Outlook), bem como com o Android e os iPhones, há aplicativos cuja integração com o EWS é mantida pela comunidade. Como eles têm qualidade diferente, o exemplo de um candidato um tanto “instável” mostra o quanto o grommunio é útil e poderoso como servidor e as excelentes possibilidades que ele oferece para depuração, especialmente em comparação com o Microsoft do Exchange.

Exchange Web Services: totalmente compatível desde o grommunio 2023.11.3

Primeiro as coisas mais importantes: Com a versão 2023.11.3 mais recente do grommunio, o EWS ultrapassou o status beta e agora é totalmente compatível. O recurso é especialmente útil para clientes Apple, não apenas o Outlook for Mac, mas também aplicativos como o Apple Mail e o Calender agora são compatíveis com o grommunio. Os serviços EWS estão ativos por padrão desde 2023.11.3 - consulte Notas da versão.

O Microsoft especificou seu EWS API detalhadamente e permite funções abrangentes, incluindo administração e gerenciamento de dados. No entanto, o EWS também é particularmente atraente porque o fabricante deseja e incentiva o desenvolvimento de clientes pela comunidade em geral. O EWS deve se tornar a interface para outros clientes, ferramentas e processamento de dados para os dados do Exchange, bem como para ferramentas como o Sharepoint ou o Skype. Se quiser ler mais, você pode encontrar mais informações em blogs como o TechGenix.

Groupware, administração remota e muito mais

Há muito tempo, existem implementações do lado do cliente para o EWS no mundo de código aberto: O Mozilla Thunderbird, bem como o Evolution e o KDE Kontact do GNOME, têm oferecido a conexão com o EWS, embora com qualidade diferente e com premissas diferentes. Quem mergulhar nessas implementações não deve esperar nenhum milagre. Mesmo que cada vez mais usuários estejam confiando em software livre no local de trabalho, o desktop Linux ainda permanece uma ferramenta exótica, atrás apenas do MacOS como sistema cliente.

Pior ainda: entre os usuários do desktop Linux, aqueles que precisam de um cliente de groupware completo, como o Outlook, são uma exceção; as ferramentas da Web geralmente são totalmente suficientes para esses usuários, e há implementações como grommunio Desktop, que sempre trazem a aparência do site para todos os sistemas operacionais de maneira uniforme, segura e independente do navegador. O bom dessas variantes do Electron é que elas combinam todos os recursos em uma GUI, exatamente como aparecem na interface da Web.

grommunio Desktop Mail
O desktop grommunio também está disponível em todos os sistemas operacionais Linux, mas não usa o EWS.

Mas, mesmo que o grupo-alvo para um cliente ou plug-in nativo do EWS no desktop Linux seja pequeno, assim como a comunidade de desenvolvedores, ainda é surpreendente o que a comunidade Linux já alcançou aqui (sem o suporte, por exemplo, do grommunio) e o quanto você pode conseguir com ele na vida cotidiana.

Vencedor do teste EWS: Evolution

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

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

grommunio Exchange Web Services: Instalação do Evolution EWS
Muito legal: Após a instalação, na primeira inicialização, o Evolution faz todo o trabalho para o usuário: Um assistente solicita o endereço de e-mail, o que é suficiente para descobrir automaticamente todos os outros dados relevantes. Se quiser fazer isso mais tarde, você pode fazer o mesmo com o menu "Accounts | Add".

Muito bom: Após a instalação, na primeira inicialização, o Evolution faz todo o trabalho para o usuário: Um assistente solicita o endereço de e-mail, o que é suficiente para descobrir automaticamente todos os outros dados relevantes. Se quiser fazer isso mais tarde, você pode fazer o mesmo com o menu “Accounts | Add”.

grommunio Exchange Web Services: Evolution
O Evolution vem 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á trabalhando em serviços da Web: “Com relação aos planos futuros do Microsoft, o EWS é nossa melhor maneira de garantir o suporte tanto para o Exchange Online quanto para instalações locais”, o portal Linux Howtogeek cita o desenvolvedor Sean Burke. A postagem ainda é bastante recente, de fevereiro de 2024, ainda não há uma data exata para os planos da Mozilla, mas pelo menos há um compromisso. Além disso, na FOSDEM em Bruxelas, após a palestra de Jan Engelhardt sobre o grommunio, houve conversas entre desenvolvedores sobre o EWS no Thunderbird. Como a ferramenta da Mozilla está disponível no Windows, no Apple e no Linux, essa parece ser uma ótima 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 arquivo .xpi, que o usuário carrega no gerenciamento de extensões do Thunderbird.

Sem calendário?

Depois de clicar em “Allow Exquilla full access to this computer” (Permitir ao Exquilla acesso total a este computador), o usuário ainda precisa configurar sua conta do Exchange. Não deixe que a documentação do Exquilla exibida agora o confunda: Ela ainda mostra a interface desatualizada do Thunderbird (por meio do menu principal, “Tools | ExQuilla for MicrosoftExchange | Add Microsoft Exchange Account”). Nos Thunderbirds modernos, um botão separado é fornecido para a conexão EWS após a instalação da extensão Xpi, diretamente na página inicial.

Assim como no Evolution, a descoberta automática dos dados do grommunio funciona sem problemas, os contatos e os e-mails são transferidos para o Thunderbird. No entanto, o usuário procurará em vão por um calendário, pois a sincronização não faz parte da gama de funções do ExQuilla.

grommunio Exchange Web Services: ExQuilla
Por uma taxa e sem calendário: O ExQuila para Exchange é um plug-in para o Mozilla Thunderbird.

Terceiro no grupo: KDE Kontact com EWS

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

grommunio Exchange Web Services: Kontact
O KDE Kontact também vem com um assistente de configuração, mas ele não consegue (em abril de 2024) detectar automaticamente a URL do EWS e gera 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)” e, em seguida, será apresentado a você um assistente de configuração semelhante ao do Evolution.

Em teoria, os clientes de groupware de código aberto parecem ter recursos bastante semelhantes: Oauth, NTLMv2, com ou sem domínio, o usuário pode selecionar muitas configurações úteis. Em sua maior parte, isso funciona imediatamente, mas apenas o Kontact tropeça (pelo menos com o grommunio) na detecção automática do URL do servidor. É necessário inseri-lo manualmente para aproveitar o EWS com o KDE na área de trabalho do Linux, com algumas desvantagens e mensagens de erro. Os desenvolvedores do grommunio ainda estão investigando as razões exatas para isso; no teste, simplesmente tivemos que inserir o URL “https://$SERVERNAME/EWS/Exchange.asmx” manualmente ($SERVERNAME, é claro, substituído pelo servidor de e-mail responsável) e desativar a autenticação NTLMv2.

Aqui estão as etapas necessárias para o Kontact com o grommunio:

  • Abra a caixa de diálogo de configuração clicando em “Settings | Set up Kmail” no menu principal do Kontact. Selecione a guia “Accounts | Reception” (Contas | Recepção) e clique em “Add | Custom mailbox” (Adicionar | Caixa de correio personalizada).
  • Atribua um nome e digite um endereço de e-mail, desmarque a opção “Domain” (Domínio)
  • Digite o nome de usuário (idêntico ao endereço de e-mail) e a senha
  • Desative a caixa de seleção “Automatic detection of the server” (Detecção automática do servidor) para o grommunio e digite o seguinte valor como “EWS URL”: “https://$SERVERNAME/EWS/Exchange.asmx”. Substitua $SERVERNAME pelo FQDN do seu servidor de e-mail.
  • Clique em “Test Connection” (Testar conexão). Se nenhuma mensagem de erro for exibida, você poderá continuar com “Execute” e concluir a configuração com “OK”. Depois de ativar as caixas de seleção no calendário e no catálogo de endereços, os dados do Exchange (ou os dados do grommunio ou do MS365) estarão disponíveis assim que você atualizar o e-mail. Assim como no Evolution, as outras guias da caixa de diálogo de configurações oferecem muitas opções para ajuste fino. Mas é preciso ter cuidado.

grommunio ajuda na depuração

Particularmente irritante no teste foi um erro no plug-in 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 plug-in do KDE ainda usa “GetEvents”, enquanto os outros clientes agora usam o funcionamento “GetStreamingEvents”. Também foram observados travamentos ocasionais.

Mas o grommunio também pode ajudar aqui: A transparência e a facilidade de administração de seu software de código aberto possibilitam uma análise mais detalhada dos programas. Se você ativar a depuração do EWS no servidor, o frontend da Web do administrador do grommunio fornecerá informações detalhadas sobre as solicitações do cliente - um recurso útil não apenas ao conectar programas de groupware Linux sem suporte, mas também além do Exchange Web Services.

grommunio Exchange Web Services: grommunio-server-log

O registro do servidor mostra as solicitações incorretas do cliente EWS da Kontact.

Se quiser rastrear o comportamento incorreto por conta própria, defina o “http_log_level” no arquivo 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: Essas configurações não devem ser mantidas em operação produtiva, pois podem gerar grandes quantidades de dados de registro.

grommunio Exchange Web Services: depuração
As configurações de depuração para o tráfego EWS no servidor grommunio devem ser comentadas durante a operação.

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

Os serviços EWS totalmente integrados que agora estão ativos por padrão no grommunio não são interessantes apenas para os clientes Apple. O Microsoft manteve sua promessa de permitir qualquer cliente, e o grommunio e todo o mundo de código aberto também se beneficiam disso. Mas com o grommunio, o primeiro servidor de groupware de código aberto totalmente funcional com o Exchange Web Services já está disponível, vários clientes já o estão usando e, graças à transparência e à rastreabilidade do código aberto 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 por conta própria. Com o grommunio, você pode administrar seu substituto do Exchange a partir de uma linha de comando do Linux, em arquivos 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.