Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
Linux: CrunchBang (fantástico)!
Por edps
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha


Dica

AIX - Identificando portas abertas
Linux user
Publicado por Andre Luiz Facina em 16/08/2010

Login: netbug, 172363 pontos
[ Hits: 2812 ]

AIX - Identificando portas abertas

É muito importante conhecer o ambiente que está sendo administrado. Em se tratando de servidores, muitas vezes temos em um ambiente muitas portas abertas (em modo listen), e é importante saber qual processo está ouvindo em uma determinada porta, por questões de segurança e até em situações de troubleshooting.

A dica de hoje é identificar, no AIX, qual processo está sendo executado em uma porta específica.

Método 1 - Usando os comandos netstat e rmsock

Protocolo TCP:

# netstat -Aan |grep *.1334
f1000e0002b753b0 tcp4       0      0  *.1334             *.*                LISTEN

# rmsock f1000e0002b753b0 tcpcb
The socket 0x2b75008 is being held by proccess 5701822 (writesrv).

# ps -ef |grep 5701822
root  5701822  1507536   0   Jun 10      -  0:00 /usr/sbin/writesrv

Como podem ver o processo writesrv está sendo executado na porta 1334.

Protocolo UDP:

# netstat -Aan |grep *.514
f1000e0002a67e00 udp4       0      0  *.514              *.*

# rmsock f1000e0002a67e00 inpcb
The socket 0x2a64c08 is being held by proccess 5308580 (syslogd).

# ps -ef |grep 5308580
root  5308580  1507536   0   Jun 10      -  0:36 /usr/sbin/syslogd

A porta 514 UDP está sendo utilizada pelo processo do syslogd.

Método 2 - Utilizando os comandos netstat e kdb (kernel debuger)

# netstat -Aan |grep 1334
f1000e0002b753b0 tcp4       0      0  *.1334             *.*                LISTEN

# kdb
(0)>
(0)> sockinfo f1000e0002b753b0 tcpcb

[... A saída do comando kdb é bem detalhado, e por isso foi truncado. O importante para nós é a ultima linha, como mostrado abaixo ... ]

proc/fd: 87/3
proc/fd: fd: 3
              SLOT NAME     STATE      PID    PPID          ADSPACE  CL #THS

pvproc+015C00   87*writesrv ACTIVE 05700BE 01700D0 0000001190239480   0 0001

O importante é saber o PID do processo, que está em hexadecimal na coluna PID.

Para converter de hexadecimal para decimal, basta utilizar o comando hcal, dentro do prompt do kdb. Como mostrado abaixo.

(0)>
(0)>
(0)> hcal 05700BE
Value hexa: 005700BE          Value decimal: 5701822
(0)> quit

De volta ao shell, verificar qual programa pertence ao PID 5701822.

# ps -ef |grep 5701822
root  5701822  1507536   0   Jun 10      -  0:00 /usr/sbin/writesrv

O mesmo procedimento pode ser utilizado para portas UDP, sempre trocando o parâmetro tcpcb por inpcb.

Dica válida para AIX versões 5.3 e 6.1.

André Facina


Outras dicas deste autor

Leitura recomendada
   Dica Linux recomendada Eu quero ser processado pela SCO e você?
   Dica Linux recomendada Instalando Mercury no Ubuntu Feisty
   Dica Linux recomendada Linux KNOPPIX!, não precisa instalar... é só baixar e usar!
   Dica Linux recomendada Download de palestra - FISL 10: Biometria em Linux, existe?
   Dica Linux recomendada Certificação ou curso superior, qual escolher?

Comentários
Nenhum comentário foi encontrado.

Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.