Zimbra Letsencrypt Multidomínios Howto

Faz tempo que mantenho um ambiente de hospedagem de e-mails para pequenos clientes. Eles são muito especiais porque se preocupam de verdade com a privacidade, sem abrir mão de ter todos os recursos e comodidades dos grades provedores.

Na KyaHosting.com garantimos isso.

Mas em tempos de muito cuidado e proteção, ter conexões encriptadas reconhecidas pelos navegadores é muito importante. A iniciativa da EFF, Let’sEncrypt permite ter certificados atenticados e reconhecidos por quase todos os navegadores, gratuitamente.

Este tutorial se aplica às instalações que tem Proxy instalado e somente a elas. Isso porque o modo que vamos usar altera, exatamente, o Nginx que é usado pelo Zimbra como Proxy Reverso.

Meus requisitos são:

  1. Não ter que reiniciar o Zimbra a cada atualização
  2. Ser multidomínio, pois hospedo muitos domínios

Pré requisitos

  1. Seu Zimbra tem que ter instalado o Proxy
  2. O certbot tem que estar instalado

Metodologia

Nós vamos usar o método chamado “challenge ACME”. Nesse método o “certbot” escreve uma sequência única em um diretório específico que está acessível pela web. Para isso temos que criar o diretório e configurar o Nginx para responder corretamente a URL esperada pelos servidores da Let’sEncrypt.

Então mãos à obra!

Criando o diretório

Abaixo so comandos que usei. É claro que você poderá usar outro diretório, mas cuidado para acertar isso em todas as etapas.


mkdir /opt/zimbra/data/nginx/letsencrypt
chown zimbra: /opt/zimbra/data/nginx/letsencrypt

Alterando o template do Nginx

O que esta alteração vai fazer é criar entradas válidas no Nginx para todos os domínios configurados em seu Zimbra.

1 – Edite o arquivo /opt/zimbra/conf/nginx/templates/nginx.conf.web.http.template

2 – Adicione a linha a baixo antes da última } , assim:

     location ^~ /.well-known/acme-challenge { root /opt/zimbra/data/nginx/letsencrypt; }

}

Reiniciando o proxy para fazer as configurações:

su zimbra -c"/opt/zimbra/bin/zmproxyctl restart"

Testando

O Let’s Encrypt tem limitações de acesso, então o que fazemos é indicar um e-mail diferente por domínio para ser registrado.

Para saber se as configurações estão corretas, é hora de fazer um teste “–dry-run” com o certbot, assim:

certbot certonly -d webmail.dominio1.com --email letsencrypt@dominio1.com --agree-tos --webroot --webroot-path /opt/zimbra/data/nginx/letsencrypt/ --dry-run

Você pode esperar uma saída como esta:

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator webroot, Installer None
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for webmail.dominio1.com
Using the webroot path /opt/zimbra/data/nginx/letsencrypt for all unmatched domains.
Waiting for verification...
Cleaning up challenges

IMPORTANT NOTES:
- The dry run was successful.
- Your account credentials have been saved in your Certbot
configuration directory at /etc/letsencrypt. You should make a
secure backup of this folder now. This configuration directory will
also contain certificates and private keys obtained by Certbot so
making regular backups of this folder is ideal.

Sucesso!!!!

Gerando o certificado real

Basta executar o mesmo comando acima sem o “–dry-run”

certbot certonly -d webmail.dominio1.com --email letsencrypt@dominio1.com --agree-tos --webroot --webroot-path /opt/zimbra/data/nginx/letsencrypt/

O certificado estará salvo em /etc/letsencrypt/live/webmail.seudominio1.com

Assinando o certificado para poder usá-lo

O certificado gerado pelo Let’s Encrypt precisa ser assinado pela autoridade certificadora (CA) da sua instalação do Zimbra, ou vai dar erro. Em seguida o certificado e a chave precisam ser unidas.

Na sequência abaixo vamos juntar as partes e testar

a) Visando facilitar as linhas de comando, vamos começar entrando no diretório onde o Let’s Encrypt salvou seu certificado. Em nosso caso:

cd /etc/letsencrypt/live/webmail.seudominio1.com

