Login
Login

Como abrir portas e listar portas abertas no Linux

Como abrir portas e listar portas abertas no Linux
Hostman Team
Redator técnico
O sistema Linux Rede
10.10.2025
Reading time: 6 min

Ao trabalhar com redes no Linux, pode ser necessário abrir ou fechar uma porta de rede. O gerenciamento de portas é essencial para a segurança: quanto menos portas abertas houver em um sistema, menos vetores de ataque potenciais existirão. Além disso, se uma porta estiver fechada, um invasor não poderá obter informações sobre o serviço em execução naquela porta específica.

Este guia explica como abrir ou fechar portas e como verificar portas abertas em distribuições Linux como Ubuntu/Debian e CentOS/RHEL, utilizando firewalls como ufw, firewalld e iptables.

Vamos demonstrar esse processo em duas distribuições Linux: Ubuntu 22.04 e CentOS 9, executadas em um VPS Hostman. Todos os comandos fornecidos aqui funcionam em qualquer distribuição baseada em Debian ou RHEL.

O que é uma porta de rede?

As portas são usadas para acessar aplicações e protocolos específicos. Por exemplo, um servidor pode hospedar simultaneamente um servidor web e um banco de dados — as portas direcionam o tráfego para o serviço apropriado. Tecnicamente, uma porta de rede é um número inteiro não negativo entre 0 e 65535.

  • Portas reservadas (0–1023): usadas por protocolos e serviços de rede conhecidos como SSH (porta 22), FTP (porta 21), HTTP (porta 80) e HTTPS (porta 443).

  • Portas registradas (1024–49151): podem ser usadas por aplicações específicas para comunicação.

  • Portas dinâmicas (49152–65535): usadas para conexões temporárias e podem ser atribuídas dinamicamente a aplicações.

Como abrir portas em distribuições Linux baseadas em Debian

Em sistemas baseados em Debian (Ubuntu, Debian, Linux Mint, etc.), você pode usar o ufw (Uncomplicated Firewall).

ufw vem pré-instalado na maioria das distribuições baseadas em APT. Para verificar se está instalado:

ufw version

Se for exibida uma versão, ufw está instalado. Caso contrário, instale com:

apt update && apt -y install ufw

Por padrão, ufw está inativo, o que significa que todas as portas estão abertas. Você pode verificar seu status com:

ufw status

Para ativá-lo:

ufw enable

Será necessário confirmar com y. Observe que ativar o ufw pode interromper conexões SSH ativas. Por padrão, ufw bloqueia todo o tráfego de entrada e permite todo o tráfego de saída.

Para verificar a política padrão:

cat /etc/default/ufw

Image7

Abrindo portas com ufw

Para abrir uma porta:

ufw allow <port_number>

Exemplo — abrir a porta 22 para SSH:

ufw allow 22

Você pode abrir várias portas separando-as por vírgulas e especificando o protocolo (tcp ou udp):

ufw allow 80,443,8081,8443/tcp
ufw allow 80,443,8081,8443/udp

Em vez de números de porta, você pode usar o nome do serviço (definido em /etc/services). 

Image8

Exemplo — abrir Telnet (porta 23):

ufw allow telnet

Observação: Não é possível especificar vários nomes de serviço ao mesmo tempo; caso contrário, o ufw exibirá um erro:

Image1 (1)

Para abrir um intervalo de portas:

ufw allow <start_port>:<end_port>/<protocol>

Exemplo:

ufw allow 8000:8080/tcp

Fechando portas com ufw

Para fechar uma porta:

ufw deny <port_number>

Exemplo — fechar a porta 80:

ufw deny 80

Você também pode usar o nome do serviço. Exemplo — fechar FTP (porta 21):

ufw deny ftp

Verificando portas abertas com ufw

Para listar todas as portas abertas e fechadas:

ufw status

Image18

Ou para uma visão mais detalhada:

ufw status verbose

Como abrir uma porta em distribuições Linux baseadas em RHEL

Distribuições baseadas em RHEL (CentOS 7+, RHEL 7+, Fedora 18+, OpenSUSE 15+) usam firewalld por padrão.

Abrindo portas com firewalld

Verifique se o firewalld está instalado:

firewall-offline-cmd -V

Se uma versão for exibida, firewalld está instalado. Caso contrário, instale-o:

