<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
  <title>Vitor Almeida</title>
  <link>https://vitoralmeida.tech/</link>
  <description>Engenheiro de segurança da informação. Compartilho artigos sobre tecnologia, segurança de servidores, privacidade e desenvolvimento.</description>
  <language>pt-br</language>
  <atom:link href="https://vitoralmeida.tech/feed.xml" rel="self" type="application/rss+xml" />
  <lastBuildDate>Tue, 11 Aug 2026 02:14:00 +0000</lastBuildDate>
  <item>
    <title>Segurança de servidores remotos</title>
    <link>https://vitoralmeida.tech/blog/seguranca-de-servidores</link>
    <guid isPermaLink="true">https://vitoralmeida.tech/blog/seguranca-de-servidores</guid>
    <pubDate>Mon, 02 Dec 2024 00:00:00 +0000</pubDate>
    <description><![CDATA[<figure class="article-figure"><img src="/public/posts/seguranca-de-servidores/overengineering.png" alt="Canivete suiço com funções demais: overengineering" /><figcaption class="article-figure__caption">Canivete suiço com funções demais: overengineering</figcaption></figure>

<h2 id="motivação">Motivação<a class="heading-permalink" href="#motivação" aria-label="Link permanente para Motivação">#</a></h2>

<p>Quando eu estava colocando meu site pessoal no ar, decidi usar um VPS (Virtual Private Server), pois me proporcionaria flexibilidade e customização para atender minhas necessidades. Para servir um simples site estático, pode ser uma escolha ruim, pois existem formas mais baratas e diretas para isso, como o <a href="https://pages.github.com/">github pages</a>. Porém, também gostaria de poder ter um servidor remoto para fins de estudos e poder servir mais projetos pessoais ao mesmo tempo.</p>

<p>Após tomar a decisão de alugar o servidor, surge a necessidade de protegê-lo contra acessos indesejados. Pesquisando na web sobre as melhores práticas na segurança de servidores, as dicas mais comuns são:</p>

<ul>
<li>Alterar a porta padrão do SSH</li>
<li>Usar um firewall</li>
<li>Desabilitar o uso de senhas para acesso SSH</li>
<li>Desabilitar o login por SSH com usuário root</li>
<li>Habilitar atualizações automáticas</li>
</ul>

<p>Mas será que tudo isso é <strong>necessário</strong> e, se não fizermos, estaremos inseguros?</p>

<h2 id="depende">Depende&hellip;<a class="heading-permalink" href="#depende" aria-label="Link permanente para Depende…">#</a></h2>

<p>Como um profissional da área de segurança da informação, aprendi a sempre levar em consideração o contexto do <strong>ativo</strong> (aquilo que tem valor para uma organização e que deve ser protegido) para determinar a melhor forma de deixá-lo seguro. Segurança absoluta não existe, então devemos sempre tentar fazer o melhor possível, de acordo com as necessidades, com os meios disponíveis, mantendo um bom nível de conveniência.</p>

<p>Fazer uma <strong>modelagem de ameaças</strong> ajuda a tomar uma decisão, então devemos nos perguntar pelo menos:</p>

<ul>
<li>Contra quem estamos nos protegendo (agente)?</li>
<li>Com quais ações devemos nos preocupar?</li>
<li>Quais os objetivos de quem nos ameaça e qual sua motivação?</li>
<li>Quais os meios que esse agente possui para nos prejudicar?</li>
<li>Quão qualificado é esse agente?</li>
<li>Quão valioso é o ativo?</li>
<li>Quais são os pontos fracos do sistema?</li>
</ul>

<p>Com base nas respostas podemos concluir quais são as ameaças, como mitigá-las, e se as medidas de segurança aplicadas são adequadas ao contexto.</p>

<p>Por exemplo, se identificamos que o agente é alguém muito qualificado e possui todos os meios disponíveis atualmente para realizar ataques (alô, NSA), as medidas que devemos tomar para nos proteger precisam ser mais robustas que as adotadas contra agentes menos qualificados e menos poderosos (<em>script kiddies</em>). Se o ativo em questão não for tão importante, a equação também muda, pois é menos provável que alguém muito qualificado esteja atrás de um recurso menos valioso.</p>

<p>Além disso, a depender da qualificação do adversário, algumas medidas tomadas podem ser inefetivas, sendo apenas uma questão de tempo até serem superadas. Então, se para adotar tal medida foi necessário montar um esquema complexo de ser implementado e mantido, que pode não funcionar se uma pecinha do quebra-cabeça não funcionar direito, talvez não valha tanto o esforço, já que sabemos que em algum momento ela vai ser suplantada.</p>

<p>Em resumo, como quase tudo em TI, podemos ligar o modo sênior e dizer &ldquo;depende&hellip;&rdquo;.</p>

<figure class="article-figure"><img src="/public/posts/seguranca-de-servidores/clapping.gif" alt="palmas exageradas" loading="lazy"/><figcaption class="article-figure__caption">palmas exageradas</figcaption></figure>

<h2 id="sempre-questione-ainda-que-seja-amplamente-aceito-como-verdade">Sempre questione, ainda que seja amplamente aceito como verdade<a class="heading-permalink" href="#sempre-questione-ainda-que-seja-amplamente-aceito-como-verdade" aria-label="Link permanente para Sempre questione, ainda que seja amplamente aceito como verdade">#</a></h2>

<p>É óbvio que não devemos colocar um chapéu de alumínio na cabeça e começar a conspirar contra toda e qualquer boa prática divulgada sobre qualquer assunto, porém faz bem não assumir toda &ldquo;boa prática&rdquo; divulgada nos conteúdos da internet como uma verdade inquestionável.</p>

<p>Dito isso, vamos refletir sobre as recomendações citadas no início do texto.</p>

<h3 id="alterar-a-porta-padrão-do-ssh">Alterar a porta padrão do SSH<a class="heading-permalink" href="#alterar-a-porta-padrão-do-ssh" aria-label="Link permanente para Alterar a porta padrão do SSH">#</a></h3>

<p>A porta 22 é amplamente conhecida como a que é utilizada pelo SSH. Pensando nisso, com o objetivo de atrapalhar a coleta de informações de um possível atacante, recomenda-se que troquemos a porta em que nosso serviço escuta. <strong>Supostamente</strong>, um atacante executando um <code>nmap</code> (utilitário que, dentre outras coisas, escaneia quais portas estão abertas num sistema) buscando pelas portas mais comuns, não veria que temos um SSH rodando no nosso servidor.</p>

<p>No entanto, as portas alternativas utilizadas pela grande maioria das pessoas seguem um certo <strong>padrão</strong>.</p>

<pre><code>$ shodan stats --facets port ssh
Top 10 Results for Facet: port
22             19,811,983
2222              799,310
1080              166,397
10001             154,277
60022             149,733
50022             110,499
50000              83,115
58222              65,517
3389               60,378
1337               55,824
</code></pre>

<p>O <a href="https://www.shodan.io/">Shodan</a> é uma ferramenta que mapeia os servidores expostos publicamente na Internet e consolida algumas informações sobre eles, como portas abertas, serviços executando em cada porta, qual tipo de dispositivo que está em execução etc. Ao se registrar no site, você tem acesso a uma API Key e, através dela, podemos ter acesso a algumas informações. Podemos ver na saída do comando acima, que, como esperado, a maioria dos serviços SSH está executando na porta 22. Já a segunda porta mais usada é a 2222, seguida de outras que são mais ou menos fáceis de lembrar.</p>

<p>Podemos ver que, para dificultar de fato que um atacante adivinhe em qual porta seu serviço SSH está executando, deveríamos escolher uma porta de forma <strong>aleatória</strong>. Ainda assim, não existem tantas portas disponíveis (65535) e basta executar o <code>nmap</code> habilitando o scan em todas as portas para que o serviço seja descoberto (ex: <code>nmap -sS -Pn -T5 -p- &lt;ip&gt;</code>).</p>

<p>A base dessa abordagem é a chamada <a href="https://pt.wikipedia.org/wiki/Seguran%C3%A7a_por_obscurantismo"><strong>Segurança por Obscuridade</strong></a>, apostando em esconder informações e confiando que é o suficiente para manter algo seguro.</p>

<blockquote>
<p><cite>Pessoas desonestas são muito profissionais e já sabem muito mais do que poderíamos ensiná-las</cite></p>

<p>&ndash; <cite>Alfred Charles Hobbs</cite></p>
</blockquote>

<p>Além de não ser uma medida efetiva, alterar a porta pela qual você acessa seu servidor SSH pode te confundir caso você trabalhe sozinho e tenha uma memória ruim ou caso trabalhe numa equipe maior. Onde você vai documentar qual porta está sendo usada? As pessoas que trabalham com você sabem dessa alteração e dessa documentação? Claro que nesse simples caso de uma porta SSH não é tão complicado de resolver, mas quando tratamos de serviços e ativos mais críticos, com mais pessoas envolvidas, a segurança por obscuridade acaba gerando complexidades, dificuldades de entendimento pelos membros de um time e, além de tudo, não funciona.</p>

<figure class="article-figure"><img src="/public/posts/seguranca-de-servidores/security-obscurity.jpg" alt="Meme sobre segurança por obscuridade. Uma torrada no centro de um labirinto e um pombo. A torrada é o ativo, o labirinto é a medida obscura e o pombo o hacker" loading="lazy"/><figcaption class="article-figure__caption">Meme sobre segurança por obscuridade. Uma torrada no centro de um labirinto e um pombo. A torrada é o ativo, o labirinto é a medida obscura e o pombo o hacker</figcaption></figure>

<h3 id="habilitar-atualizações-automáticas">Habilitar atualizações automáticas<a class="heading-permalink" href="#habilitar-atualizações-automáticas" aria-label="Link permanente para Habilitar atualizações automáticas">#</a></h3>

<p>Um sistema desatualizado pode significar um sistema vulnerável. A partir do momento em que um software é publicado, ele está sujeito à crítica impiedosa dos <em>hackers</em> 👻. Principalmente, softwares que são amplamente usados, como Web Servers (ex.: Apache e Nginx) e sistemas de gerenciamento de conteúdo (ex.: Wordpress). Diariamente, testes de intrusão e análises de vulnerabilidades são executados em softwares como estes, de forma que utilizar uma versão antiga pode introduzir vulnerabilidades no seu sistema, pois a correção pode ter sido feita apenas nas versões mais novas.</p>

<p>Uma das formas de garantir que o sistema esteja sempre com as versões mais atualizadas dos softwares é configurar para que ele seja atualizado automaticamente. Porém, existem atualizações que podem corromper o sistema por quebra de compatibilidade com a versão atual do sistema operacional, por conflitarem com outros softwares ou por dependerem de outros pacotes em versões diferentes da que você possui atualmente. Isso pode acarretar em indisponibilidade do seu sistema.</p>

<p>Para aplicações que não são críticas, com poucos usuários simultâneos, que não lidam com transações financeiras, pode não ser um problema. Caso contrário, a indisponibilidade pode significar danos financeiros e dano à imagem de uma organização. Portanto, em contextos desse tipo, atualizações do sistema devem ser planejadas, possuir estratégias para se recuperar de desastres e voltar ao estado anterior.</p>

<p>Já em contextos menos críticos, uma indisponibilidade pode significar apenas uma pequena dor de cabeça, mas também é desagradável. A depender do número de serviços que você expõe publicamente no seu servidor e da frequência com que você o acessa, pode ser mais simples executar as atualizações manualmente, escolhendo cada pacote. <strong>Não necessariamente</strong>, você precisa da versão mais atual de um software.</p>

<h3 id="desabilitar-o-uso-de-senhas-para-acesso-ssh">Desabilitar o uso de senhas para acesso SSH<a class="heading-permalink" href="#desabilitar-o-uso-de-senhas-para-acesso-ssh" aria-label="Link permanente para Desabilitar o uso de senhas para acesso SSH">#</a></h3>

<p>O arquivo de configuração do servidor SSH (<code>/etc/ssh/sshd_config</code>) traz o seguinte:</p>

<blockquote>
<p><cite>&hellip;</cite></p>

<p><cite># To disable tunneled clear text passwords, change to no here! </cite>
<cite>PasswordAuthentication yes</cite></p>

<p><cite>&hellip;</cite></p>
</blockquote>

<p>Ou seja, <strong>aparentemente</strong>, a senha que você envia durante a conexão com SSH é transmitida em texto claro dentro do &ldquo;túnel&rdquo; até chegar no servidor remoto. Então isso quer dizer que a sua senha está exposta para qualquer um que intercepte a conexão possa ver? Não! Pois, a conexão com o servidor SSH acontece utilizando um par de chaves criptográficas para mascarar os dados que trafegam no estabelecimento da conexão com o servidor remoto. É a mesma coisa que acontece quando nos autenticamos na maioria dos sites que utilizam HTTPS. A nossa senha é encapsulada numa conexão SSL que trafega criptografada até chegar no servidor.</p>

<p>Não é perfeitamente seguro utilizar senhas ao se conectar por SSH, como a própria <a href="https://datatracker.ietf.org/doc/html/rfc4251#section-9.4.5">documentação</a> afirma:</p>

<blockquote>
<p><cite>The password mechanism, as specified in the authentication protocol, assumes that the server has not been compromised.  If the server has been compromised, using password authentication will reveal a valid username/password combination to the attacker, which may lead to further compromises. </cite></p>

<p><cite>This vulnerability can be mitigated by using an alternative form of authentication.  For example, public key authentication makes no assumptions about security on the server. </cite></p>
</blockquote>

<p>O mecanismo de autenticação por senha assume que o servidor do SSH não foi comprometido, mas, nesse caso, já temos um problema e não seria evitar o uso de senhas que teria resolvido (considerando que você não tenha escolhido &lsquo;123456&rsquo; como senha, né&hellip;). A documentação afirma que podemos mitigar isso usando autenticação com chaves, mas&hellip;</p>

<blockquote>
<p><cite>The use of public key authentication assumes that the client host has not been compromised.  It also assumes that the private key of the server host has not been compromised. </cite></p>

<p><cite>This risk can be mitigated by the use of passphrases on private keys; however, this is not an enforceable policy.  The use of smartcards, or other technology to make passphrases an enforceable policy is suggested.</cite></p>
</blockquote>

<p>A mesma documentação do protocolo, agora na seção sobre a <a href="https://datatracker.ietf.org/doc/html/rfc4251#section-9.4.4">autenticação com chaves</a>, traz que o método também não é perfeito, pois assume que o dispositivo cliente também não foi comprometido. Ou seja, não é o uso de senhas nessa conexão que é especialmente inseguro, mas depende de um <strong>conjunto de fatores</strong>.</p>

<p>Usar senhas ainda é algo complicado, pois depende que sempre usemos senhas fortes e que tenhamos como armazená-las em lugares seguros. Então, de fato, pode ser que seja bom desabilitar a autenticação por senha e usar chaves, mas não é porque é inseguro em todo caso.</p>

<h3 id="desabilitar-o-login-por-ssh-com-usuário-root">Desabilitar o login por SSH com usuário root<a class="heading-permalink" href="#desabilitar-o-login-por-ssh-com-usuário-root" aria-label="Link permanente para Desabilitar o login por SSH com usuário root">#</a></h3>

<figure class="article-figure"><img src="/public/posts/seguranca-de-servidores/sudo-meme.jpg" alt="Meme mostrando um fantasma tentando assustar alguém dizendo &quot;boo&quot;, mas não consegue. Então diz &quot;sudo boo&quot; e enfim assuta" loading="lazy"/><figcaption class="article-figure__caption">Meme mostrando um fantasma tentando assustar alguém dizendo &quot;boo&quot;, mas não consegue. Então diz &quot;sudo boo&quot; e enfim assuta</figcaption></figure>

<p>Quando usamos nosso computador pessoal, executamos diversos programas, fazemos downloads, acessamos websites, clicamos em links enviados por terceiros e tudo isso é perigoso de ser feito por usuários com privilégios elevados no sistema. Se acessarmos links ou programas maliciosos, um usuário privilegiado pode ser usado para corromper o sistema de formas imprevisíveis. Por isso, utilizamos contas de usuário normal para o dia a dia e temos uma outra com privilégios administrativos para manutenção do sistema.</p>

<p>No entanto, num servidor, normalmente fazemos apenas atividades que exigem privilégios administrativos, como a ativação e execução de um serviço, atualização do sistema operacional, instalação e remoção de pacotes, aplicação de patches de segurança etc. Tudo isso exige permissão de administrador.</p>

<p>A recomendação de desabilitar o login como usuário root (e criar um usuário comum para acessar o servidor) tem a premissa de impedir alguém de realizar ações destrutivas ou mal-intencionadas caso consiga acesso de forma indevida ao sistema. Mas, em se tratando de gerenciamento de um servidor, esse usuário comum que trabalha na manutenção do sistema precisa que sua conta possa executar algumas ações como administrador. Isso é feito, normalmente, adicionando o usuário no grupo <strong>sudo</strong>. Então, em momentos específicos, ele pode utilizar o comando <code>sudo</code> para elevar temporariamente seus privilégios e executar ações como se fosse o usuário root.</p>

<p>Há cenários em que isso pode fazer total sentido, como quando trabalhamos numa equipe e temos diversas pessoas que possuem acesso ao servidor e trabalham na sua administração. Cada uma tem sua conta vinculada a uma identidade pessoal e, caso tenha as permissões necessárias, poderá realizar as atividades de manutenção. Assim, podemos saber quem foi a pessoa que executou determinadas ações no sistema através de logs. No entanto, em casos de um servidor pertencente a uma só pessoa, pode não fazer tanto sentido assim, já que apenas atividades administrativas são realizadas num servidor e apenas uma ou outra pessoa tem conhecimento das credenciais de acesso.</p>

<p>Então, ter um usuário diferente que possui todas as permissões do usuário root quando quiser é, na prática, ter <strong>dois usuários root</strong>.</p>

<h3 id="usar-um-firewall">Usar um firewall<a class="heading-permalink" href="#usar-um-firewall" aria-label="Link permanente para Usar um firewall">#</a></h3>

<p>Ok, quem não quer um <strong>muro flamejante</strong> queimando todo e qualquer intruso que tentar acessar seu sistema de forma indevida? O nome <em>firewall</em> pode dar a entender que basta utilizá-lo para tornar sua rede segura. No entanto, a depender do caso, ele pode apenas adicionar complexidade na manutenção do sistema e nem ajudar tanto.</p>

<p>Se estamos usando um servidor para permitir acesso ao nosso site nas portas 80 e 443, e nada além disso, o que vai adiantar adicionar uma regra no firewall para permitir apenas o tráfego nessas portas? Se nos certificarmos de deixar apenas serviços desejados executando no sistema, já estamos permitindo exclusivamente o tráfego nas portas destes serviços. Seria como adicionar um muro flamejante com apenas uma porta pela qual é seguro passar, para apenas chegar em outro muro com uma outra porta disponível, no mesmo lugar.</p>

<p>Já num caso em que tenhamos algum serviço exposto publicamente e, por algum motivo, quisermos que apenas certos IPs possam acessar esse serviço, aí sim podemos usar o firewall para que qualquer outro IP seja bloquado. Por exemplo, um servidor exposto para a internet, com uma aplicação web executando na porta 80 que se comunica com um banco de dados no mesmo servidor. Nesse caso, faz sentido adicionar uma regra de firewall que permita apenas tráfego interno do servidor para o banco de dados, evitando aceso direto por outros endereços da internet.</p>

<h2 id="que-recomendação-seguir-então">Que recomendação seguir, então?<a class="heading-permalink" href="#que-recomendação-seguir-então" aria-label="Link permanente para Que recomendação seguir, então?">#</a></h2>

<p>Não quero dizer que as medidas sugeridas sejam completamente ruins em si, mas apenas dizer que devemos utilizar as ferramentas e estratégias de <strong>forma crítica</strong>, sabendo para quais casos de uso elas servem e sabendo suas vantagens e desvantagens. Eu mesmo utilizei alguma(s) dessas recomendações para blindar a máquina que serve este site. A única forma de ter um servidor com segurança infalível é: não tenha um servidor. Fora isso, podemos sempre fazer <strong>o melhor possível nas condições possíveis</strong>.</p>

<figure class="article-figure"><img src="/public/posts/seguranca-de-servidores/nao-seja-hackeado.png" alt="Meme que diz: &quot;Não dá para ser hackeado se você não fornecer um computador a alguém&quot;" loading="lazy"/><figcaption class="article-figure__caption">Meme que diz: &quot;Não dá para ser hackeado se você não fornecer um computador a alguém&quot;</figcaption></figure>
]]></description>
    <content:encoded><![CDATA[<figure class="article-figure"><img src="/public/posts/seguranca-de-servidores/overengineering.png" alt="Canivete suiço com funções demais: overengineering" /><figcaption class="article-figure__caption">Canivete suiço com funções demais: overengineering</figcaption></figure>

<h2 id="motivação">Motivação<a class="heading-permalink" href="#motivação" aria-label="Link permanente para Motivação">#</a></h2>

<p>Quando eu estava colocando meu site pessoal no ar, decidi usar um VPS (Virtual Private Server), pois me proporcionaria flexibilidade e customização para atender minhas necessidades. Para servir um simples site estático, pode ser uma escolha ruim, pois existem formas mais baratas e diretas para isso, como o <a href="https://pages.github.com/">github pages</a>. Porém, também gostaria de poder ter um servidor remoto para fins de estudos e poder servir mais projetos pessoais ao mesmo tempo.</p>

<p>Após tomar a decisão de alugar o servidor, surge a necessidade de protegê-lo contra acessos indesejados. Pesquisando na web sobre as melhores práticas na segurança de servidores, as dicas mais comuns são:</p>

<ul>
<li>Alterar a porta padrão do SSH</li>
<li>Usar um firewall</li>
<li>Desabilitar o uso de senhas para acesso SSH</li>
<li>Desabilitar o login por SSH com usuário root</li>
<li>Habilitar atualizações automáticas</li>
</ul>

<p>Mas será que tudo isso é <strong>necessário</strong> e, se não fizermos, estaremos inseguros?</p>

<h2 id="depende">Depende&hellip;<a class="heading-permalink" href="#depende" aria-label="Link permanente para Depende…">#</a></h2>

<p>Como um profissional da área de segurança da informação, aprendi a sempre levar em consideração o contexto do <strong>ativo</strong> (aquilo que tem valor para uma organização e que deve ser protegido) para determinar a melhor forma de deixá-lo seguro. Segurança absoluta não existe, então devemos sempre tentar fazer o melhor possível, de acordo com as necessidades, com os meios disponíveis, mantendo um bom nível de conveniência.</p>

<p>Fazer uma <strong>modelagem de ameaças</strong> ajuda a tomar uma decisão, então devemos nos perguntar pelo menos:</p>

<ul>
<li>Contra quem estamos nos protegendo (agente)?</li>
<li>Com quais ações devemos nos preocupar?</li>
<li>Quais os objetivos de quem nos ameaça e qual sua motivação?</li>
<li>Quais os meios que esse agente possui para nos prejudicar?</li>
<li>Quão qualificado é esse agente?</li>
<li>Quão valioso é o ativo?</li>
<li>Quais são os pontos fracos do sistema?</li>
</ul>

<p>Com base nas respostas podemos concluir quais são as ameaças, como mitigá-las, e se as medidas de segurança aplicadas são adequadas ao contexto.</p>

<p>Por exemplo, se identificamos que o agente é alguém muito qualificado e possui todos os meios disponíveis atualmente para realizar ataques (alô, NSA), as medidas que devemos tomar para nos proteger precisam ser mais robustas que as adotadas contra agentes menos qualificados e menos poderosos (<em>script kiddies</em>). Se o ativo em questão não for tão importante, a equação também muda, pois é menos provável que alguém muito qualificado esteja atrás de um recurso menos valioso.</p>

<p>Além disso, a depender da qualificação do adversário, algumas medidas tomadas podem ser inefetivas, sendo apenas uma questão de tempo até serem superadas. Então, se para adotar tal medida foi necessário montar um esquema complexo de ser implementado e mantido, que pode não funcionar se uma pecinha do quebra-cabeça não funcionar direito, talvez não valha tanto o esforço, já que sabemos que em algum momento ela vai ser suplantada.</p>

<p>Em resumo, como quase tudo em TI, podemos ligar o modo sênior e dizer &ldquo;depende&hellip;&rdquo;.</p>

<figure class="article-figure"><img src="/public/posts/seguranca-de-servidores/clapping.gif" alt="palmas exageradas" loading="lazy"/><figcaption class="article-figure__caption">palmas exageradas</figcaption></figure>

<h2 id="sempre-questione-ainda-que-seja-amplamente-aceito-como-verdade">Sempre questione, ainda que seja amplamente aceito como verdade<a class="heading-permalink" href="#sempre-questione-ainda-que-seja-amplamente-aceito-como-verdade" aria-label="Link permanente para Sempre questione, ainda que seja amplamente aceito como verdade">#</a></h2>

<p>É óbvio que não devemos colocar um chapéu de alumínio na cabeça e começar a conspirar contra toda e qualquer boa prática divulgada sobre qualquer assunto, porém faz bem não assumir toda &ldquo;boa prática&rdquo; divulgada nos conteúdos da internet como uma verdade inquestionável.</p>

<p>Dito isso, vamos refletir sobre as recomendações citadas no início do texto.</p>

<h3 id="alterar-a-porta-padrão-do-ssh">Alterar a porta padrão do SSH<a class="heading-permalink" href="#alterar-a-porta-padrão-do-ssh" aria-label="Link permanente para Alterar a porta padrão do SSH">#</a></h3>

<p>A porta 22 é amplamente conhecida como a que é utilizada pelo SSH. Pensando nisso, com o objetivo de atrapalhar a coleta de informações de um possível atacante, recomenda-se que troquemos a porta em que nosso serviço escuta. <strong>Supostamente</strong>, um atacante executando um <code>nmap</code> (utilitário que, dentre outras coisas, escaneia quais portas estão abertas num sistema) buscando pelas portas mais comuns, não veria que temos um SSH rodando no nosso servidor.</p>

<p>No entanto, as portas alternativas utilizadas pela grande maioria das pessoas seguem um certo <strong>padrão</strong>.</p>

<pre><code>$ shodan stats --facets port ssh
Top 10 Results for Facet: port
22             19,811,983
2222              799,310
1080              166,397
10001             154,277
60022             149,733
50022             110,499
50000              83,115
58222              65,517
3389               60,378
1337               55,824
</code></pre>

<p>O <a href="https://www.shodan.io/">Shodan</a> é uma ferramenta que mapeia os servidores expostos publicamente na Internet e consolida algumas informações sobre eles, como portas abertas, serviços executando em cada porta, qual tipo de dispositivo que está em execução etc. Ao se registrar no site, você tem acesso a uma API Key e, através dela, podemos ter acesso a algumas informações. Podemos ver na saída do comando acima, que, como esperado, a maioria dos serviços SSH está executando na porta 22. Já a segunda porta mais usada é a 2222, seguida de outras que são mais ou menos fáceis de lembrar.</p>

<p>Podemos ver que, para dificultar de fato que um atacante adivinhe em qual porta seu serviço SSH está executando, deveríamos escolher uma porta de forma <strong>aleatória</strong>. Ainda assim, não existem tantas portas disponíveis (65535) e basta executar o <code>nmap</code> habilitando o scan em todas as portas para que o serviço seja descoberto (ex: <code>nmap -sS -Pn -T5 -p- &lt;ip&gt;</code>).</p>

<p>A base dessa abordagem é a chamada <a href="https://pt.wikipedia.org/wiki/Seguran%C3%A7a_por_obscurantismo"><strong>Segurança por Obscuridade</strong></a>, apostando em esconder informações e confiando que é o suficiente para manter algo seguro.</p>

<blockquote>
<p><cite>Pessoas desonestas são muito profissionais e já sabem muito mais do que poderíamos ensiná-las</cite></p>

<p>&ndash; <cite>Alfred Charles Hobbs</cite></p>
</blockquote>

<p>Além de não ser uma medida efetiva, alterar a porta pela qual você acessa seu servidor SSH pode te confundir caso você trabalhe sozinho e tenha uma memória ruim ou caso trabalhe numa equipe maior. Onde você vai documentar qual porta está sendo usada? As pessoas que trabalham com você sabem dessa alteração e dessa documentação? Claro que nesse simples caso de uma porta SSH não é tão complicado de resolver, mas quando tratamos de serviços e ativos mais críticos, com mais pessoas envolvidas, a segurança por obscuridade acaba gerando complexidades, dificuldades de entendimento pelos membros de um time e, além de tudo, não funciona.</p>

<figure class="article-figure"><img src="/public/posts/seguranca-de-servidores/security-obscurity.jpg" alt="Meme sobre segurança por obscuridade. Uma torrada no centro de um labirinto e um pombo. A torrada é o ativo, o labirinto é a medida obscura e o pombo o hacker" loading="lazy"/><figcaption class="article-figure__caption">Meme sobre segurança por obscuridade. Uma torrada no centro de um labirinto e um pombo. A torrada é o ativo, o labirinto é a medida obscura e o pombo o hacker</figcaption></figure>

<h3 id="habilitar-atualizações-automáticas">Habilitar atualizações automáticas<a class="heading-permalink" href="#habilitar-atualizações-automáticas" aria-label="Link permanente para Habilitar atualizações automáticas">#</a></h3>

<p>Um sistema desatualizado pode significar um sistema vulnerável. A partir do momento em que um software é publicado, ele está sujeito à crítica impiedosa dos <em>hackers</em> 👻. Principalmente, softwares que são amplamente usados, como Web Servers (ex.: Apache e Nginx) e sistemas de gerenciamento de conteúdo (ex.: Wordpress). Diariamente, testes de intrusão e análises de vulnerabilidades são executados em softwares como estes, de forma que utilizar uma versão antiga pode introduzir vulnerabilidades no seu sistema, pois a correção pode ter sido feita apenas nas versões mais novas.</p>

<p>Uma das formas de garantir que o sistema esteja sempre com as versões mais atualizadas dos softwares é configurar para que ele seja atualizado automaticamente. Porém, existem atualizações que podem corromper o sistema por quebra de compatibilidade com a versão atual do sistema operacional, por conflitarem com outros softwares ou por dependerem de outros pacotes em versões diferentes da que você possui atualmente. Isso pode acarretar em indisponibilidade do seu sistema.</p>

<p>Para aplicações que não são críticas, com poucos usuários simultâneos, que não lidam com transações financeiras, pode não ser um problema. Caso contrário, a indisponibilidade pode significar danos financeiros e dano à imagem de uma organização. Portanto, em contextos desse tipo, atualizações do sistema devem ser planejadas, possuir estratégias para se recuperar de desastres e voltar ao estado anterior.</p>

<p>Já em contextos menos críticos, uma indisponibilidade pode significar apenas uma pequena dor de cabeça, mas também é desagradável. A depender do número de serviços que você expõe publicamente no seu servidor e da frequência com que você o acessa, pode ser mais simples executar as atualizações manualmente, escolhendo cada pacote. <strong>Não necessariamente</strong>, você precisa da versão mais atual de um software.</p>

<h3 id="desabilitar-o-uso-de-senhas-para-acesso-ssh">Desabilitar o uso de senhas para acesso SSH<a class="heading-permalink" href="#desabilitar-o-uso-de-senhas-para-acesso-ssh" aria-label="Link permanente para Desabilitar o uso de senhas para acesso SSH">#</a></h3>

<p>O arquivo de configuração do servidor SSH (<code>/etc/ssh/sshd_config</code>) traz o seguinte:</p>

<blockquote>
<p><cite>&hellip;</cite></p>

<p><cite># To disable tunneled clear text passwords, change to no here! </cite>
<cite>PasswordAuthentication yes</cite></p>

<p><cite>&hellip;</cite></p>
</blockquote>

<p>Ou seja, <strong>aparentemente</strong>, a senha que você envia durante a conexão com SSH é transmitida em texto claro dentro do &ldquo;túnel&rdquo; até chegar no servidor remoto. Então isso quer dizer que a sua senha está exposta para qualquer um que intercepte a conexão possa ver? Não! Pois, a conexão com o servidor SSH acontece utilizando um par de chaves criptográficas para mascarar os dados que trafegam no estabelecimento da conexão com o servidor remoto. É a mesma coisa que acontece quando nos autenticamos na maioria dos sites que utilizam HTTPS. A nossa senha é encapsulada numa conexão SSL que trafega criptografada até chegar no servidor.</p>

<p>Não é perfeitamente seguro utilizar senhas ao se conectar por SSH, como a própria <a href="https://datatracker.ietf.org/doc/html/rfc4251#section-9.4.5">documentação</a> afirma:</p>

<blockquote>
<p><cite>The password mechanism, as specified in the authentication protocol, assumes that the server has not been compromised.  If the server has been compromised, using password authentication will reveal a valid username/password combination to the attacker, which may lead to further compromises. </cite></p>

<p><cite>This vulnerability can be mitigated by using an alternative form of authentication.  For example, public key authentication makes no assumptions about security on the server. </cite></p>
</blockquote>

<p>O mecanismo de autenticação por senha assume que o servidor do SSH não foi comprometido, mas, nesse caso, já temos um problema e não seria evitar o uso de senhas que teria resolvido (considerando que você não tenha escolhido &lsquo;123456&rsquo; como senha, né&hellip;). A documentação afirma que podemos mitigar isso usando autenticação com chaves, mas&hellip;</p>

<blockquote>
<p><cite>The use of public key authentication assumes that the client host has not been compromised.  It also assumes that the private key of the server host has not been compromised. </cite></p>

<p><cite>This risk can be mitigated by the use of passphrases on private keys; however, this is not an enforceable policy.  The use of smartcards, or other technology to make passphrases an enforceable policy is suggested.</cite></p>
</blockquote>

<p>A mesma documentação do protocolo, agora na seção sobre a <a href="https://datatracker.ietf.org/doc/html/rfc4251#section-9.4.4">autenticação com chaves</a>, traz que o método também não é perfeito, pois assume que o dispositivo cliente também não foi comprometido. Ou seja, não é o uso de senhas nessa conexão que é especialmente inseguro, mas depende de um <strong>conjunto de fatores</strong>.</p>

<p>Usar senhas ainda é algo complicado, pois depende que sempre usemos senhas fortes e que tenhamos como armazená-las em lugares seguros. Então, de fato, pode ser que seja bom desabilitar a autenticação por senha e usar chaves, mas não é porque é inseguro em todo caso.</p>

<h3 id="desabilitar-o-login-por-ssh-com-usuário-root">Desabilitar o login por SSH com usuário root<a class="heading-permalink" href="#desabilitar-o-login-por-ssh-com-usuário-root" aria-label="Link permanente para Desabilitar o login por SSH com usuário root">#</a></h3>

<figure class="article-figure"><img src="/public/posts/seguranca-de-servidores/sudo-meme.jpg" alt="Meme mostrando um fantasma tentando assustar alguém dizendo &quot;boo&quot;, mas não consegue. Então diz &quot;sudo boo&quot; e enfim assuta" loading="lazy"/><figcaption class="article-figure__caption">Meme mostrando um fantasma tentando assustar alguém dizendo &quot;boo&quot;, mas não consegue. Então diz &quot;sudo boo&quot; e enfim assuta</figcaption></figure>

<p>Quando usamos nosso computador pessoal, executamos diversos programas, fazemos downloads, acessamos websites, clicamos em links enviados por terceiros e tudo isso é perigoso de ser feito por usuários com privilégios elevados no sistema. Se acessarmos links ou programas maliciosos, um usuário privilegiado pode ser usado para corromper o sistema de formas imprevisíveis. Por isso, utilizamos contas de usuário normal para o dia a dia e temos uma outra com privilégios administrativos para manutenção do sistema.</p>

<p>No entanto, num servidor, normalmente fazemos apenas atividades que exigem privilégios administrativos, como a ativação e execução de um serviço, atualização do sistema operacional, instalação e remoção de pacotes, aplicação de patches de segurança etc. Tudo isso exige permissão de administrador.</p>

<p>A recomendação de desabilitar o login como usuário root (e criar um usuário comum para acessar o servidor) tem a premissa de impedir alguém de realizar ações destrutivas ou mal-intencionadas caso consiga acesso de forma indevida ao sistema. Mas, em se tratando de gerenciamento de um servidor, esse usuário comum que trabalha na manutenção do sistema precisa que sua conta possa executar algumas ações como administrador. Isso é feito, normalmente, adicionando o usuário no grupo <strong>sudo</strong>. Então, em momentos específicos, ele pode utilizar o comando <code>sudo</code> para elevar temporariamente seus privilégios e executar ações como se fosse o usuário root.</p>

<p>Há cenários em que isso pode fazer total sentido, como quando trabalhamos numa equipe e temos diversas pessoas que possuem acesso ao servidor e trabalham na sua administração. Cada uma tem sua conta vinculada a uma identidade pessoal e, caso tenha as permissões necessárias, poderá realizar as atividades de manutenção. Assim, podemos saber quem foi a pessoa que executou determinadas ações no sistema através de logs. No entanto, em casos de um servidor pertencente a uma só pessoa, pode não fazer tanto sentido assim, já que apenas atividades administrativas são realizadas num servidor e apenas uma ou outra pessoa tem conhecimento das credenciais de acesso.</p>

<p>Então, ter um usuário diferente que possui todas as permissões do usuário root quando quiser é, na prática, ter <strong>dois usuários root</strong>.</p>

<h3 id="usar-um-firewall">Usar um firewall<a class="heading-permalink" href="#usar-um-firewall" aria-label="Link permanente para Usar um firewall">#</a></h3>

<p>Ok, quem não quer um <strong>muro flamejante</strong> queimando todo e qualquer intruso que tentar acessar seu sistema de forma indevida? O nome <em>firewall</em> pode dar a entender que basta utilizá-lo para tornar sua rede segura. No entanto, a depender do caso, ele pode apenas adicionar complexidade na manutenção do sistema e nem ajudar tanto.</p>

<p>Se estamos usando um servidor para permitir acesso ao nosso site nas portas 80 e 443, e nada além disso, o que vai adiantar adicionar uma regra no firewall para permitir apenas o tráfego nessas portas? Se nos certificarmos de deixar apenas serviços desejados executando no sistema, já estamos permitindo exclusivamente o tráfego nas portas destes serviços. Seria como adicionar um muro flamejante com apenas uma porta pela qual é seguro passar, para apenas chegar em outro muro com uma outra porta disponível, no mesmo lugar.</p>

<p>Já num caso em que tenhamos algum serviço exposto publicamente e, por algum motivo, quisermos que apenas certos IPs possam acessar esse serviço, aí sim podemos usar o firewall para que qualquer outro IP seja bloquado. Por exemplo, um servidor exposto para a internet, com uma aplicação web executando na porta 80 que se comunica com um banco de dados no mesmo servidor. Nesse caso, faz sentido adicionar uma regra de firewall que permita apenas tráfego interno do servidor para o banco de dados, evitando aceso direto por outros endereços da internet.</p>

<h2 id="que-recomendação-seguir-então">Que recomendação seguir, então?<a class="heading-permalink" href="#que-recomendação-seguir-então" aria-label="Link permanente para Que recomendação seguir, então?">#</a></h2>

<p>Não quero dizer que as medidas sugeridas sejam completamente ruins em si, mas apenas dizer que devemos utilizar as ferramentas e estratégias de <strong>forma crítica</strong>, sabendo para quais casos de uso elas servem e sabendo suas vantagens e desvantagens. Eu mesmo utilizei alguma(s) dessas recomendações para blindar a máquina que serve este site. A única forma de ter um servidor com segurança infalível é: não tenha um servidor. Fora isso, podemos sempre fazer <strong>o melhor possível nas condições possíveis</strong>.</p>

<figure class="article-figure"><img src="/public/posts/seguranca-de-servidores/nao-seja-hackeado.png" alt="Meme que diz: &quot;Não dá para ser hackeado se você não fornecer um computador a alguém&quot;" loading="lazy"/><figcaption class="article-figure__caption">Meme que diz: &quot;Não dá para ser hackeado se você não fornecer um computador a alguém&quot;</figcaption></figure>
]]></content:encoded>
    <author>vitor@vitoralmeida.tech (Vitor Almeida)</author>
  </item>
  <item>
    <title>Por que resolvi criar um site pessoal</title>
    <link>https://vitoralmeida.tech/blog/por-que-criei-um-site</link>
    <guid isPermaLink="true">https://vitoralmeida.tech/blog/por-que-criei-um-site</guid>
    <pubDate>Wed, 16 Aug 2023 00:00:00 +0000</pubDate>
    <description><![CDATA[<h2 id="a-jornada-até-aqui">A jornada até aqui<a class="heading-permalink" href="#a-jornada-até-aqui" aria-label="Link permanente para A jornada até aqui">#</a></h2>

<p>Desde que resolvi largar uma graduação em Direito, em 2018, para começar a estudar sobre programação e tecnologia da informação, comecei e parei o projeto de criar um site pessoal.</p>

<p>Inicialmente, a motivação era colocar em prática o que estava aprendendo sobre desenvolvimento <em>web</em> e ter algo para mostrar em processos seletivos. Porém, não me dei muito bem com o lado front-end da força (ainda não é meu forte) e por não conseguir fazer as coisas da forma como idealizava (coloquei na cabeça que eu precisava escrever do zero), fiquei frustrado e deixei de lado.</p>

<p>Posteriormente, comecei de novo um projeto, dessa vez com alguma habilidade a mais e expectativas a menos (&ldquo;talvez fosse mais interessante um design mais minimalista&rdquo; foi a desculpa que me dei), com a ideia de o site também ser um blog. Entretanto, o que me segurou foi o pensamento &ldquo;quem sou eu para escrever alguma coisa?&rdquo; ou &ldquo;ainda que eu tenha algum conhecimento, por que alguém leria algo que escrevi e não de alguém mais experiente ou mais reconhecido?&rdquo;, ou ainda &ldquo;mas ninguém vai ler&rdquo;. O projeto, mais uma vez, não foi para frente.</p>

<p>Então comecei um estágio na <a href="https://www.alura.com.br/">Alura</a> e meu papel era ajudar as pessoas que estudam na plataforma a tirar suas dúvidas sobre conceitos, dúvidas técnicas e problemas com o ambiente de estudo/desenvolvimento, mais especificamente na escola de Devops. Diariamente, eu estava escrevendo respostas no fórum e algumas delas eram tão longas que poderiam ser um post de blog ou um tutorial. Além disso, as pessoas estavam conseguindo resolver seus problemas com minhas respostas, o que me ascendeu uma luzinha: &ldquo;hum&hellip; talvez eu tenha algo para dizer&rdquo;. Em algum momento desse estágio, ocorreu uma conversa com <a href="https://www.linkedin.com/in/paulosilveira/">Paulo Silveira</a> e <a href="https://www.linkedin.com/in/gabsferreira/">Gabs Ferreira</a> sobre a possibilidade de as pessoas que trabalhavam no time escreverem mais no <a href="https://www.alura.com.br/artigos">blog da Alura</a>, e algumas daquelas limitações que eu me colocava foram embora.</p>

<p>De fato, escrevi um post para o blog da Alura (<a href="https://www.alura.com.br/artigos/curl-como-usar">Curl: como usar e principais opções</a>) que passou pela revisão do Paulo e o feedback foi positivo, então a aprovação de uma pessoa referência na área removeu aquela barreira do &ldquo;quem sou eu para escrever alguma coisa&rdquo;.</p>

<p>Posteriormente, trabalhando no PagBank, ajudei na criação de um curso de introdução a Python para as pessoas que trabalham na empresa, todo em texto, e foi um processo que gostei muito de fazer. Pra completar, também recebi feedbacks positivos. Foi o fim das amarras que me coloquei no início da jornada.</p>

<h2 id="motivos-para-criar-um-site-blog">Motivos para criar um site/blog<a class="heading-permalink" href="#motivos-para-criar-um-site-blog" aria-label="Link permanente para Motivos para criar um site/blog">#</a></h2>

<p>Além de ser uma boa forma de praticar o que aprendemos, fazer um site pessoal é uma vitrine interessante para alguém que trabalha com TI (ou até mesmo pessoas de outra área de atuação). Você pode expor projetos pessoais, mostrar suas habilidades de escrita e mostrar conhecimentos que talvez não estejam relacionados diretamente com a posição que você ocupa no trabalho.</p>

<p>Fora o motivo mais &ldquo;egoísta&rdquo;, ainda que alguém mais conhecido (e mais qualificado) já tenha escrito algo sobre algum assunto, cada um tem uma forma de ver as coisas, entende sobre outras óticas ou até mesmo escreve de uma forma que agrada mais a algumas pessoas. Consequentemente, o fato de já ter sido dito não anula o fato de que ainda não foi dito por você. Explicar do seu jeito pode ajudar outras pessoas a entender um assunto.</p>

<p>Por fim, a web está cada vez mais centralizada em grandes plataformas, concentrando todo conteúdo e com isso está ficando (ou já está) muito quadrada. Um sistema que é distribuído por natureza, composto por milhões de partes, está sendo monopolizado por 4 ou 5 plataformas.</p>

<p>Os conteúdos obedecem a um modelo: são curtos e rápidos; quanto mais polêmicos e rasos são, mais engajamento geram.Além de tudo, como consequência, cada vez menos conhecemos as pessoas de verdade, ainda que estejamos &ldquo;conectados&rdquo; a elas. Tudo isso para nos manter conectados aos seus aplicativos, praticamente viciados (como mostrado no livro &ldquo;Dez Argumentos Para Você Deletar Agora Suas Redes Sociais&rdquo; - resenha no podcast <a href="https://www.segurancalegal.com/2019/04/episodio-195-dez-argumentos-para-voce-deletar-agora-suas-redes-sociais/">Segurança Legal</a>), para nos empurrar publicidade.</p>

<p>Acredito que ter um espaço próprio nesse contexto é uma forma de poder dar uma cara um pouco mais humana e pessoal para a web, como já ocorreu em algum momento.</p>

<h2 id="talvez-você-também-devesse-criar-o-seu">Talvez você também devesse criar o seu<a class="heading-permalink" href="#talvez-você-também-devesse-criar-o-seu" aria-label="Link permanente para Talvez você também devesse criar o seu">#</a></h2>

<p>Mesmo que você ainda não tenha uma bagagem muito grande na sua área de atuação, você pode compartilhar o resultado dos seus estudos e pesquisas. Muitas vezes você procura sobre um assunto e tem dificuldade de encontrar um post ou tutorial que tenha aquilo que precisa (ou de forma completa). Talvez você seja a pessoa certa para isso após o processo.</p>

<p>Mesmo que seu conteúdo não entre num hype ou não tenha grande público, poder ajudar alguém que precisa já é grande coisa, além de você estar aprendendo novos conhecimentos e praticando sua escrita.</p>

<h2 id="conclusão">Conclusão<a class="heading-permalink" href="#conclusão" aria-label="Link permanente para Conclusão">#</a></h2>

<p>O resultado dessa história é este post, neste blog, neste site. É simples, mas é de coração (hehe). Quase que não o boto no mundo esperando estar perfeito e completo, mas resolvi errar diferente dessa vez.</p>

<p>Obrigado, Paulo e Gabs, pela semente plantada em 2020, e obrigado, <a href="https://www.linkedin.com/in/silva-andrre/">André</a>, pelo incentivo por meio do exemplo.</p>
]]></description>
    <content:encoded><![CDATA[<h2 id="a-jornada-até-aqui">A jornada até aqui<a class="heading-permalink" href="#a-jornada-até-aqui" aria-label="Link permanente para A jornada até aqui">#</a></h2>

<p>Desde que resolvi largar uma graduação em Direito, em 2018, para começar a estudar sobre programação e tecnologia da informação, comecei e parei o projeto de criar um site pessoal.</p>

<p>Inicialmente, a motivação era colocar em prática o que estava aprendendo sobre desenvolvimento <em>web</em> e ter algo para mostrar em processos seletivos. Porém, não me dei muito bem com o lado front-end da força (ainda não é meu forte) e por não conseguir fazer as coisas da forma como idealizava (coloquei na cabeça que eu precisava escrever do zero), fiquei frustrado e deixei de lado.</p>

<p>Posteriormente, comecei de novo um projeto, dessa vez com alguma habilidade a mais e expectativas a menos (&ldquo;talvez fosse mais interessante um design mais minimalista&rdquo; foi a desculpa que me dei), com a ideia de o site também ser um blog. Entretanto, o que me segurou foi o pensamento &ldquo;quem sou eu para escrever alguma coisa?&rdquo; ou &ldquo;ainda que eu tenha algum conhecimento, por que alguém leria algo que escrevi e não de alguém mais experiente ou mais reconhecido?&rdquo;, ou ainda &ldquo;mas ninguém vai ler&rdquo;. O projeto, mais uma vez, não foi para frente.</p>

<p>Então comecei um estágio na <a href="https://www.alura.com.br/">Alura</a> e meu papel era ajudar as pessoas que estudam na plataforma a tirar suas dúvidas sobre conceitos, dúvidas técnicas e problemas com o ambiente de estudo/desenvolvimento, mais especificamente na escola de Devops. Diariamente, eu estava escrevendo respostas no fórum e algumas delas eram tão longas que poderiam ser um post de blog ou um tutorial. Além disso, as pessoas estavam conseguindo resolver seus problemas com minhas respostas, o que me ascendeu uma luzinha: &ldquo;hum&hellip; talvez eu tenha algo para dizer&rdquo;. Em algum momento desse estágio, ocorreu uma conversa com <a href="https://www.linkedin.com/in/paulosilveira/">Paulo Silveira</a> e <a href="https://www.linkedin.com/in/gabsferreira/">Gabs Ferreira</a> sobre a possibilidade de as pessoas que trabalhavam no time escreverem mais no <a href="https://www.alura.com.br/artigos">blog da Alura</a>, e algumas daquelas limitações que eu me colocava foram embora.</p>

<p>De fato, escrevi um post para o blog da Alura (<a href="https://www.alura.com.br/artigos/curl-como-usar">Curl: como usar e principais opções</a>) que passou pela revisão do Paulo e o feedback foi positivo, então a aprovação de uma pessoa referência na área removeu aquela barreira do &ldquo;quem sou eu para escrever alguma coisa&rdquo;.</p>

<p>Posteriormente, trabalhando no PagBank, ajudei na criação de um curso de introdução a Python para as pessoas que trabalham na empresa, todo em texto, e foi um processo que gostei muito de fazer. Pra completar, também recebi feedbacks positivos. Foi o fim das amarras que me coloquei no início da jornada.</p>

<h2 id="motivos-para-criar-um-site-blog">Motivos para criar um site/blog<a class="heading-permalink" href="#motivos-para-criar-um-site-blog" aria-label="Link permanente para Motivos para criar um site/blog">#</a></h2>

<p>Além de ser uma boa forma de praticar o que aprendemos, fazer um site pessoal é uma vitrine interessante para alguém que trabalha com TI (ou até mesmo pessoas de outra área de atuação). Você pode expor projetos pessoais, mostrar suas habilidades de escrita e mostrar conhecimentos que talvez não estejam relacionados diretamente com a posição que você ocupa no trabalho.</p>

<p>Fora o motivo mais &ldquo;egoísta&rdquo;, ainda que alguém mais conhecido (e mais qualificado) já tenha escrito algo sobre algum assunto, cada um tem uma forma de ver as coisas, entende sobre outras óticas ou até mesmo escreve de uma forma que agrada mais a algumas pessoas. Consequentemente, o fato de já ter sido dito não anula o fato de que ainda não foi dito por você. Explicar do seu jeito pode ajudar outras pessoas a entender um assunto.</p>

<p>Por fim, a web está cada vez mais centralizada em grandes plataformas, concentrando todo conteúdo e com isso está ficando (ou já está) muito quadrada. Um sistema que é distribuído por natureza, composto por milhões de partes, está sendo monopolizado por 4 ou 5 plataformas.</p>

<p>Os conteúdos obedecem a um modelo: são curtos e rápidos; quanto mais polêmicos e rasos são, mais engajamento geram.Além de tudo, como consequência, cada vez menos conhecemos as pessoas de verdade, ainda que estejamos &ldquo;conectados&rdquo; a elas. Tudo isso para nos manter conectados aos seus aplicativos, praticamente viciados (como mostrado no livro &ldquo;Dez Argumentos Para Você Deletar Agora Suas Redes Sociais&rdquo; - resenha no podcast <a href="https://www.segurancalegal.com/2019/04/episodio-195-dez-argumentos-para-voce-deletar-agora-suas-redes-sociais/">Segurança Legal</a>), para nos empurrar publicidade.</p>

<p>Acredito que ter um espaço próprio nesse contexto é uma forma de poder dar uma cara um pouco mais humana e pessoal para a web, como já ocorreu em algum momento.</p>

<h2 id="talvez-você-também-devesse-criar-o-seu">Talvez você também devesse criar o seu<a class="heading-permalink" href="#talvez-você-também-devesse-criar-o-seu" aria-label="Link permanente para Talvez você também devesse criar o seu">#</a></h2>

<p>Mesmo que você ainda não tenha uma bagagem muito grande na sua área de atuação, você pode compartilhar o resultado dos seus estudos e pesquisas. Muitas vezes você procura sobre um assunto e tem dificuldade de encontrar um post ou tutorial que tenha aquilo que precisa (ou de forma completa). Talvez você seja a pessoa certa para isso após o processo.</p>

<p>Mesmo que seu conteúdo não entre num hype ou não tenha grande público, poder ajudar alguém que precisa já é grande coisa, além de você estar aprendendo novos conhecimentos e praticando sua escrita.</p>

<h2 id="conclusão">Conclusão<a class="heading-permalink" href="#conclusão" aria-label="Link permanente para Conclusão">#</a></h2>

<p>O resultado dessa história é este post, neste blog, neste site. É simples, mas é de coração (hehe). Quase que não o boto no mundo esperando estar perfeito e completo, mas resolvi errar diferente dessa vez.</p>

<p>Obrigado, Paulo e Gabs, pela semente plantada em 2020, e obrigado, <a href="https://www.linkedin.com/in/silva-andrre/">André</a>, pelo incentivo por meio do exemplo.</p>
]]></content:encoded>
    <author>vitor@vitoralmeida.tech (Vitor Almeida)</author>
  </item>
</channel>
</rss>
