Login
Login

Como abrir uma porta no Linux

Como abrir uma porta no Linux
Awais Khan
Redator técnico
O sistema Linux
29.10.2025
Reading time: 6 min

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.

Image1

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

Image3

Ele mostra as portas em uso e informações sobre os sockets.

Com nmap
Para 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.

Image2

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.

Image5

Tornar a regra permanente

sudo apt install iptables iptables-persistent
sudo netfilter-persistent save

Image4

Esses comandos salvam as regras atuais e garantem que sejam aplicadas novamente ao reiniciar o servidor.

Recarregar as alterações

sudo netfilter-persistent reload

Image7

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:

Image6

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.

Image9

Verificar o status do firewall

sudo ufw status

Exibe todas as regras ativas e as portas abertas.

Image8

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

Image12

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

Image10

Verificar se a porta foi aberta

sudo firewall-cmd --list-all

Mostra todas as zonas e regras ativas, incluindo as portas abertas.

Image11

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.

Image13

Com nmap

nmap -p port_number localhost

Verifica se a porta está acessível no host local.

Image14

Com curl

curl localhost:port_number

Se o serviço estiver em execução, o comando retornará uma resposta bem-sucedida.

Image15

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.

Image16

Abrir uma porta UDP

Exemplo: liberar a porta 161 (SNMP):

sudo ufw allow 161/udp

Image17

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.

Image18

Fechar uma porta

sudo ufw deny 80/tcp

Bloqueia o tráfego de entrada na porta 80 (HTTP).

Image19

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.

O sistema Linux
29.10.2025
Reading time: 6 min

Semelhante

O sistema Linux

Criando links simbólicos no Linux: um tutorial passo a passo