dnf install firewalld

Por padrão, firewalld está desativado. Verifique seu status:

firewall-cmd --state

Para ativá-lo:

systemctl start firewalld

Abrir a porta 8080 para TCP:

firewall-cmd --zone=public --add-port=8080/tcp --permanent
  • --zone=public: especifica a zona da regra.
  • --add-port=8080/tcp: especifica a porta e o protocolo.
  • --permanent: salva a regra permanentemente.

Image12

Você também pode abrir um serviço usando seu nome, por exemplo HTTP (porta 80):

firewall-cmd --zone=public --add-service=http --permanent

Aplicar as alterações:

firewall-cmd --reload

Fechando portas com firewalld

Para fechar uma porta por número:

firewall-cmd --zone=public --remove-port=8080/tcp --permanent

Image4

Ou por nome do serviço:

firewall-cmd --zone=public --remove-service=http --permanent

Sempre recarregue após as alterações:

firewall-cmd --reload

Listando portas abertas com firewalld

Para listar todas as portas abertas:

firewall-cmd --list-ports

Gerenciando portas com iptables

Ao contrário do ufw e do firewalld, o iptables vem pré-instalado em muitas distribuições (Ubuntu, Debian, RHEL, Rocky Linux, AlmaLinux).

Abrindo portas com iptables

Para abrir a porta 8182 para conexões de entrada:

iptables -A INPUT -p tcp --dport 8182 -j ACCEPT
  • -A INPUT: adiciona uma regra à cadeia INPUT.
  • -p tcp: especifica o protocolo.
  • --dport 8182: especifica a porta a ser aberta.
  • -j ACCEPT: permite o tráfego através da porta.

Para conexões de saída:

iptables -A OUTPUT -p tcp --dport 8182 -j ACCEPT

Para abrir um intervalo de portas:

iptables -A INPUT -p tcp --match multiport --dports 1024:2000 -j ACCEPT

Fechando portas com iptables

Para fechar uma porta:

iptables -A INPUT -p tcp --dport 8182 -j DROP

Fechar um intervalo de portas:

iptables -A INPUT -p tcp --match multiport --dports 1024:2000 -j DROP

Salvando regras do iptables

Por padrão, as regras do iptables são válidas apenas até o próximo reinício do servidor. Para salvá-las permanentemente, instale o iptables-persistent:

Para sistemas baseados em APT:

apt update && apt -y install iptables-persistent

Para sistemas baseados em DNF:

dnf -y install iptables-persistent

Salvar as regras atuais:

iptables-save

As regras serão automaticamente recarregadas na próxima reinicialização.

Visualizando portas abertas com iptables

Listar todas as regras e portas abertas:

iptables -L -v -n

Listar apenas regras IPv4:

iptables -S

Listar regras IPv6:

ip6tables -S

Conclusão

Neste guia, mostramos como abrir e fechar portas de rede no Linux e como verificar as portas atualmente abertas usando três ferramentas diferentes: ufw, firewalld e iptables. Um bom gerenciamento de portas reduz o risco de ataques de rede e ajuda a ocultar informações sobre os serviços que utilizam essas portas.

O sistema Linux Rede
10.10.2025
Reading time: 6 min

Semelhante

O sistema Linux

Como copiar arquivos e diretórios no Linux

