<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:webfeeds="http://webfeeds.org/rss/1.0"><channel><title>termius | Self-Hosted!</title><link>https://blog.brumarino.com/tags/termius/</link><description>Post novo no “Rack” todo dia às 7AM. Proxmox, rede, backup, UPS, IA e tudo o que tenho estudado.</description><language>pt-BR</language><managingEditor>Bruno Marino</managingEditor><image><url>https://blog.brumarino.com/brand/icon-144.png</url><title>termius | Self-Hosted!</title><link>https://blog.brumarino.com/tags/termius/</link><width>144</width><height>144</height></image><webfeeds:icon>https://blog.brumarino.com/brand/icon-192.png</webfeeds:icon><webfeeds:logo>https://blog.brumarino.com/brand/symbol.svg</webfeeds:logo><webfeeds:accentColor>2B3036</webfeeds:accentColor><lastBuildDate>Tue, 20 Oct 2026 07:00:00 -0300</lastBuildDate><atom:link href="https://blog.brumarino.com/tags/termius/index.xml" rel="self" type="application/rss+xml"/><item><title>Termius no iPhone: SSH no homelab sem abrir porta</title><link>https://blog.brumarino.com/termius-iphone-homelab-ssh/</link><pubDate>Tue, 20 Oct 2026 07:00:00 -0300</pubDate><guid>https://blog.brumarino.com/termius-iphone-homelab-ssh/</guid><category>Rede e acesso</category><description>Acesso o homelab pelo iPhone com o Termius grátis: chave SSH gerada no próprio app e conexão pelo Cloudflare One, sem nenhuma porta aberta em casa.</description><content:encoded><![CDATA[<p>Muita coisa do homelab eu resolvo pelo celular: um iPhone com o <strong>Termius</strong>, inclusive de fora de casa.</p>
<p>O resumo da minha experiência cabe numa frase: tendo acesso SSH, tudo se resolve. Neste post conto como montei esse acesso, com chave SSH criada no próprio Termius e conexão pelo Cloudflare Tunnel, sem abrir nenhuma porta no roteador.</p>
<h2 id="por-que-o-termius">Por que o Termius <a class="anchor" href="#por-que-o-termius" aria-label="Link para esta seção">#</a></h2>
<p>O Termius é um cliente SSH com app para iOS, Android e desktop. Uso a versão gratuita e, para o meu uso, ela basta. Nunca usei outro app de SSH no celular, então não tenho comparação para fazer; o que posso dizer é que nunca tive motivo para procurar outro.</p>
<p>Pela página de preços do Termius, o plano gratuito (Starter) inclui:</p>
<ul>
<li>cofre local (as chaves e os hosts ficam no aparelho);</li>
<li>SSH e SFTP;</li>
<li>port forwarding;</li>
<li>autocompletar com IA.</li>
</ul>
<p>Sincronizar o cofre entre celular e computador e os snippets ficam nos planos pagos. Para o meu uso, isso não fez falta.</p>
<h2 id="a-chave-ssh-nasce-no-celular">A chave SSH nasce no celular <a class="anchor" href="#a-chave-ssh-nasce-no-celular" aria-label="Link para esta seção">#</a></h2>
<p>Em vez de copiar uma chave privada do computador para o celular, eu <strong>gerei a chave no próprio Termius</strong>. A documentação dele explica o caminho: no <strong>Keychain</strong>, você gera uma chave nova, dá um nome, escolhe o tipo (Ed25519 é uma boa escolha hoje) e, se quiser, uma senha para ela.</p>
<p>Depois, a parte <strong>pública</strong> da chave vai para o servidor, no arquivo <code>authorized_keys</code> do usuário. O Termius tem uma opção para exportar a chave direto para um host já cadastrado. Se preferir fazer à mão, é colar a linha da chave pública no servidor:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">mkdir -p ~/.ssh <span class="o">&amp;&amp;</span> chmod <span class="m">700</span> ~/.ssh
</span></span><span class="line"><span class="cl"><span class="nb">echo</span> <span class="s1">&#39;ssh-ed25519 AAAA...sua-chave-publica... termius-iphone&#39;</span> &gt;&gt; ~/.ssh/authorized_keys
</span></span><span class="line"><span class="cl">chmod <span class="m">600</span> ~/.ssh/authorized_keys
</span></span></code></pre></div><p>Assim, a chave privada nunca sai do celular. Se eu perder o aparelho, basta apagar aquela linha do <code>authorized_keys</code> e a chave deixa de valer, sem afetar as chaves dos outros dispositivos.</p>
<aside class="alert alert--tip">
  <p class="alert__title">Dica</p>
  <p>Dê um nome claro para cada chave, como <code>termius-iphone</code>, no comentário do fim da linha. Na hora de revogar o acesso de um aparelho, você sabe exatamente qual linha apagar.</p>
