GUI, 셸 또는 SSH를 통해 내 계정에 로그인 할 때 사용하는 암호와 다른 암호를 사용하여 사용자를 sudo 상태로 올리려고합니다. 이것이 가능한가?
편집 :
루트 암호를 설정하면 루트로 로그인 할 수 있기 때문에 좋은 방법이 아닙니다. 시스템 전체의 루트 암호보다는 사용자 별 sudo 암호를 선호합니다.
답변
남자 sudoers에서 :
rootpw          If set, sudo will prompt for the root password instead of the
                password of the invoking user.  This flag is off by default.
runaspw         If set, sudo will prompt for the password of the user defined
                by the runas_default option (defaults to root) instead of the
                password of the invoking user.  This flag is off by default.
또는 ssh를 통한 비밀번호 기반 로그인을 완전히 금지 할 수 있습니다. 원격 로그인을 위해 암호문 암호화 키가 필요합니다. 그런 다음 sudo의 비밀번호를 자유롭게 사용할 수 있습니다. 관련 옵션은
남자 sshd_config에서
 PasswordAuthentication
         Specifies whether password authentication is allowed.  The default
         is “yes”.
답변
sudoers man 대신 이것을 찾고 있습니까?
   targetpw        If set, sudo will prompt for the password of the user
                   specified by the -u option (defaults to root) instead of the
                   password of the invoking user.
답변
SSH를 통해 암호 로그온을 비활성화하고 암호를 추측하기 어려운 위치에서 공개 키 로그온을 허용하는 방법은 무엇입니까? 그러면 로컬 비밀번호가 더 짧아지고 sudo가 사용할 수 있습니다.
그 외에는 /etc/pam.d/sudo다른 (또는 추가) 모듈을 사용 하도록 구성 pam_dialpass해야합니다. 언뜻보기에 필요한 것을 허용 할 수 있습니다.
한 암호와 다른 암호를위한 LDAP 구성을 구성 할 수도 있습니다. 그것은 당신이 얼마나 많은 변화를주고 싶어하는지, 어떤 모듈을 사용할 수 있는지 등에 달려 있습니다.
답변
솔루션 1 : newgrp
유스 케이스를 해결하는 간단한 방법 :NOPASSWD은 그룹 및 그룹 passwd와 함께 사용 하는 것입니다.
sudoers에 줄을 추가하십시오 :
%rudo   ALL=(ALL:ALL) NOPASSWD:ALL
비밀번호로 보호 된 그룹을 작성하십시오.
groupadd rudo
gpasswd  rudo # Enter passwd
이제 권한이없는 사용자로 로그인하면 ( rudo그룹 에없는 것으로 가정 ) 그룹에 로그인 rudo하면 암호를 입력하라는 메시지가 표시됩니다.
login user
newgrp rudo
이제 sudo그룹에 로그인 한 상태에서 비밀번호없이 실행할 수 있습니다 .
해결 방법 2 : runaspw
더 나은, 아마도 더 안전한 방법이 사용을 할 수 있습니다 runaspw. 옵션 runaspw과 연결되어 runas_default있으므로 해당 옵션도 추가해야합니다.
이미 기본 %sudo그룹 항목 이 있다고 가정합니다 .
%sudo   ALL=(ALL:ALL) ALL
sudoers 파일에 다음 행을 추가하십시오.
Defaults:%sudo  runas_default=sudo
Defaults:%sudo  runaspw
이제 sudo비밀번호를 가진 새로운 사용자를 추가하십시오 :
useradd sudo -d /nonexistent -s /usr/sbin/nologin -MNr
passwd sudo
이제 sudo 그룹 사용자에게 sudo 사용자의 암호를 입력하라는 메시지가 표시되지만 sudo 그룹의 사용자 만 sudo를 수행 할 수 있습니다 (위의 그룹 솔루션과 달리 그룹의 모든 사람 또는 그룹 passwd가있는 sudo가 가능).
사소한 문제는 이제 기본 runas 사용자 sudo이므로 root로 sudo하려면 root를 명시 적으로 지정해야합니다.
sudo -u root <cmd>
그러나 별칭 ( alias sudo='sudo -u root') 또는 간접 sudo 명령 을 정의하기에 충분합니다 .