Symlinks, também conhecidos como links simbólicos, funcionam como atalhos no mundo Linux. Eles permitem criar um novo nome (ou link) que aponta para outro arquivo, diretório ou qualquer objeto dentro do sistema de arquivos. Sua principal vantagem é reduzir redundâncias, evitando a necessidade de manter várias cópias do mesmo arquivo. Quando você usa um symlink, alterações feitas no arquivo original são refletidas em todos os seus links simbólicos. Isso elimina a necessidade de atualizar diversas cópias manualmente. Além disso, symlinks oferecem uma forma flexível de gerenciar permissões de acesso. Por exemplo, usuários diferentes, com diretórios apontando para subconjuntos de arquivos, podem limitar a visibilidade além do que as permissões padrão permitiriam. Em essência, symlinks são indispensáveis para uma gestão eficiente de arquivos e organização, simplificando atualizações e controle de acesso em sistemas complexos. Requisitos Para seguir este tutorial, você vai precisar de: Um servidor em nuvem, máquina virtual ou computador rodando um sistema operacional Linux. Na Hostman, você pode implantar um servidor com Ubuntu, CentOS ou Debian em menos de um minuto. Criando links simbólicos com o comando ln O comando ln é usado para criar links simbólicos no Linux. Siga estas etapas: Abra uma janela do terminal. Navegue até o diretório onde deseja criar o link simbólico. Use a seguinte sintaxe para criar um symlink: ln -s /path/to/source /path/to/symlink Substitua /path/to/source pelo caminho real do arquivo ou diretório que deseja vincular e /path/to/symlink pelo nome/local desejado para o link simbólico. Entendendo as opções do comando ln O comando ln oferece várias opções para personalizar a criação de symlinks:  -s: Cria um link simbólico.  -f: Sobrescreve um symlink existente.  -n: Trata o destino do symlink como um arquivo comum. Explore essas opções conforme suas necessidades de criação de links. Criando links simbólicos para arquivos Para criar um symlink para um arquivo, use o comando ln com a opção -s. Aqui está um exemplo de como criar um link simbólico para um arquivo usando o comando ln. O comando abaixo cria um link simbólico chamado symlink_file no diretório atual, apontando para o arquivo /path/to/file: ln -s /path/to/file /path/to/symlink_file Substitua /path/to/file pelo caminho real do arquivo e /path/to/symlink_file pelo nome desejado do symlink. Neste exemplo, o caminho é absoluto. Você também pode criar um symlink usando um caminho relativo. No entanto, lembre-se de que, para que o symlink funcione corretamente, qualquer processo que o acesse deve primeiro definir o diretório de trabalho correto; caso contrário, o link pode parecer quebrado. Criando links simbólicos para diretórios Você pode usar o comando ln para criar um link simbólico que aponta para um diretório. Por exemplo, o comando abaixo cria um symlink chamado symlink_directory no diretório atual, apontando para /path/to/directory: ln -s /path/to/directory /path/to/symlink_directory Esse comando cria um link simbólico chamado symlink_directory na sua localização atual, vinculando-o ao diretório /path/to/directory. Sobrescrever um link simbólico à força Você pode usar a opção -f com o comando ln. Por exemplo, se o caminho em um symlink estiver incorreto devido a um erro de digitação ou se o destino tiver sido movido, você pode atualizar o link assim: ln -sf /path/to/new-reference-dir symlink_directory Usar a opção -f garante que o conteúdo do symlink antigo seja substituído pelo novo destino. Ela também remove automaticamente quaisquer arquivos ou symlinks conflitantes. Se você tentar criar um symlink sem -f e o nome já estiver em uso, o comando falhará. Verificando links simbólicos Você pode exibir o conteúdo de um symlink usando o comando ls -l no Linux: ls -l symlink_directory A saída mostrará o symlink e seu destino: symlink_file -> /path/to/reference_file Aqui, symlink_file é o nome do link simbólico, e ele aponta para o arquivo /path/to/reference_file. ls -l /path/to/symlink A saída mostrará o symlink e seu destino. Boas práticas para links simbólicos Use nomes descritivos para os links simbólicos. Evite links circulares para prevenir confusão no sistema. Atualize os symlinks se o local de destino mudar. Casos de uso para links simbólicos Gerenciamento de arquivos de configuração: Vincular arquivos de configuração entre sistemas. Controle de versão: Vincular simbolicamente bibliotecas comuns para projetos de desenvolvimento. Backup de dados: Criar symlinks para diretórios de backup. Possíveis problemas e soluções Problemas de permissão: Certifique-se de que as permissões corretas estejam definidas para a origem e o symlink. Links quebrados: Atualize symlinks se arquivos de destino forem movidos ou excluídos. Links entre sistemas de arquivos: Symlinks podem não funcionar entre sistemas de arquivos diferentes. Conclusão Symlinks são valiosos para otimizar o gerenciamento de arquivos e a manutenção do sistema. Eles simplificam atualizações entre várias aplicações que compartilham um arquivo comum, reduzindo a complexidade de manutenção. Também oferecem uma alternativa a diretórios como /etc, que geralmente exigem acesso root para modificar arquivos. Desenvolvedores acham os symlinks úteis para alternar facilmente entre arquivos locais de teste e versões de produção. Seguindo este tutorial, você dominou o processo de criação de links simbólicos no Linux. Aproveite os symlinks para uma gestão eficiente de arquivos e maior personalização.
15 December 2025 · 6 min to read
O sistema Linux

Comandos systemctl reiniciar, recarregar e parar um serviço