</aside><h2 id="como-eu-chego-em-casa-estando-fora">Como eu chego em casa estando fora <a class="anchor" href="#como-eu-chego-em-casa-estando-fora" aria-label="Link para esta seção">#</a></h2>
<p>Aqui está a parte que mais mudou a minha vida no homelab. Eu já contei que sofri com bots na porta 22 e que o problema só acabou quando <a href="/ssh-cloudflare-tunnel-proxyjump/">tirei o SSH da internet com o Cloudflare Tunnel e o ProxyJump</a>. O acesso pelo celular segue a mesma ideia: <strong>nenhuma porta aberta no roteador</strong>.</p>
<p>No iPhone, uso o app <strong>Cloudflare One</strong> (o cliente que antes se chamava WARP). Com ele ligado e o aparelho registrado na minha conta da Cloudflare, o tráfego para a rede de casa passa pelo túnel que o <code>cloudflared</code> mantém de dentro do homelab. Para o Termius, é como se eu estivesse na rede local.</p>
<p>Pela documentação da Cloudflare, esse desenho tem três peças:</p>
<ol>
<li><strong>Uma rota de rede privada no túnel.</strong> Em <strong>Networking &gt; Routes</strong>, você cria uma rota do tipo <strong>Tunnel CIDR</strong> apontando a faixa da sua rede (por exemplo, <code>192.168.1.0/24</code>) para o túnel.</li>
<li><strong>Ajuste no Split Tunnels.</strong> No modo padrão, <strong>Exclude</strong>, o cliente deixa as faixas privadas (como <code>192.168.0.0/16</code>) <em>fora</em> do túnel. Para alcançar a sua rede, a faixa dela precisa sair dessa lista de exclusão.</li>
<li><strong>O aparelho registrado no Cloudflare One</strong>, com regras de quem pode se registrar e, de preferência, políticas do Gateway liberando só o que precisa.</li>
</ol>
<aside class="alert alert--warning">
  <p class="alert__title">Atenção</p>
  <p>Rede privada liberada para o cliente é acesso de verdade à sua rede de casa. Restrinja quem pode registrar aparelhos (por e-mail, por exemplo) e, se possível, crie políticas no Gateway que bloqueiam tudo e liberam só os hosts e portas que você usa.</p>
</aside><p>Um detalhe da documentação que vale saber: o servidor SSH vê a conexão chegando do IP da máquina onde roda o <code>cloudflared</code>, e não do celular. Se você monitora os acessos SSH, como eu faço no jump server, os registros vão mostrar esse IP.</p>
<h2 id="o-que-fica-salvo-no-termius">O que fica salvo no Termius <a class="anchor" href="#o-que-fica-salvo-no-termius" aria-label="Link para esta seção">#</a></h2>
<p>No Termius, cada host tem endereço, usuário e a chave que ele usa. A chave que gerei no Termius está liberada no host do Proxmox. Para os outros acessos de fora, vale o desenho do post sobre SSH: o jump server é a porta de entrada e os outros hosts ficam atrás dele.</p>
<p>Com acesso SSH, dá para resolver quase tudo pelo celular:</p>
<ul>
<li>ver se um serviço está de pé e reiniciar quando precisa;</li>
<li>ler logs com <code>journalctl</code> para entender um problema;</li>
<li>conferir o resultado do backup da noite;</li>
<li>retomar uma sessão do Claude Code em um container, assunto de um post desta semana.</li>
</ul>
<p>Para reiniciar e investigar um serviço, dois comandos resolvem a maior parte:</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">systemctl status nome-do-servico
</span></span><span class="line"><span class="cl">journalctl -u nome-do-servico -n <span class="m">50</span> --no-pager
</span></span></code></pre></div><h2 id="cuidados-com-o-celular-como-chave-de-casa">Cuidados com o celular como chave de casa <a class="anchor" href="#cuidados-com-o-celular-como-chave-de-casa" aria-label="Link para esta seção">#</a></h2>
<p>Celular se perde, quebra e é roubado. Algumas coisas que valem a pena:</p>
<ul>
<li><strong>Bloqueio de tela forte e biometria</strong> no aparelho.</li>
<li><strong>Uma chave por aparelho.</strong> Nunca reaproveite a chave do computador no celular. Se um aparelho sair de cena, você revoga só ele.</li>
<li><strong>Senha na chave, se quiser uma camada a mais.</strong> O Termius pergunta na hora de gerar.</li>
<li><strong>Nada de senha do root por SSH.</strong> Com chave funcionando, desligue o login por senha no <code>sshd_config</code> (<code>PasswordAuthentication no</code>).</li>
</ul>
<h2 id="resumindo">Resumindo <a class="anchor" href="#resumindo" aria-label="Link para esta seção">#</a></h2>
<ul>
<li>O <strong>Termius grátis</strong> resolve SSH pelo celular; sincronização e snippets ficam nos planos pagos.</li>
<li><strong>Gere a chave no próprio celular</strong> e mande só a parte pública para o servidor.</li>
<li><strong>Cloudflare One + Cloudflare Tunnel</strong> dão acesso à rede de casa sem abrir porta no roteador; lembre de tirar a faixa da sua rede da lista de exclusão do Split Tunnels.</li>
<li><strong>Restrinja quem entra</strong>, porque o celular vira uma chave da sua casa.</li>
</ul>
<p>Hoje, se alguma coisa para no homelab, eu não preciso estar em casa nem perto de um computador. Com o celular e acesso SSH, eu resolvo de onde estiver.</p>
]]></content:encoded></item></channel></rss>