자체 기록이 있는 다중 루트 액세스

자체 기록이 있는 다중 루트 액세스

실제로 로그인한 사용자의 공개 키 지문을 가져와 어느 사용자가 루트로 로그인했는지 식별하고 싶습니다. 그러면 "/root/[FINGERPRINT]/와 같은 하위 폴더에 각 사용자에 대한 bashrc를 만들 수 있습니다. bashrc". 어떻게 해야 하나요? 우리는 sudo를 사용하고 싶지 않습니다! ! ! !

sshd의 LogLevel을 VERBOSE로 전환하면 auth.log/sercure에서 지문을 볼 수 있지만 도움이 되지 않을 것 같습니다.

우리는 CentOS 6/7/8을 사용하고 있습니다

답변1

질문에 답하십시오(다른 사람들이 이것이 바람직한지에 대해 언급했습니다).

environment="RUSER=Chris"Chris의 키 앞에, environment="RUSER=Pete"Pete의 키 앞에 오도록 ~root/.ssh/authorized_keys를 변경합니다 . 선은 다음과 같아야합니다

environment="RUSER=Pete" ssh-rsa AAAAB[snipped] pete@somewhere

다음 줄을 포함하도록 sshd 구성 파일(일반적으로 /etc/ssh/sshd_config)을 편집합니다.

PermitUserEnvironment yes

환경 처리를 활성화합니다. sshd다시 읽는 구성 파일을 가져옵니다 (저는 ps -ef | grep sshd\ -DPID를 찾은 다음 이를 사용하여 kill -HUP PID데몬이 파일을 다시 읽도록 했습니다.

이 시점에서 ssh를 통해 로그인하면 RUSER로그인에 사용할 키를 결정하는 데 사용할 수 있는 환경 변수가 있습니다.

이제 환경 변수를 설정할 수 있으므로 쉘 시작 파일을 주의 깊게 검토하여 환경 변수의 예상치 못한 값이 바람직하지 않은 효과를 유발하지 않는지 확인해야 합니다.

이 정보는 다음 위치에 있습니다.SSHD(8)매뉴얼 페이지의 AUTHORIZED_KEYS 파일 형식 섹션.

관련 정보