Tente criar um "su" personalizado no Ubuntu 20.04, mas inicie a partir das fontes originais para teste (sem alterações). Correr
apt-get source login
Eu tenho o diretório shadow-4.8.1. Correr
./configure
make
e tente correr
src/su testuser
Não funciona! Erro de falha de autenticação. Execute o binário original do sistema operacional:
/usr/bin/su testuser
e funciona bem! O que é isso?
Acho que alguns módulos/params estão faltando no processo de construção.
Indo para buildlog do pacote shadow.
https://launchpad.net/ubuntu/+source/shadow/1:4.11.1+dfsg1-2ubuntu1/+build/23780688
e veja a seguir ./configure string
./configure --build=x86_64-linux-gnu --prefix=/usr --includedir=\${prefix}/include --mandir=\${prefix}/share/man --infodir=\${prefix}/share/info --sysconfdir=/etc --localstatedir=/var --disable-silent-rules --libdir=\${prefix}/lib/x86_64-linux-gnu --runstatedir=/run --disable-maintainer-mode --disable-dependency-tracking --disable-shared --without-libcrack --mandir=/usr/share/man --with-libpam --enable-shadowgrp --enable-man --disable-account-tools-setuid --with-group-name-max-length=32 --without-acl --without-attr --without-su --without-tcb
Veja lá:
--without-su
Tente esta string ./configure e realmente faça todos os binários sem "su". Tente substituí-lo em
--with-su
E o novo binário também não funciona. Falha de autenticação. :(
Duas perguntas sobre isso.
- Onde posso encontrar o buildlog do "su" original?
- Por que "su" recém-criado não pode ver o usuário real do sistema operacional, que existe em /etc/shadow|passwd?