Quando você começa a trabalhar com Linux, uma das tarefas essenciais que encontrará é o gerenciamento de arquivos. Seja organizando seus documentos pessoais, migrando arquivos do sistema ou preparando backups completos, saber duplicar arquivos com precisão é fundamental. No centro desse processo está o comando cp — uma ferramenta poderosa criada para replicar arquivos e diretórios com facilidade. Este guia foi desenvolvido para ajudar você a dominar o comando cp. Vamos explorar desde a cópia básica de arquivos até a replicação recursiva de diretórios, além de dicas para preservar metadados e evitar perda acidental de dados. Com exemplos detalhados, cenários reais e boas práticas, você rapidamente estará pronto para usar cp como um profissional de Linux. E se você está procurando uma solução confiável, de alto desempenho e econômica para seus fluxos de trabalho, a Hostman oferece opções de Hospedagem VPS Linux, incluindo VPS Debian, VPS Ubuntu e VPS CentOS. Explorando o comando cp No Linux, o comando cp funciona como a ferramenta principal para copiar dados. Sua versatilidade permite realizar desde a cópia de um único arquivo até espelhar estruturas complexas de diretórios com subpastas aninhadas. Diferente dos gerenciadores de arquivos gráficos, o cp opera totalmente pelo terminal, oferecendo controle preciso sobre cada aspecto do processo de cópia. Como funciona Na forma mais simples, cp recebe um arquivo (ou diretório) de origem e o duplica em um novo local. Sua flexibilidade está em suas opções — flags que permitem ajustar o comportamento conforme suas necessidades. Seja preservando permissões, evitando sobrescritas acidentais ou copiando árvores completas de diretórios, o cp tem uma opção para cada situação. Estrutura básica do comando O comando cp segue um formato simples. Aqui está a sintaxe canônica: cp [options] source destination cp: o comando que inicia a cópia. [options]: parâmetros adicionais (flags) que controlam o comportamento do processo de cópia. source: o arquivo ou diretório que você deseja duplicar. destination: a localização ou nome do arquivo de destino. Essa estrutura direta torna cp popular tanto entre administradores de sistemas quanto entre usuários casuais. Explorando opções essenciais O verdadeiro poder do cp se revela através de suas diversas opções. Aqui estão algumas das mais importantes: Cópia recursiva (-r ou -R): quando você precisa copiar um diretório inteiro — incluindo todas as subpastas e arquivos — a flag recursiva é indispensável. Ela instrui o cp a percorrer toda a árvore de diretórios. Modo interativo (-i): segurança em primeiro lugar! Esta opção solicita confirmação antes de substituir um arquivo existente. É essencial ao lidar com dados importantes. Forçar cópia (-f): às vezes é necessário ignorar avisos e garantir que o arquivo seja copiado de qualquer maneira. Esta flag substitui arquivos existentes sem pedir confirmação. Use com cautela. Preservar atributos (-p): a integridade dos arquivos é fundamental — especialmente quando envolve permissões, timestamps e informações de proprietário. Esta opção garante que a cópia mantenha todos esses atributos. Saída detalhada (-v): se você deseja ver exatamente o que está acontecendo durante o processo de cópia, esta opção imprime cada ação no terminal. Muito útil para grandes volumes de arquivos ou para depuração. Exemplos práticos: copiando arquivos Vamos analisar alguns exemplos práticos para entender como essas opções funcionam no dia a dia. Copiar um único arquivo Imagine que você possua um arquivo chamado notes.txt e deseja criar uma cópia de segurança no mesmo diretório. Basta executar: cp notes.txt notes_backup.txt Esse comando cria uma cópia idêntica chamada notes_backup.txt. Porém, se já existir um arquivo com esse nome e você quiser evitar sobrescrevê-lo sem aviso, use: cp -i notes.txt notes_backup.txt A flag -i garante que você seja perguntado antes de qualquer sobrescrita. Transferir arquivos entre pastas Se o objetivo é mover um arquivo para outra localização, especifique o diretório de destino. Por exemplo, para copiar report.pdf para uma pasta chamada archive, utilize: cp report.pdf /home/username/archive/ Certifique-se de que o diretório de destino já exista; o cp não o cria automaticamente. Caso seja necessário, você pode criá-lo antes com o comando mkdir. Copiar vários arquivos ao mesmo tempo Às vezes é necessário duplicar diversos arquivos simultaneamente. Para copiar file1.txt, file2.txt e file3.txt para uma pasta chamada backup, digite: cp file1.txt file2.txt file3.txt /home/username/backup/ Esse comando lida com múltiplos arquivos de uma só vez. Se estiver lidando com muitos arquivos que seguem um padrão — como todos os arquivos de log — use um curinga: cp *.log /home/username/logs/ Isso instrui o cp a copiar todos os arquivos que terminam em .log para o diretório logs. Dominando a cópia recursiva de diretórios Muitas vezes, a tarefa envolve não apenas um arquivo individual, mas diretórios inteiros. Duplicar um diretório de forma recursiva Suponha que você queira duplicar o conteúdo de um site localizado em /var/www/html para criar um backup. O comando será: cp -r /var/www/html /backup/html_backup Aqui, a flag -r instrui o cp a copiar tudo — incluindo subpastas e arquivos ocultos. Combinar cópia recursiva e preservação de atributos Ao realizar backups de diretórios, muitas vezes é fundamental manter permissões, timestamps e outros metadados. Para isso, combine a flag recursiva com a opção de preservação: cp -rp /var/www/html /backup/html_backup Esse comando garante que cada arquivo em /var/www/html seja copiado para /backup/html_backup preservando todos os atributos originais. É a solução ideal para dados sensíveis ou configurações críticas do sistema. Dicas, truques e técnicas avançadas Agora que você já domina o básico, vamos explorar algumas estratégias avançadas e boas práticas para utilizar o comando cp com ainda mais eficácia. Combinar opções para mais segurança É comum combinar várias flags para ajustar o comportamento do cp às suas necessidades. Por exemplo, para copiar um diretório com segurança preservando atributos e solicitando confirmação antes de sobrescrever arquivos, utilize: cp -rpi /data/source_directory /data/destination_directory Essa combinação poderosa garante um processo de cópia completo e seguro. Lidar com nomes de arquivos contendo caracteres especiais Nomes de arquivos no Linux podem incluir espaços ou caracteres especiais. Para garantir que sejam interpretados corretamente, coloque-os entre aspas. Exemplo: cp "My Important Document.txt" "My Important Document Copy.txt" Isso impede que o shell interprete espaços como separadores de argumentos. Evitar sobrescritas não intencionais Para operações em lote ou scripts automatizados, você pode querer impedir que arquivos existentes sejam sobrescritos. A flag -n (no-clobber) resolve isso: cp -n *.conf /backup/configs/ Esse comando copia os arquivos de configuração apenas se não existir no destino um arquivo com o mesmo nome. Usar o modo detalhado para depuração Ao lidar com um grande volume de arquivos ou ao investigar um processo de cópia, a flag detalhada (-v) pode ser extremamente útil: cp -rv /source/folder /destination/folder O modo detalhado exibe cada arquivo processado, facilitando a visualização do que está acontecendo e a detecção de possíveis erros. Aplicações e cenários do mundo real O comando cp não é apenas útil ocasionalmente — ele é essencial em muitos ambientes profissionais. Administração de sistemas e backups Administradores de sistemas frequentemente usam cp para criar backups antes de realizar mudanças críticas em configurações do sistema. Por exemplo: cp -rp /etc /backup/etc_backup Esse comando cria um backup completo do diretório /etc, preservando todas as permissões e configurações. Em situações de falhas ou erros, esse tipo de backup é indispensável. Migração de dados e transferência entre servidores Ao mover dados entre servidores ou diferentes partes de uma rede, o cp ajuda a garantir que todos os arquivos sejam transferidos corretamente. Combinado com ferramentas como rsync, pode compor soluções robustas de migração. Desenvolvimento e testes Desenvolvedores frequentemente duplicam diretórios inteiros para criar ambientes de teste ou versões sandbox de seus projetos. Seja para testar uma nova funcionalidade ou depurar um problema, copiar todo o diretório do projeto preservando atributos pode economizar tempo e evitar erros. Boas práticas para usar o cp de forma eficiente Verificar caminhos de destino: sempre confira se o diretório de destino existe para evitar erros durante a cópia. Usar o modo interativo para arquivos críticos: ao trabalhar com dados importantes, a opção -i pode evitar sobrescritas acidentais, solicitando confirmação. Colocar entre aspas nomes de arquivos com espaços: garanta que arquivos contendo espaços ou caracteres especiais estejam devidamente entre aspas. Planejar uma estratégia de backup: realize backups regulares de diretórios essenciais usando opções recursivas e de preservação de atributos. Combinar opções com atenção: combine flags como -r, -p e -v para adaptar o cp às suas necessidades, garantindo segurança e clareza nas operações. Considerações finais O comando cp é um dos pilares da gestão eficiente de arquivos no Linux. Sua simplicidade esconde funcionalidades poderosas oferecidas por suas diversas opções. Ao dominar o cp, você não só agiliza seu fluxo de trabalho, como também protege seus dados ao lidar com atributos, cópias recursivas e automações bem planejadas. Seja você iniciante no mundo Linux ou um usuário experiente buscando aprimorar suas habilidades, as técnicas e exemplos apresentados neste guia servirão como referência confiável para qualquer tarefa de duplicação de arquivos. Consulte a página de manual (man cp) para mais detalhes e opções avançadas. Aproveite a versatilidade do comando cp e, em pouco tempo, gerenciar arquivos e diretórios no Linux se tornará algo natural.
28 November 2025 · 10 min to read
O sistema Linux

