====== Projecto de recuperação da hierarquia portuguesa de Net News ====== ==== Sistema de moderação - Informação técnica ==== ---- Administração da hierarquia portuguesa de Net News\\ Outubro de 2016 \\ **Introdução** A moderação automática na hierarquia portuguesa foi criada em 1997, com o surgimento dos primeiros grupos moderados. Em 1998, aprovou-se o alargamento do sistema a toda a hierarquia e que todos os grupos teriam obrigatoriamente que ser moderados, pelo menos com moderação automática, sem prejuízo de poderem optar por moderação humana. Essa votação de 1998 foi a maior de sempre na história da hierarquia, quer em número de votantes (103), quer em número de votos a favor (94). Em 2005, em resultado da indisponibilidade do então responsável pelo sistema de moderação para continuar a manter o serviço, entendeu o anterior administrador da hierarquia extinguir a moderação sem qualquer votação, proposta, consulta ou anúncio no grupo administrativo da hierarquia (pt.internet.usenet). Das várias discussões sobre o problema que se seguiram no grupo administrativo e que culminaram na eleição desta nova administração, nunca resultou nenhuma proposta para que se votasse a extinção da moderação, pelo que a escolha feita em 1998 se mantém como a única opção legitimamente expressa sobre qual a vontade dos utilizadores no que se refere à moderação na hierarquia portuguesa. Acresce que alguns grupos foram explicitamente aprovados como moderados, pelo que extinguir a moderação desses grupos viola a votação que conduziu à criação dos próprios grupos. Cabe-nos então, como novos administradores, procurar colocar novamente em funcionamento um sistema de moderação automática para todos os grupos da hierarquia, conforme aprovado em 1998. No entanto, com o objectivo de melhorar o sistema e permitir novos serviços, é nossa intenção que o sistema a implementar agora acrescente valor ao que existia, mas mantendo a mesma funcionalidade de base. Este documento visa apresentar o sistema de moderação automática que existia na hierarquia portuguesa de Net News e o projecto para o novo sistema de moderação, para que cada entidade que queira colaborar no processo possa escolher a melhor forma de o fazer. \\ **O anterior sistema de moderação** Muito pouco se conhece sobre o anterior sistema de moderação. Um dos poucos [[http://web.archive.org/web/20050307201147/http://www.usenet-pt.org/artigo-crc99.html|documentos]] sobre o assunto, elaborado pelo então responsável pelo sistema, foi apresentado na 2ª Conferência sobre Redes de Computadores (CRC’99) ainda na fase inicial de alargamento do sistema a toda a hierarquia. Outro documento é a respectiva [[http://web.archive.org/web/20050205145151/http://www.usenet-pt.org/faqs/moderacao.html|FAQ]], igualmente de 1999. {{wiki:Projecto:moderacao_anterior.png}} Figura 1 - Esquema de funcionamento do sistema de moderação existente entre 1997 e 2005 A figura 1 ilustra o funcionamento do sistema de moderação descrito nos documentos referidos. O servidor de News que inicialmente recebe o artigo do cliente (por NNTP), se bem configurado envia-o por e-mail para o endereço do sistema de moderação, que na figura é composto por quatro servidores distintos (A a D), cada um deles com um serviço SMTP, scrips de moderação e servidor NNTP. Como descrito no primeiro documento, o serviço de DNS distribui a carga pelos vários servidores através do sistema Round Robin, com registos MX de igual índice de preferência. O servidor que inicialmente recebe o e-mail envia cópia para outros dois, escolhidos aleatoriamente, com um cabeçalho adicionado para que os outros servidores saibam que não precisam, também eles, de enviar cópias. A filtragem que é feita depende das regras de moderação do grupo a que o artigo se destina. Se destinado a mais do que um grupo, é escolhido um de forma aleatória. Os filtros que, no processamento de um artigo, requerem informação sobre outros artigos (e.g. filtro de EMP), necessitam partilhar informação com os demais servidores de moderação. A forma e o protocolo utilizado para a sincronização não é especificada nos documentos referidos, mas supõe-se que aproveitando os feeds dos servidores NNTP. Os artigos aprovados são lançados localmente nos servidores NNTP que integram o sistema e propagados para a usenet através de acordos de peering estabelecidos com outros servidores. Os artigos rejeitados ficam disponíveis na web e o autor é notificado por e-mail caso algum endereço válido seja encontrado nos cabeçalhos Reply-To, From, Sender ou Errors-To. Não fica claro, da leitura dos documentos, de que forma os artigos rejeitados eram disponibilizados na web. \\ **Projecto para o novo sistema de moderação** No essencial, o projecto para o novo sistema de moderação é idêntico ao que existia, composto por um conjunto de servidores. No entanto, os componentes SMTP podem ser internos ou substituidos por clientes SMTP e IMAP ou POP3 que estabeleçam ligação a servidores de e-mail externos já existentes. De igual forma, em vez dos servidores NNTP estarem associados aos próprios servidores de moderação, pretendemos estabelecer um conjunto de servidores NNTP separados mas com duas finalidades: a de receber os artigos aprovados pela moderação; e a de incubadora para novos grupos. Até ao presente, as regras da hierarquia definem que a aprovação de novos grupos depende de votação por dois terços dos votos a favor, os quais têm que ser em número igual ou superior a quarenta. Isto levou a que muitas propostas de criação de novos grupos fossem rejeitadas, não por serem votadas desfavoravelmente, mas por não haver votos a favor em número suficiente, mesmo que todos os votos expressos fossem a favor. Esta dificuldade em criar grupos novos foi uma das razões que conduziu ao declínio da hierarquia, o que por sua vez tornou ainda mais difícil conseguir votos em número suficiente para aprovar novos grupos. Para facilitar esse processo, pretendemos que a aprovação passe a depender de maioria simples dos votos expressos, mas que os novos grupos fiquem em incubadora (i.e. restritos a um conjunto de servidores) para avaliação da viabilidade dos mesmos. Aqueles que se verifique terem adesão efectiva, em número de utilizadores e/ou em qualidade dos artigos, passam a fazer parte da lista de grupos “oficiais” da hierarquia e a ser propagados para a usenet. Outra diferença entre o nosso projecto para o sistema de moderação e o anterior, é que pretendemos implementar um sistema de auto-moderação. Desta forma, os utilizadores que se queiram registar têm a possibilidade de ver os seus artigos serem aprovados de forma mais célere por não terem que passar por todos os filtros da moderação. Devido ao sistema de auto-moderação e à ausência de um servidor NNTP associado a cada servidor de moderação, torna-se necessária uma base de dados partilhada, que serve ainda o propósito de criar um sistema de recenseamento que limite as fraudes durante os processos de votação. Esta base de dados visa ainda facilitar a detecção de SPAM e EMP, através do registo de um checksum para cada artigo que, em conjunto com o registo do tamanho e outras informações sobre a origem do artigo, podem determinar se se trata de SPAM ou EMP sem ser necessário verificar o texto de cada um. {{wiki:Projecto:moderacao_projecto.png}} Figura 2 - Esquema de funcionamento do sistema de moderação projectado Porque é o sistema de moderação aquele que mais processamento exige das máquinas onde esteja instalado, a separação dos servidores de e-mail e de News possibilita que haja um número mais reduzido destes e um número mais alargado de servidores de moderação, por forma a que a carga seja distribuída. Quantos mais servidores de moderação, menos artigos cada um tem de processar. Também as bases de dados podem estar em servidores externos e em número mais reduzido, o que reduz a largura de banda usada na sincronização (por haver menos servidores) mas acrescenta tráfego entre os servidores de moderação e aqueles que mantenham as bases de dados. Em qualquer caso, o desenho deste sistema permite qualquer tipo de configuração, desde ter todos os componentes numa mesma máquina a tê-los todos externos e acedidos remotamente pelos scripts de moderação. A figura 2 ilustra uma possível situação híbrida, com uma máquina A constituída por servidores de e-mail (SMTP/IMAP) e de moderação, uma máquina B apenas com servidor de e-mail, uma máquina C a integrar e-mail, moderação e News (NNTP), quatro máquinas, D a G, dedicadas exclusivamente à moderação, e mais duas, H e I, apenas com servidor de News. Se, por um lado, é mais rápido ter os vários componentes numa mesma máquina, por outro lado aumenta-se a variedade de soluções disponíveis em função dos recursos que cada entidade possa disponibilizar para o sistema, sendo que no caso dos servidores de e-mail externos, por exemplo, nenhuma alteração é necessária ao sistema existente, bastando incluí-los nos registos MX do domínio da hierarquia e aceder-lhes como qualquer outro cliente IMAP ou POP3. Servidores NNTP externos, se já existentes, apenas implicam a criação de uma conta de acesso com permissão para adicionar artigos com cabeçalho Approved. {{wiki:Projecto:moderacao_fluxograma.png}} Figura 3 -Fluxograma simplificado do processamento de artigos pelo sistema de moderação projectado A figura 3 ilustra um fluxograma simplificado do funcionamento dos scripts para um sistema de auto-moderação, segundo o projecto em que estamos a trabalhar. Duas diferenças principais relativamente ao sistema de moderação anterior são a auto-moderação (i.e. o utilizador auto-modera os seus artigos para que não tenham que passar pelos filtros) e o facto de os artigos serem processados segundo as regras definidas para todos os grupos a que se destina, em vez de apenas um deles escolhido aleatoriamente, como acontecia com o sistema anterior. Cada utilizador registado tem as suas regras próprias e regras específicas em cada grupo que utiliza. Os utilizadores não registados fazem uso de regras gerais. Da união dos conjuntos de regras aplicáveis resulta uma lista de quais os filtros que têm que ser utilizados na moderação de cada um dos artigos, em função do autor e dos grupos a que se destinam. O sistema em projecto também acrescenta o envio de artigos aprovados para os moderadores de grupos externos à hierarquia para os quais um artigo esteja cross-posted. Se o sistema aprovasse um artigo com cross-post para grupos moderados fora da hierarquia, o mesmo iria aparecer nesses grupos também. Como as regras de moderação nesses grupos externos podem ser substancialmente diferentes, o sistema tem que se assegurar que artigos aprovados para os grupos da hierarquia são enviados para o moderador do primeiro grupo externo encontrado no cabeçalho Newsgroups. Isto implica manter uma cópia actualizada da lista de moderadores compilada pelo ISC (Internet System Consortium). No referente aos servidores web, além de ser necessário fazer publicar os artigos rejeitados pela moderação com as respectivas justificações, são também necessários interfaces via HTTPS para que os utilizadores possam gerir os seus registos no sistema, para os moderadores humanos e para administração da hierarquia. Relativamente aos scripts a utilizar por todo o sistema, inicialmente poderão ser desenvolvidos por nós, mas o ideal seria que fossem mantidos por alguma entidade idónea, em colaboração com os próprios utilizadores da hierarquia, por forma a evitar que a indisponibilidade de indivíduos bloqueie a evolução do sistema ou a resolução de problemas. Em conclusão, este sistema de moderação em que estamos a trabalhar acrescenta algumas funcionalidades importantes relativamente ao anterior mas, inerentemente, também acrescenta necessidades de recursos superiores ao anteriormente necessário. Das novas funcionalidades destacamos a auto-moderação, a integração da moderação humana sempre como complemento da moderação automática, a incubadora de novos grupos, o recenseamento automático para limitar fraudes durante as votações, estatísticas por grupo, por utilizador e gerais da hierarquia. Esperamos que este documento seja útil para que cada entidade que queira colaborar com disponibilização de recursos, quer técnicos, quer humanos, possa decidir a melhor forma de o fazer.