b) Crie um arquivo chamado “chain.pem” com o conteúdo abaixo:

-----BEGIN CERTIFICATE-----
MIIDSjCCAjKgAwIBAgIQRK+wgNajJ7qJMDmGLvhAazANBgkqhkiG9w0BAQUFADA/
MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT
DkRTVCBSb290IENBIFgzMB4XDTAwMDkzMDIxMTIxOVoXDTIxMDkzMDE0MDExNVow
PzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMRcwFQYDVQQD
Ew5EU1QgUm9vdCBDQSBYMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB
AN+v6ZdQCINXtMxiZfaQguzH0yxrMMpb7NnDfcdAwRgUi+DoM3ZJKuM/IUmTrE4O
rz5Iy2Xu/NMhD2XSKtkyj4zl93ewEnu1lcCJo6m67XMuegwGMoOifooUMM0RoOEq
OLl5CjH9UL2AZd+3UWODyOKIYepLYYHsUmu5ouJLGiifSKOeDNoJjj4XLh7dIN9b
xiqKqy69cK3FCxolkHRyxXtqqzTWMIn/5WgTe1QLyNau7Fqckh49ZLOMxt+/yUFw
7BZy1SbsOFU5Q9D8/RhcQPGX69Wam40dutolucbY38EVAjqr2m7xPi71XAicPNaD
aeQQmxkqtilX4+U9m5/wAl0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNV
HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFMSnsaR7LHH62+FLkHX/xBVghYkQMA0GCSqG
SIb3DQEBBQUAA4IBAQCjGiybFwBcqR7uKGY3Or+Dxz9LwwmglSBd49lZRNI+DT69
ikugdB/OEIKcdBodfpga3csTS7MgROSR6cz8faXbauX+5v3gTt23ADq1cEmv8uXr
AvHRAosZy5Q6XkjEGB5YGV8eAlrwDPGxrancWYaLbumR9YbK+rlmM6pZW87ipxZz
R8srzJmwN0jP41ZL9c8PDHIyh8bwRLtTcm1D9SZImlJnt1ir/md2cXjbDaJWFBM5
JDGFoqgCWjBH4d1QB7wCCZAA62RjYJsWvIjJEubSfZGL+T0yjWW06XyxV3bqxbYo
Ob8VZRzI9neWagqNdwvYkQsEjgfbKbYK7p2CNTUQ
-----END CERTIFICATE-----

c) Teste para saber se o certificado está correto, executando o comando abaixo:

/opt/zimbra/bin/zmcertmgr verifycrt comm privkey.pem cert.pem chain.pem

d) Junte os arquivos para assinar o certificado, assim:

>cert.bundle ; cat cert.pem chain.pem >> cert.bundle

e) Remova o certificado anterior se ele existir, assim:

rm -f /opt/zimbra/conf/domaincerts/dominio1.crt

f) Salve o novo certificado, assim:

/opt/zimbra/libexec/zmdomaincertmgr savecrt dominio1.com cert.bundle privkey.pem

g) Instale o certificado, assim:

/opt/zimbra/libexec/zmdomaincertmgr deploycrts

Reiniciando o Zimbra

A parte mais legal deste novo método é que não é preciso parar e reiniciar o Zimbra. Basta fazer um “reload”, que é instantâneo!

su zimbra -c"/opt/zimbra/bin/zmproxyctl reload"

Script!

Script para automatizar isso. Ele recebe o domínio como argumento e eu chamei ele de zm_ssl.sh

#! /bin/bash

if [ "$1" = "" ] ; then
echo "Faltou o domínio!"
exit
fi

oldIFS=$IFS
domain=$1

echo ""
echo "--------------------------------------------------------------------"
echo $domain
echo " "
echo "`date` - Começando o domínio $domain" >> /tmp/ssl_letsencrypt.log

# Gera o certificado
certbot certonly -d $domain --email letsencrypt@$domain --agree-tos --webroot --webroot-path /opt/zimbra/data/nginx/letsencrypt/

# Registrar se deu erro e abortar esse procedimento
if [ "$?" != "0" ] ; then
echo "Deu erro ao gerar o certificado para o domínio $domain"
echo "`date` - ERROR Letsencrypt - $domain" >> /tmp/ssl_letsencrypt.log
exit 1
fi