For Linux operating systems, systemctl is a system and service manager that is mostly used to manage services and their configurations. It is a component of systemd, which also handles other system-level functions, process management, and system boot. Maintaining a reliable and effective system requires knowing how to manage services. restart, reload, and stop are among the most significant commands; each has a distinct function in managing services.  This tutorial will go through these commands in details, covering their syntax, use cases, and real-world examples to help users grasp them and manage systems more successfully.  Entendendo o gerenciamento de serviços com systemctl A maioria das distribuições modernas de Linux utiliza o systemctl como a principal ferramenta de administração de serviços do sistema, um componente essencial para manter um ambiente Linux estável. O systemctl, parte da suíte systemd, ajuda administradores a habilitar, desabilitar, monitorar e controlar serviços. Dominar o systemctl pode melhorar a resposta, o desempenho e a confiabilidade do sistema. Um serviço — ou um conjunto de processos que operam em segundo plano para fornecer funções do sistema, como rede, compartilhamento de arquivos ou hospedagem de aplicações — é chamado de serviço no ambiente Linux. Embora esses serviços possam ser controlados manualmente, eles normalmente são iniciados automaticamente quando o sistema é inicializado. Serviços críticos, como servidores web, bancos de dados e ferramentas de rede, precisam ser gerenciados corretamente para garantir sua disponibilidade e funcionamento eficiente. Administradores podem reduzir o tempo de inatividade recarregando ou reiniciando serviços usando os comandos do systemctl, sem interferir nas atividades do sistema. Garanta que os serviços estejam disponíveis após uma reinicialização usando os comandos enable/disable para automatizar sua inicialização. Monitore o status dos serviços e logs para diagnosticar rapidamente problemas. Devido à sua versatilidade, o systemctl é uma ferramenta indispensável para a administração de serviços em qualquer sistema Linux. Iniciar um serviço usando systemctl Iniciar um serviço no Linux com systemctl é uma tarefa simples, porém essencial, para controlar diferentes processos em segundo plano, como servidores web, bancos de dados ou serviços de rede. Um serviço deve ser iniciado pelo usuário e autorizado a executar sua função designada. Use o comando abaixo para iniciar um serviço. sudo systemctl start <nome_do_servico> Onde: sudo: concede os privilégios administrativos necessários para iniciar o serviço. systemctl: o comando do Linux para gerenciar serviços. start: o comando que instrui o sistema a iniciar o serviço. <nome_do_servico>: o nome do serviço (por exemplo: apache2, nginx, ssh) que o usuário deseja iniciar. Exemplo: sudo systemctl start apache2 Esse comando instrui o serviço Apache a iniciar. Se o serviço já estiver em execução, nada visível acontecerá. Caso não esteja em execução, o comando o iniciará. Reiniciar um serviço usando systemctl Para administradores de sistemas Linux, reiniciar um serviço usando o systemctl é fundamental, pois o serviço é interrompido e iniciado novamente. Isso é especialmente útil ao solucionar problemas de serviços ou após alterações de configuração ou atualizações de software. Reiniciar um serviço garante que ele utilize a configuração ou o código mais recente. Use o comando abaixo para reiniciar um serviço. sudo systemctl restart <nome_do_servico> Exemplo: sudo systemctl restart apache2 Esse comando primeiro interrompe o serviço Apache e depois o reinicia. Isso é especialmente útil quando o usuário modificou o arquivo de configuração e deseja aplicar as alterações. Reiniciar um serviço pode ajudar a resolver problemas temporários ou liberar recursos. Quando um serviço não está funcionando corretamente, reiniciá-lo geralmente resolve o problema. Recarregar a configuração de um serviço com systemctl No Linux, um serviço pode aplicar novas alterações de configuração sem precisar ser completamente interrompido e reiniciado, utilizando o comando de recarga do systemctl. Isso é especialmente útil quando pequenas alterações são feitas na configuração e não se deseja interromper o funcionamento do serviço. Use o comando abaixo para recarregar um serviço. sudo systemctl reload <nome_do_servico> Exemplo: sudo systemctl reload apache2 Esse comando aplica as alterações feitas no arquivo de configuração do Apache sem reiniciar completamente o servidor, minimizando interrupções para os usuários. Recarregar é uma opção mais suave do que reiniciar, pois não encerra conexões ativas nem processos em execução. Parar serviços com systemctl Execute o comando abaixo para parar um serviço em execução. Se um serviço estiver configurado para iniciar automaticamente na inicialização do sistema, pará-lo interromperá apenas suas operações atuais, mas não impedirá que ele seja iniciado novamente na próxima reinicialização. Esse simples comando systemctl stop permite ao usuário encerrar processos sem alterar o comportamento de inicialização, sendo útil para o gerenciamento de serviços. sudo systemctl stop <nome_do_servico> Exemplo: sudo systemctl stop apache2 Verificar o status de serviços usando systemctl Monitorar e verificar se os serviços estão funcionando corretamente é uma das tarefas mais importantes da administração de sistemas Linux. Com o comando systemctl, é possível visualizar informações detalhadas sobre o status de um serviço, como se ele está ativo, inativo ou se apresentou algum problema. Após reiniciar ou recarregar um serviço, verificar seu status ajuda a confirmar que ele voltou a funcionar como esperado. Use o comando abaixo para visualizar o status atual de um serviço. sudo systemctl status <nome_do_servico> Exemplo: sudo systemctl status apache2 O comando status fornece informações detalhadas sobre o serviço, geralmente incluindo: Active State:  mostra se o serviço está em execução (active), parado ou em falha. Loaded State:  indica se o arquivo de unidade (arquivo de configuração) do serviço está carregado na memória. Main PID:  mostra o ID do processo principal do serviço. Recent Logs: exibe as entradas de log mais recentes relacionadas ao serviço para auxiliar na solução de problemas. Solução de problemas comuns Diversos problemas podem ocorrer ao gerenciar serviços no Linux usando o systemctl, incluindo encerramentos inesperados, falhas ao iniciar ou erros de configuração. Resolver esses problemas de forma eficaz é essencial para manter o desempenho e a estabilidade do sistema. A seguir estão os problemas mais comuns e os passos recomendados para solucioná-los. O comando sudo systemctl start retorna um erro ou não inicia o serviço conforme esperado. Execute sudo systemctl status <nome_do_servico> para obter detalhes sobre a causa da falha do serviço. Utilize journalctl para visualizar os logs do sistema relacionados ao serviço e identificar possíveis problemas subjacentes. O comando systemctl status mostra a causa da falha. Procure mensagens como "Main PID exited" ou "Job for <nome_do_servico> failed" para entender o problema. Muitas vezes, reiniciar o serviço pode corrigir falhas temporárias. Um serviço não inicia automaticamente após reiniciar o sistema. Certifique-se de que o serviço está configurado para iniciar automaticamente. Execute sudo systemctl is-enabled. Se ele não estiver habilitado, ative-o com systemctl enable <nome_do_servico>. O serviço não inicia ou não executa ações devido a erros de permissão. Verifique se o serviço possui permissões adequadas para acessar os arquivos e diretórios necessários. Por exemplo: servidores web precisam de permissão de leitura para arquivos de configuração e diretórios web. Confirme também que o serviço está sendo executado com o usuário ou grupo correto. Alguns serviços precisam ser executados por um usuário específico definido no arquivo de unidade. O serviço inicia com configuração incorreta ou alterações feitas no arquivo de unidade não são aplicadas. Execute sudo systemctl daemon-reload após modificar um arquivo de unidade para recarregar a gestão do systemd. Certifique-se de que o arquivo de unidade corresponde à configuração esperada e está localizado em /lib/systemd/system/ ou /etc/systemd/system/. Esses procedimentos podem ajudar a resolver a maioria dos problemas comuns relacionados a serviços gerenciados pelo systemctl no Linux. A estabilidade e a integridade do sistema podem ser preservadas revisando regularmente os logs e o status dos serviços. Conclusão Em conclusão, administradores de sistemas devem estar familiarizados com o uso do systemctl para gerenciar serviços no Linux. Ele oferece um conjunto de ferramentas avançadas para controlar, monitorar e solucionar problemas de serviços de forma eficiente. Compreender os comandos fundamentais — incluindo recarregar, parar, reiniciar e verificar o status de serviços — permite garantir que as funções essenciais do sistema operem corretamente. Seja ao gerenciar serviços de rede, bancos de dados ou servidores web, dominar o systemctl ajuda a manter um ambiente Linux estável e eficiente. Além disso, a habilidade de resolver problemas comuns, como falhas de serviços, erros de permissão ou problemas de configuração, contribui para reduzir o tempo de inatividade e preservar a confiabilidade do sistema. A integração do systemctl com o journalctl possibilita uma análise completa de logs, facilitando diagnósticos rápidos e soluções eficazes. Você pode testar nosso VPS Linux confiável para seus projetos. 
11 December 2025 · 9 min to read
O sistema Linux

