Como posso listar minhas portas abertas no Debian?


58

Qual é o comando para exibir uma lista de portas abertas em um servidor Debian?

Eu tentei, netstat -a | egrep 'Proto|LISTEN'mas gostaria de algo mais específico que realmente lista o número da porta.

Respostas:


86
 netstat -pln

-llistará as portas de escuta, -ptambém exibirá o processo, -nmostrará os números das portas em vez dos nomes. Adicionar -tpara mostrar apenas as portas TCP.


12
Para -pque funcione corretamente, é necessário executá-lo como raiz; caso sudo netstat -tplncontrário, a coluna do processo não será particularmente útil, a menos que você seja o usuário cujo processo está ouvindo em uma determinada porta.
CJC

21

lsof -i -P

Verifique a página de manual, lsofpois não há falta de opções. -Plista o número da porta em vez do nome obtido em /etc/servicesExecutar como raiz; no entanto, isso fornecerá uma lista de todas as conexões de rede ativas e seus status (escuta, estabelecida, etc.).


Essa deve ser a resposta correta. Netstat não está instalado por padrão
José

10

O que quase todo mundo quer (TCP e UDP) é netstat -tunlp.

Eu uso todos os dias, talvez a cada hora. O hack 'lsof' é mais portátil (funciona também no Solaris), mas no Debian não é um pacote essencial, você deve instalá-lo.


Sim, e execute-o via sudo.
Martijn Heemels

11
Meu amigo me ensinou a lembrar deste comando com o nome de uma flor. netstat -tulpenFlag efornece informações adicionais.
Deele

11
E agora, em 2018, minha nova caixa Debian não tem, netstatmas tem lsof. :)
Jason

10

Eu sou um grande fã netstat -ntlpe lsof -i, ambos já mencionados.

Um novo (er) comando para mim é ss .

A invocação é como:

ss -l

É bom ter opções, em termos de comandos e sinalizadores.


11
opções são especialmente bons desde o recipiente mongo janela de encaixe (e presumivelmente muitos outros) teve ss, mas não netstat ou lsof
Foon

Comecei a usar isso como uma pergunta de entrevista. Provavelmente perguntou a 40 pessoas diferentes. Até agora, ninguém mencionou ss. Eu pergunto como o OP, então se eles responderem, eu digo: "ok, eu tiro o X, agora como você pode fazer isso". Até a falta de idéias.
dmourati

6

Você pode fazer:

netstat -an | egrep 'Proto|LISTEN'

ou simplesmente:

netstat -anl

o que lhe dará todas as tomadas de escuta no sistema.


2
Esta seria a melhor solução (onde "melhor" é definido como "funciona na mais ampla gama de sistemas" (BSD, Linux, AIX, Solaris, acredito HP-UX))
voretaq7

0

TechRepulic tem um artigo decente que você pode encontrar aqui . Possui alguns comandos semelhantes aos listados acima, mas também algumas variações. Também recomendo o uso do nmap para fazer uma varredura de portas do computador em questão, para que você possa ver de uma perspectiva externa quais portas estão abertas e escutando.


Você poderia me dizer por que isso foi rejeitado? Como eu simplesmente forneci um link com muitas das soluções acima aprovadas, juntamente com uma perspectiva diferente de fazer uma verificação externa também. Obrigado.
Eric

8
Não reduzi o voto, mas na falha do servidor, como na maioria das trocas de pilhas, geralmente esperamos que você coloque a resposta aqui, e não apenas um link para outro lugar. Os links desaparecem com o tempo, mas queremos que o conteúdo do SF ainda seja valioso quando os links expirarem.
Zoredache

A única linha de código que o link do artigo acima tem é sudo nmap -T4 -A -v 192.168.1.1/24tudo o que você precisa fazer - faça isso sem detalhes ... É como ler a contracapa de um livro - muitas palavras sem carne.
precisa saber é o seguinte

0

As portas de escuta não são iguais às portas abertas de fora. Você precisa considerar o firewall. Se você tentar um programa como nmapoutro computador, poderá ver as portas abertas não bloqueadas pelo firewall.


0

Prefiro usar:

netstat -antp 
lsof -i 
netstat -lptu
netstat -tulpn
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.