# Entrar no dir certo, que é o primeiro dominio
cd /etc/letsencrypt/live/$domain

echo "-----BEGIN CERTIFICATE----- 
MIIDSjCCAjKgAwIBAgIQRK+wgNajJ7qJMDmGLvhAazANBgkqhkiG9w0BAQUFADA/ 
MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT 
DkRTVCBSb290IENBIFgzMB4XDTAwMDkzMDIxMTIxOVoXDTIxMDkzMDE0MDExNVow 
PzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMRcwFQYDVQQD 
Ew5EU1QgUm9vdCBDQSBYMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB 
AN+v6ZdQCINXtMxiZfaQguzH0yxrMMpb7NnDfcdAwRgUi+DoM3ZJKuM/IUmTrE4O 
rz5Iy2Xu/NMhD2XSKtkyj4zl93ewEnu1lcCJo6m67XMuegwGMoOifooUMM0RoOEq 
OLl5CjH9UL2AZd+3UWODyOKIYepLYYHsUmu5ouJLGiifSKOeDNoJjj4XLh7dIN9b 
xiqKqy69cK3FCxolkHRyxXtqqzTWMIn/5WgTe1QLyNau7Fqckh49ZLOMxt+/yUFw 
7BZy1SbsOFU5Q9D8/RhcQPGX69Wam40dutolucbY38EVAjqr2m7xPi71XAicPNaD 
aeQQmxkqtilX4+U9m5/wAl0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNV 
HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFMSnsaR7LHH62+FLkHX/xBVghYkQMA0GCSqG 
SIb3DQEBBQUAA4IBAQCjGiybFwBcqR7uKGY3Or+Dxz9LwwmglSBd49lZRNI+DT69 
ikugdB/OEIKcdBodfpga3csTS7MgROSR6cz8faXbauX+5v3gTt23ADq1cEmv8uXr 
AvHRAosZy5Q6XkjEGB5YGV8eAlrwDPGxrancWYaLbumR9YbK+rlmM6pZW87ipxZz 
R8srzJmwN0jP41ZL9c8PDHIyh8bwRLtTcm1D9SZImlJnt1ir/md2cXjbDaJWFBM5 
JDGFoqgCWjBH4d1QB7wCCZAA62RjYJsWvIjJEubSfZGL+T0yjWW06XyxV3bqxbYo 
Ob8VZRzI9neWagqNdwvYkQsEjgfbKbYK7p2CNTUQ 
-----END CERTIFICATE-----" >> chain.pem 

echo "Processando domínio $domain" 

# testando o certificado 
/opt/zimbra/bin/zmcertmgr verifycrt comm privkey.pem cert.pem chain.pem 
if [ "$?" != "0" ] ; then 
       echo "Erro ao testar certificado!" 
       echo "`date` - Erro para salvar o certificado!" >> /tmp/zm_ssl-error.log 
       echo "`date` - /opt/zimbra/bin/zmcertmgr verifycrt comm privkey.pem cert.pem chain.pem" >> /tmp/zm_ssl-error.log 
       exit 1 
fi 

# Adicionando o certificado 
>cert.bundle 
cat cert.pem chain.pem >> cert.bundle
rm -f /opt/zimbra/conf/domaincerts/${domain}.crt /opt/zimbra/conf/domaincerts/${domain}.key 
/opt/zimbra/libexec/zmdomaincertmgr savecrt $domain cert.bundle privkey.pem 
if [ "$?" != "0" ] ; then 
       echo "Erro para salvar o certificado!" 
       echo "`date` - Erro para salvar o certificado!" >> /tmp/zm_ssl-error.log 
       echo "`date` - /opt/zimbra/libexec/zmdomaincertmgr savecrt $domain cert.bundle privkey.pem" >> /tmp/zm_ssl-error.log 
       exit 1 
fi 