Como listar usuários no Linux

Administrar e proteger um sistema Linux exige monitoramento e gerenciamento cuidadoso dos usuários. Saber quem está utilizando o sistema e quais ações estão sendo executadas é fundamental para manter a segurança e a eficiência de servidores e computadores Linux. Este guia apresenta vários métodos para verificar usuários no Linux, incluindo o uso do terminal e da interface gráfica (especificamente, o Gnome). Os métodos descritos ajudam você a obter informações sobre contas de usuário, suas atividades, histórico de login e muito mais. Existem diversas maneiras de listar contas de usuário. A seguir, mostramos como acessar a lista de usuários do Linux pelo terminal e pela interface gráfica. Terminal Nesta seção, exploraremos métodos para exibir usuários no Linux usando a linha de comando. Arquivo /etc/passwd O arquivo /etc/passwd contém informações sobre todos os usuários registrados no sistema. Cada linha representa uma conta de usuário e inclui: nome, senha, UID (ID do usuário), GID (ID do grupo), informações adicionais (GECOS), diretório home e shell de login. Para visualizar seu conteúdo: cat /etc/passwd Você também pode abrir o arquivo em um editor de texto como nano ou vim. Se você estiver usando um servidor em nuvem da Hostman com um usuário não administrador, o arquivo pode parecer assim: (Exemplo visual no documento original) As senhas aparecem como x por motivos de segurança. Elas são armazenadas no arquivo /etc/shadow. Para exibir apenas os nomes dos usuários: sed 's/:.*//' /etc/passwd Comando who O comando who mostra uma lista dos usuários ativos, incluindo nome, terminal, data e hora de login e, quando disponível, o endereço IP: who Se você precisa apenas dos nomes dos usuários atualmente conectados: users Diferença: who → fornece informações detalhadas users → lista apenas os nomes Comando w O comando w mostra uma visão detalhada dos usuários ativos, incluindo: atividades atuais, tempo de login, carga do sistema. Execute: w Comando last O comando last exibe o histórico de logins, incluindo datas, horários e origem das conexões. É útil para auditoria e segurança: last Comando lastlog O comando lastlog mostra o último login de cada usuário: lastlog Interface gráfica Para quem prefere trabalhar com interface gráfica, veja como verificar usuários em sistemas com o ambiente Gnome. Ferramentas semelhantes não são mais suportadas no KDE Plasma. Existem pelo menos duas formas de acessar a lista de usuários no Gnome. Menu “Usuários” Abra Configurações pelo menu do sistema. Procure e abra a aba Usuários. Clique em Desbloquear (canto superior direito) para liberar todas as funções. Na parte superior, você verá a lista de usuários existentes; abaixo, os detalhes e configurações de cada conta. Utilitário “Users” Você também pode instalar o utilitário adicional gnome-system-tools: sudo apt install gnome-system-tools (Em outras distribuições use dnf, pacman, etc.) Depois de instalado: Abra o menu de busca. Digite Usuários. Selecione o utilitário recém-instalado. A janela permitirá visualizar e editar contas, tipos de usuário, senhas e outras configurações. Resumo Se você usa o terminal, estes comandos são úteis: /etc/passwd — lista todas as contas existentes who — lista usuários ativos com detalhes w — mostra atividades atuais dos usuários last — mostra o histórico de logins lastlog — exibe o último login de cada usuário Se utiliza Linux com Gnome, você pode usar: o menu Usuários, ou o utilitário gnome-system-tools. Entender quem acessa seu sistema e quais ações executam ajuda a detectar problemas rapidamente e melhora a administração do sistema. Escolha o método que mais se adapta às suas necessidades.
11 December 2025 · 4 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