proftpd - localize o ip do cliente no servidor enquanto a conexão está viva

2

Eu preciso obter o IP do cliente de uma conexão específica do proftpd no linux (onde eu sei o pid). Eu procurei no / proc / dir, mas não consegui obter nenhuma informação sobre o IP.

Alguém conhece um método de como obter ou onde encontrar essa informação?

p.s. desculpe, mas eu esqueci de mencionar que tudo isso deve acontecer dentro de uma implementação do FUSE, então é possível obter essa informação sem usar um programa externo ou há talvez uma biblioteca que poderia me ajudar a fazer isso?

    
por Castaglia 24.10.2012 / 11:01

3 respostas

0

Como você adicionou posteriormente que você quer fazer isso a partir do programa C seria perguntar diretamente ao Proftpd. Basta definir sua instância do Proftpd para salvar arquivo do placar . Você pode então analisar esse arquivo diretamente (o que fez você depender do formato do arquivo interno do Proftpd), ou você pode analisar a saída do comando ftpwho -v -o oneline , que é o comando do Proftpd usando o arquivo scoreboard para gerar diferentes tipos de informações sobre usuários conectados. p>     

por 24.10.2012 / 11:42
0

Verifique a ferramenta fuser . Permite identificar arquivos e sockets abertos por um processo. Esse deve ser um bom ponto de partida.

    
por 24.10.2012 / 11:06
0

Experimente o comando netstat -tnp , ele mostrará todas as conexões TCP + IP + PID do processo por trás dessa conexão. Você também deve ser capaz de encontrar o IP do cliente nos arquivos de log do Proftpd.

    
por 24.10.2012 / 11:22