# Instalando o certificado 
/opt/zimbra/libexec/zmdomaincertmgr deploycrts 
if [ "$?" != "0" ] ; then 
       echo "Erro ao adicionar o certificado!" 
       echo "`date` - Erro ao adicionar o certificado!" >> /tmp/zm_ssl-error.log 
       echo "`date` - /opt/zimbra/libexec/zmdomaincertmgr savecrt $domain cert.bundle privkey.pem" >> /tmp/zm_ssl-error.log 
       exit 1 
fi 

echo "`date` - Certificado instalado para $domain" 
echo "`date` - Certificado instalado para $domain" >> /tmp/zm_ssl-error.log 

#echo "Reiniciando o Nginx do Zimbra..." 
su zimbra -c"/opt/zimbra/bin/zmproxyctl reload"

Atualizando os certificados

Agora que seu Zimbra não precisa ser parado para criar ou renovar certificados, pode-se rodar o comando “renew” som maiores problemas.

É claro que quando o certificado for renovado, será necessário repetir os procedimentos acima.

Para renovar os certificados execute:

certbot renew

E depois refaça a parte do script que assina, verifica, salva e instala o novo certificado.

Script para isso? em breve…. aqui mesmo…

 

Do OSIsmo ao OSIsta

OSIsmo é a prática da filosofia Open Source. Ela é institucionalizada pela OSI e tem o objetivo de exterminar o Software Livre para substituí-lo pelo Open Source.

O OSIsta é um ser triste e magoado. Invariavelmente é um ex-ativista do Software Livre que não acredita mais na causa. Ele vive um o conflito filosófico constante de querer ser um ativista do Software Livre sem acreditar mais naquilo que isso representa. Assim ele se esforça muito para moldar ou distorcer a filosofia da liberdade do software para se encaixar em suas novas convicções.

Seu passado de ativismo no Movimento Software Livre lhe dá conhecimento de causa, ou seja, ele conhece com precisão a filosofia e todos seus aspectos técnicos, legais e ideológicos.

Lentamente ele cede ao argumento de que é mais importante massificar o uso de Software Livre do que se manter alinhado à filosofia. Assim ele aceita a inserção de software não livre no kernel e nas distribuições GNU. O mesmo argumento é usado para justificar a mudança no nome do sistema operacional: Linux é mais fácil e bonito do que GNU, portanto mais gente vai aderir.

É claro que é um processo de desapego moral. Até pouco tempo ele era um intransigente defensor das liberdades do usuário e qualquer ameaça seria combatida frontalmente com vigor. Ao aceitar o argumento do OSIsmo há uma ruptura interna que se justifica pelo bem maior, ou seja, cede-se um pouco na rigidez da filosofia para poder colocar em prática uma ação que trará muitos benefícios futuros à causa. É o tal “mal necessário”.

Gradativamente o apego às diretrizes filosóficas do Movimento Software Livre vai enfraquecendo. Quando as grandes empresas começam a usar massivamente software Open Source, então ele passa a ter certeza de que o argumento original estava correto. Trata-se da materialização do custo moral de ter aceito um pouco de software não livre em benefício do movimento e da disseminação do Software Livre.

O erro de avaliação é que o objetivo primário do Software Livre nunca foi tornar-se massivo, atender as empresas, gerar negócios ou ser um modelo de produtividade. Seu objetivo é conscientizar as pessoas sobre a importância da sua liberdade tecnológica. Qualquer outra conquista será consequência direta dessa consciência adquirida.

O OSIsta sabe perfeitamente de tudo isso, mas ele cedeu. Agora está convencido de que esse um caminho sem volta. O mercado atendido pelo OSIsmo é a nova ordem: é evidente que se as gigantes da tecnologia adotam e usam Open Source então isso tem que estar certo. O Open Source é a evolução natural do Software Livre. Mais usuários, mais negócios, mais investimentos… isso só pode estar certo!

Como ativista ele não deixa de agir, só que agora sob uma nova ótica: como organizador do FLISOL e/ou SFD ele não tem mais nenhum pudor em instalar distribuições não livres; ele redige artigos mostrando as vantagens do uso de Linux pelas empresas ao ponto de comemorar a campanha “Microsoft ama o Linux”; ele defende a liberdade do Linus em embutir software não livre no kernel; ele convoca todos a usarem as redes sociais não livres para poder atingir a maior quantidade possível de gente; ele usa o Android como exemplo de sucesso da massificação do uso de software livre; ele passa a ter mais apreço pelo lado técnico do software; ele passa a valorizar mais o desenvolvimento do software do que todas as demais colaborações, assim vale mais codificar do que traduzir, documentar, distribuir, organizar eventos e divulgar. Trata-se de um autêntico ativismo Open Source.

