Várias instâncias do sshd usando diferentes configurações do PAM

3

Eu configurei vários daemons ssh abertos em portas diferentes e gostaria que eles usassem diferentes perfis de configuração do PAM. Isso é possível? Tanto quanto eu entendo PAM determina o nome do arquivo de configuração de dentro do binário daemon - então eu preciso recompilar meu sshd apenas para tê-lo usar um outro arquivo de configuração PAM!

    
por HBruijn 01.03.2010 / 09:04

1 resposta

4

Infelizmente, o nome do serviço escolhido pelo programa é codificado. Você provavelmente terá que modificar a fonte sshd e re-compilar.

A razão pela qual eles fazem isso em vez de apenas passar ARGV [0] como o nome do serviço é por razões de segurança. Se o arquivo pam.d / foi escolhido com base em ARGV [0] (o nome do programa), então, o atacante poderia vincular / hardlink / cp esse programa a um nome de sua escolha. Um que tinha menos restrições dentro dele é o pam.d / file associado.

Procure na fonte por uma string como:

int pam_start(

===================

ATUALIZAÇÃO:

auth-pam.h mostra o nome do serviço definido para:

__progname

Isso significa que você pode simplesmente alterar o progname e procurar por um arquivo pam com o novo nome. Não é uma boa prática de segurança e estou meio que surpreso com isso. Talvez alguém saiba de algo que eu não saiba ... já que os caras do OpenBSD são muito mais inteligentes do que eu. : p

ATUALIZAÇÃO 2:

Confirme que o nome de serviço do PAM está definido para o nome de base fazendo o seguinte no console:

cp sshd para sshd2:

[root@cent ~]# cp /usr/sbin/sshd /usr/sbin/sshd2

pare o sshd atual e inicie o novo:

[root@cent ~]# /etc/init.d/sshd stop
[root@cent ~]# /usr/sbin/sshd2

Inicie o strace no novo sshd e tente um login ssh de outro comp.

[root@cent ~]# strace -fp 5835 -e trace=open -o ssh_results&

Encontre qual arquivo pam:

[root@cent ~]# grep -i pam.d ssh_results 
6116  open("/etc/pam.d/sshd2", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)

sshd2 (basename)

    
por 01.03.2010 / 09:20