Como enviar e-mails no Linux pela linha de comando com Sendmail e Mailx

Para quem gerencia servidores ou trabalha com automação, saber enviar e-mails diretamente pelo terminal Linux é essencial. Isso oferece controle total sobre as funções de e-mail e elimina a necessidade de programas complexos. É especialmente útil em cenários onde velocidade e simplicidade são prioridades. Ferramentas comuns como sendmail e mailx são amplamente usadas para enviar mensagens, verificar configurações SMTP, automatizar alertas e integrar com scripts. Elas são simples, porém eficazes — perfeitas para informar equipes sobre atualizações do servidor, gerar relatórios automáticos ou testar configurações de e-mail. Este guia foi criado para usuários que desejam gerenciar e-mails diretamente via terminal. Ele aborda a instalação das ferramentas essenciais e também tarefas mais avançadas, como enviar anexos e configurar os utilitários de e-mail. Por que usar ferramentas de e-mail pela linha de comando? As duas ferramentas mais comuns — sendmail e mailx — são opções confiáveis para envio de e-mails no Linux e oferecem diversas vantagens: Eficiência Clientes de e-mail tradicionais podem ser lentos e consumir muitos recursos. Já essas ferramentas enviam e-mails de forma rápida e leve diretamente pela linha de comando. Automação Integrando-se facilmente com scripts shell, processos cron e ferramentas de monitoramento, elas permitem automatizar notificações e alertas recorrentes. Depuração de problemas SMTP A depuração de configurações SMTP se torna mais simples. Esses comandos oferecem visibilidade sobre o processo de entrega, facilitando a análise de logs e erros. Flexibilidade Seja para enviar alertas ou gerar relatórios automáticos, sendmail e mailx oferecem versatilidade para diversas tarefas. Pré-requisitos Antes de usar esses utilitários de e-mail no Linux, certifique-se de ter: Acesso ao terminal: Em alguns casos, permissões de root podem ser necessárias. Um servidor SMTP: Necessário para testar o envio de e-mails. Utilitários instalados: Verifique se sendmail e mailx estão instalados e funcionam corretamente. Configurando um servidor SMTP Os servidores SMTP são essenciais para o envio de e-mails. Eles se dividem em duas categorias: Servidores SMTP externos Servidores SMTP locais Servidores SMTP externos São servidores de e-mail hospedados por terceiros. Enviam mensagens para destinatários fora da sua rede local e garantem: Entrega global Autenticação Criptografia Prevenção de spam Exemplos Gmail Endereço: smtp.gmail.com Porta: 587 (TLS) ou 465 (SSL) Outlook Endereço: smtp.office365.com Porta: 587 Esses servidores exigem métodos de autenticação (usuário, senha ou senhas de app) e criptografia TLS/SSL. Nota: Já fornecemos um guia para configurar SMTP externo. O comando para envio via Postfix é o mesmo — basta ajustar as credenciais e substituir o endereço de e-mail pelo do Gmail ou outro provedor desejado. Servidores SMTP locais Operam exclusivamente dentro de uma rede interna. São ideais para: Enviar e-mails entre usuários internos (ex.: tom@office.local → jerry@office.local) Testes e desenvolvimento locais Comunicação interna Funcionam sem acesso à internet Configurando um servidor SMTP local 1. Instale o Postfix sudo apt install postfix 2. Edite a configuração do Postfix sudo nano /etc/postfix/main.cf Ajuste ou confirme: myhostname = mail.office.local mydomain = office.local myorigin = $mydomain inet_interfaces = loopback-only local_recipient_maps = proxy:unix:passwd.byname mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain Salve e reinicie: sudo systemctl restart postfix 3. Crie usuários de e-mail sudo adduser linux sudo adduser hostman Isso cria endereços como linux@office.local. Visão geral do sendmail sendmail é um famoso agente de transferência de e-mail (MTA) no Linux. Ele funciona perfeitamente com servidores SMTP e permite enviar mensagens a partir do sistema local ou scripts. Instalando o sendmail Debian/Ubuntu sudo apt install sendmail CentOS/Red Hat sudo yum install sendmail Iniciar e habilitar o serviço sudo systemctl start sendmail sudo systemctl enable sendmail Testar a configuração echo "Testing sendmail setup" | sendmail -v your-email@example.com Verifique as mensagens recebidas: mail Se não funcionar, instale mailutils: sudo apt install mailutils Ou visualize diretamente: cat /var/mail/user Configurar o sendmail sudo nano /etc/mail/sendmail.mc Exemplo: definir o domínio: define(`confDOMAIN_NAME', `your_domain.com')dnl Gerar novo arquivo de configuração: sudo m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf Se ocorrer erro de permissão: sudo sh -c "m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf" Reinicie o serviço: sudo systemctl restart sendmail Enviar e-mail com sendmail 1. Crie um arquivo nano email.txt Conteúdo: Subject: Test Email from Hostman This is a test email sent using sendmail on Linux. 2. Enviar sendmail recipient@example.com < email.txt 3. Verificar mail Enviar anexos com sendmail sendmail não suporta anexos nativamente, mas é possível usar uuencode: sudo apt install sharutils Exemplo: ( echo "Subject: Email with attachment"; uuencode file.txt file.txt ) | sendmail recipient@example.com Verificar: mail Visão geral do mailx mailx é uma ferramenta simples e eficiente para gerenciar e-mails via terminal. Ela faz parte do pacote mailutils na maioria das distribuições. Instalar o mailx Debian/Ubuntu sudo apt install mailutils Red Hat sudo yum install mailx Enviar e-mail com mailx echo "This is the body of the email" | mailx -s "Test Email from Mailx" recipient@example.com Enviar anexo com mailx echo "Please find the attached document" | mailx -s "Email with Attachment" -A email.txt recipient@example.com Conclusão Enviar e-mails pela linha de comando no Linux é uma maneira poderosa de automatizar comunicações, depurar servidores ou testar configurações. Com sendmail e mailx, você pode lidar tanto com mensagens simples quanto com setups avançados com anexos. Este guia fornece instruções detalhadas para você começar facilmente e otimizar seu fluxo de trabalho.
26 November 2025 · 6 min to read
O sistema Linux

Como abrir uma porta no Linux

Abrir portas no Linux é uma tarefa essencial que permite que certos serviços ou aplicativos troquem dados pela rede. As portas funcionam como canais de comunicação, permitindo o acesso a serviços autorizados e bloqueando conexões não autorizadas. O gerenciamento correto de portas é fundamental para garantir segurança, estabilidade e bom desempenho do sistema. Entendendo as portas e sua função As portas são pontos lógicos de comunicação de rede, por onde os dispositivos enviam e recebem informações.Exemplos comuns: HTTP usa a porta 80 HTTPS usa a porta 443 SSH usa a porta 22 Uma porta aberta indica que há um serviço escutando e aceitando conexões por aquele canal. Uma porta fechada bloqueia o tráfego. Gerenciar corretamente as portas abertas no Linux é essencial para manter disponibilidade e segurança. Como verificar as portas abertas no Linux Antes de abrir uma nova porta, é importante verificar quais portas já estão ativas. Você pode fazer isso com alguns comandos básicos do Linux. Com netstat Para listar as portas abertas: netstat -tuln A opção -tuln mostra apenas as portas TCP e UDP, sem resolver nomes de host. O netstat oferece uma visão em tempo real das conexões de rede ativas. Observação: se o netstat não estiver instalado: sudo apt install net-tools Com ss O comando ss é mais moderno e rápido que o netstat. Execute: ss -tuln Ele mostra as portas em uso e informações sobre os sockets. Com nmapPara uma análise mais detalhada das portas abertas: nmap localhost O nmap faz uma varredura no host especificado (aqui, o localhost) e exibe as portas abertas — útil para identificar quais serviços estão expostos à rede. Observação: instale o nmap com: sudo apt install nmap Como abrir portas no Linux Para permitir acesso por uma porta específica, é necessário ajustar as regras do firewall. O Linux oferece várias ferramentas para isso: iptables, ufw e firewalld. A seguir, veja como usá-las. Método 1: usando iptables O iptables é uma ferramenta poderosa e de baixo nível que permite controle detalhado do tráfego de rede. Adicionar uma regra para liberar uma porta específica Exemplo: liberar a porta 8080 (HTTP): sudo iptables -A INPUT -p tcp --dport 8080 -j ACCEPT Explicação: sudo: executa o comando com privilégios administrativos -A INPUT: adiciona a regra à cadeia de entrada (tráfego de entrada) -p tcp: aplica a regra ao protocolo TCP --dport 8080: define a porta 8080 -j ACCEPT: permite o tráfego que corresponder à regra Essas alterações não são permanentes — elas desaparecem após reiniciar o sistema. Tornar a regra permanente sudo apt install iptables iptables-persistent sudo netfilter-persistent save Esses comandos salvam as regras atuais e garantem que sejam aplicadas novamente ao reiniciar o servidor. Recarregar as alterações sudo netfilter-persistent reload Método 2: usando ufw (Uncomplicated Firewall) O ufw é uma interface simplificada do iptables, ideal para quem quer gerenciar o firewall de forma rápida e intuitiva. Ativar o ufw sudo ufw enable Se o ufw não estiver instalado: sudo apt install ufw Permitir tráfego por uma porta específica Exemplo: abrir a porta 22 (SSH): sudo ufw allow 22/tcp sudo: Grants superuser privileges. ufw allow: Adds a rule to permit traffic. 22/tcp: Sets port 22 for communication while restricting the rule to TCP protocol. Isso permite conexões TCP pela porta 22 — geralmente usada para acesso remoto via SSH. Verificar o status do firewall sudo ufw status Exibe todas as regras ativas e as portas abertas. Método 3: usando firewalld O firewalld é um daemon de firewall dinâmico, mais fácil de configurar que o iptables. Adicionar uma regra permanente Exemplo: liberar a porta 443 (HTTPS): sudo firewall-cmd --permanent --add-port=443/tcp Para instalar e ativar o firewalld: sudo apt install firewalld sudo systemctl enable firewalld sudo systemctl start firewalld Recarregar as regras sudo firewall-cmd --reload Verificar se a porta foi aberta sudo firewall-cmd --list-all Mostra todas as zonas e regras ativas, incluindo as portas abertas. Testar a porta aberta Após abrir uma porta, é importante confirmar se ela realmente está acessível. Com telnet telnet localhost port_number Se a conexão for estabelecida, a porta está aberta e funcionando. Com nmap nmap -p port_number localhost Verifica se a porta está acessível no host local. Com curl curl localhost:port_number Se o serviço estiver em execução, o comando retornará uma resposta bem-sucedida. Solução de problemas comuns Se a porta não abrir corretamente: Verifique as regras do firewall: iptables -L ufw status Verifique o status do serviço: systemctl status <nome_do_serviço> Abrir portas com base no protocolo Dependendo do serviço, pode ser necessário usar TCP ou UDP. Abrir uma porta TCP Exemplo: liberar a porta 3306 (MySQL): sudo ufw allow 3306/tcp Garante comunicação estável para consultas de banco de dados. Abrir uma porta UDP Exemplo: liberar a porta 161 (SNMP): sudo ufw allow 161/udp O UDP oferece comunicação mais rápida e sem conexão — ideal para ferramentas de monitoramento. Gerenciar o acesso às portas Restringir acesso a um IP específico sudo ufw allow from 192.168.1.100 to any port 22 Permite o acesso SSH pela porta 22 apenas a partir do IP especificado, aumentando a segurança. Fechar uma porta sudo ufw deny 80/tcp Bloqueia o tráfego de entrada na porta 80 (HTTP). Conclusão Verificar e abrir portas no Linux é um passo essencial para otimizar a conectividade de rede e garantir funcionamento seguro dos serviços. Com ferramentas como iptables, ufw e firewalld, é possível controlar o tráfego de forma segura e eficiente. Teste sempre suas configurações com nmap, curl ou telnet para confirmar que tudo está funcionando corretamente. Um bom gerenciamento de portas é a base para servidores estáveis, conexões seguras e alta performance.
29 October 2025 · 6 min to read

Tem perguntas,
comentários ou preocupações?

Nossos profissionais estão disponíveis para ajudá-lo a qualquer momento,
seja para assistência ou apenas se você não souber por onde começar.
Envie-nos um e-mail
Hostman's Support