Cada vez mais convencido de que tem razão, as palestras e textos do Stallman começam a fazer menos sentido. RMS soa deselegante, rude e radical. “Será que o Stallman não percebe que esse discurso está superado? Será que ele não consegue ver o sucesso que estamos alcançando? Só tivemos que ceder um pouco para conquistar tanto!” pensa ele.

E quanto menos Stallman reconhece esses avanços, e quanto mais lhe é mostrado que esses avanços não são benéficos para o Movimento Software Livre, mais frustrado o OSIsta fica. “Como assim meu esforço para ceder só um pouco, em benefício do bem maior, não é reconhecido e entendido como sendo positivo para o Software Livre? Eu fui tão cuidadoso, que apesar das diferenças filosóficas, continuei chamando tudo de Software Livre, exatamente para beneficiar o movimento.”

As criticas ao seu novo posicionamento surgem naturalmente daqueles ativistas que se mantém alinhados com a filosofia do Software Livre. Sua frustração não lhe permite reconhecer que está errado e sua resposta é agressiva e virulenta. Sempre na defensiva, o ataque “ad hominem” é sua estratégia mais comum. “radicais, velhos, comunistas, destruidores de comunidade!, impositores, ditadores” costumam ser seus argumentos mais comuns para tentar desqualificar seus opositores. A tentativa é continuar justificando o uso de software não livre como sendo algo bom para o Movimento Software Livre.

Ao travestir seu posicionamento na filosofia do OSIsmo sob o nome da filosofia Software Livre e reagindo de forma violenta a quem lhe faz antagonismo, o OSista de revela em todo seu esplendor: é um fascista.

O mais incrível de tudo é perceber que a maioria dos OSIstas não se identificam como tal. Eles realmente acreditam que ainda são defensores do Software Livre. Continuam enganando as pessoas e fazem questão de não ceder jamais.

É claro que há aqueles que defendem legitimamente o OSIsmo. Esses são apenas ativistas da morte do Software Livre, são facilmente identificáveis e serão confrontados diretamente pelo Movimento Software Livre. Esses não são OSistas, são inocentes úteis a serviço do Deus mercado.

O OSIsta é um ex-militante do Software Livre, convertido à filosofia Open Source, que insiste em dizer que é tudo a mesma coisa para enganar as pessoas e reage de forma extremamente agressiva quando confrontado.

Hora de se olhar no espelho?

Saudações Livres!

O que é OSIsmo?

Osismo é a filosofia cujo objetivo é substituir o termo “Software Livre” pelo termo “Open Source”. Para levar a cabo essa missão foi criada em 1998 a OSI – Open Source Iniciative por Eric Raymond e Bruce Perens. Aderiram, imediatamente, Jon Maddog Hall e Linus Torvalds.

Eric Raymon deixa isso claríssimo em sua carta Goodbye, “free software”; hello, “open source”. Não deixe de ler.

Software Livre era libertário demais, radical demais, revolucionário demais. Tanto que espantava as empresas e seus negócios. Era necessário flexibilizar, amansar, adoçar, relaxar a filosofia.

Perceba que o enfoque é filosófico e jurídico, não técnico. Uma nova organização, com 10 novos princípios, norteiam uma nova filosofia de acesso ao código fonte. Ao mesmo tempo novas licenças de uso são elaboradas para lastrear juridicamente o novo pensamento: são as licenças permissivas, cuja principal característica é permitir que o código seja fechado, ou seja, sem mecanismos que perpetuem a liberdade do software.

Hoje, o pensamento do OSIsmo é quase unanimidade entre os técnicos que trabalham diretamente com tecnologias livres. “Open” é o novo livre e código aberto substitui, quase sempre, o termo Software Livre. O argumento mais comum para isso é que são a mesma coisa, que é tudo igual. Nada poderia ser mais equivocado.

É fundamental entender que o OSIsmo promoveu essa confusão de propósito: primeiro se associando ao ativismo Software Livre, depois criando novos nomes para as mesmas coisas, depois ampliando os conceitos e as licenças e finalmente recebendo o apoio necessário do mercado pelos seus esforços. É assim que o sistema operacional GNU, rebatizado por Stallman de GNU/Linux depois da contribuição de Linus, hoje se chama apenas Linux.

O Movimento Software Livre é um movimento social e político que defende a liberdade do usuário de software através do acesso e da garantia de acesso ao código fonte. Mas ao mesmo tempo, é o próprio software, o código e tem vinculado a ele uma licença de uso. O OSIsmo foi perfeito ao se aproximar tanto desses conceitos que ficou quase impossível distinguí-los.

Separar o joio do trigo não é tarefa simples, mas vamos tentar. O primeiro passo é separar o Software Livre em suas três camadas: técnica, legal e filosófica.

Nível técnico: esse é o software em si. O resultado da codificação, que geralmente é feita de forma colaborativa e compartilhada graças ao acesso ao código.

Nível legal: aqui ficam as licenças de uso. As chamadas Copyleft ou GNU que tem cláusulas de perpetuação (obrigatoriedade) da liberdade do software. As permissivas ou OSI que permitem que o código seja fechado.

Nível filosófico: enquanto o enfoque do Software Livre é fortalecer o usuário através das liberdades do software, tonando-o independente do fornecedor, o Open Source foca na qualidade do desenvolvimento colaborativo como meio de produção otimizada para atender as empresas e o mercado.

Os dois primeiros níveis atendem, perfeitamente, o Software Livre e o Open Source. No nível técnico não restam dúvidas, afinal de contas, código é código. No nível legal, com raríssimas exeções, a compatibilidade é plena.

Considerando apenas esses dois critério é correto afirmar que Software Livre e Open Source são a mesma coisa, que são iguais. E esse é o principal argumento utilizado pelo OSIsmo para gerar a confusão que leva a situação atual. É através da simplicidade técnica e legal que eles conseguiram convencer a maior parte das pessoas de que é tudo a mesma coisa.

E já que é tudo igual, então basta chamar de código aberto e Linux. É mais fácil.

A grande diferença está no terceiro nível. É nele onde reside o antagonismo que causa toda fricção entre os ativistas e essa discussão sem fim: as filosofias são absolutamente excludentes.

O Movimento Software Livre tem o objetivo de fortalecer o usuário e a OSI tem o objetivo de fortalecer as empresas. E como numa gangorra, quando um sobe o outro, inevitavelmente desce. Não há como fortalecer os dois lados dessa moeda, porque seus interesses são antagônicos. Enquanto as empresas querem controlar e escravizar digitalmente seus usuários, estes buscam independência e liberdade.

Acrescente a esse cenário a massiva popularidade dos sistemas na nuvem, onde o software não é distribuido para os clientes, sendo usado para prestar o serviço on-line, o famoso SaaS. Nesse cenário as empresas ficam ainda mais à vontade para usar softwares livres ou de código aberto, modificando-o para suas necessidades sem ter que redistribuir essas mudanças para seus usuários.

O fortalecimento do termo Open Source, a popularização das licenças permissivas, a remoção do GNU do nome do sistema operacional e a marginalização da filosofia do Software Livre, foram o resultado de uma ação lenta, metódica e coordenada. No há qualquer ingenuidade ou boa fé nesse processo, foi algo pensado por Eric Raymond e, levado a cabo, pelos simpatizantes dessa filosofia.

Se sua percepção de um mundo melhor passa pelo fortalecimento das empresas e do mercado, então o OSI foi feito para você. Se, por outro lado, sua percepção for pelo fortalecimento da liberdade do usuário, então mantenha-se alinhado com a filosofia do Software Livre.

Não há nada de errado em escolher um lado e se manter nele. Feio mesmo é saber que existem dois lados, estar convencido de que o Open Source é o caminho correto e enganar as pessoas dizendo que é tudo a mesma coisa.

Saudações Livres!

Android não é Linux

Android não é Linux
Linux é um kernel. O nome do sistema operacional é Android.
Sei que essa discussão é repetitiva e, provavelmente você já ouviu, leu ou até mesmo participou de alguma discussão sobre esse assunto. Mas pense um pouco: se é repetitivo é porque não há consenso. Então me dê uma chance de contar essa história.
O Google criou um sistema operacional livre chamado Android. No início eles não tinham um kernel livre, então usavam um proprietário enquanto se concentraram em todo o resto: sistema de arquivos, shell, editor de texto, compiladores, interface gráfica e muito mais.
Um dia alguém sugeriu o uso do kernel Linux, que permitia ser adaptado para a plataforma de hardware que o Google usava, estava licenciado por GPL e tinha um ótimo desempenho. Os testes foram um sucesso tão grande que eles logo decidiram rebatizar o sistema operacional de Android/Linux. Agradeceram demais ao Linus Torvalds e o mundo todo ficou sabendo.
A medida que o Android/Linux foi se tornando popular a fama de Linus também. Diversos ativistas e usuários entusiasmados começaram a chamar o SO apenas de Linux, porque era mais fácil e bonito. O Google fez campanhas educativas, tentou explicar que não seria correto eliminar o nome Android, afinal de contas eles tinham criado o sistema operacional. Não adiantou nada: os usuários mais fanáticos decidiram. acusaram o Google de interferir na liberdade de escolha do nome e Linus fez um depoimento emocionado onde disse: “As pessoas devem ter a liberdade de chamar o sistema operacional como bem quiserem. Eu chamo de Linux e acho que é absurdo e ridículo que queiram forçar as pessoas a chamá-lo de Android/Linux.”
A Linux Foundation decidiu incorporar softwares não livres ao kernel linux para torná-lo mais compatível com os dispositivos disponíveis. Assim o Linux seria ainda mais popular. Deu certo: o Linux agora é o sistema operacional mais usado no mundo, pois está presente em mas de 86% de todos os smartphones do mundo.
É claro que o Google tentou reagir várias vezes, mas falhou. Foi acusado de xiita, de radical e de anti capitalista. Entretanto o argumento mais emblemático é que o se fosse para chamar o sistema operacional de Android/Linux, então seria muito mais justo chamá-lo de Android/Chrome/Maps/Waze/Hangout/Linux.
O que tinha começado como um projeto de software livre chamado Android, conquistou o planeta conhecido como Linux e contém tanto software privativos que nem é mais software livre.
É claro que o kernel é uma parte vital de um sistema operacional, mas a interface gráfica, o sistema de arquivos, o navegador e o editor de textos também são. O sistema operacional é a soma de todos seus componentes e não apenas o de um ou dois mais importantes.
O mercado gosta de determinados nomes e os usa para identificar objetos, definir conceitos e até mesmo para estigmatizar pessoas. Hacker como sinônimo de criminoso cibernético e Gilette para lâmina de barbear, são alguns exemplos. Seja por pressão financeira, campanhas de marketing ou interesses sócio-políticos, sempre há uma razão por trás disso.
Os criadores originais do Android estão convencidos que remover o nome Android é uma estratégia para remover a importância da liberdade do software da cena. Dizendo apenas Linux e mostrando apenas o pinguim, não se passa o recado da liberdade do software para o mercado.
É claro que você não chama o Android de Linux. É claro que você deve achar essa história um absurdo.
Então saiba que quase tudo que descrevi acima é verdade. E você ajuda a perpetuar o absurdo sempre que se refere a qualquer sistema operacional como Linux.
O nome do sistema operacional livre ou não – Ubuntu, Trisquel, Fedora, Parabola, openSuse, Ututo, Debian – é GNU. Ele foi criado em 1983 por Richard Stallman, que incorporou o kernel Linux em 1992.
Se você acha que as liberdades do software são fundamentais e quer ajudar o Movimento Software Livre de verdade, nunca mais diga que o sistema operacional é linux ou que uma distribuição é linux. É tão absurdo quanto chamar o Android de linux.
Lembre-se: o nome do sistema operacional é GNU.
Saudações Livres!
Me encontre no grupo #ultraGNU do https://riot.im