일회용 sudo 계정을 가질 수 있는 방법이 있나요?
내 사용 예는 다음과 같습니다.
컴퓨터에 대한 원격 SSH를 허용하지 않는 Ubuntu 스테이션이 있습니다. 이 기기는 일반적으로 공용 컴퓨터로 사용됩니다. 하지만 때로는 SMS나 IM 통신 등을 기반으로 특정 사람(개인적으로 아는 사람)에게 루트 액세스 권한을 부여하고 싶을 때가 있습니다. 물론, 그들에게 전체 루트 액세스 권한을 부여한다는 의미는 아니며 단지 특정 명령을 사용하지 못하도록 제한하는 것뿐입니다 apt-get
. 나는 그들이 에 글을 쓰는 것을 허락할 생각이 없습니다 /etc
.
하지만 분명히 루트 비밀번호를 공유하고 싶지 않습니다. 그리고 저는 이러한 사람들이 영원히 루트 액세스 권한을 갖는 것을 원하지 않으며 수동으로 계정을 삭제하거나 비밀번호를 변경하고 싶지도 않습니다.
그래서 (충분히 큰) 루트 액세스 계정을 만들고 그 암호를 내 노트북이나 휴대폰에 저장하는 것을 고려했습니다. 누군가에게 루트 액세스 권한을 제공해야 하는 경우 sudo 비밀번호 캐시 시간 초과가 끝나면 삭제될 계정의 로그인 정보를 그 사람에게 보냅니다.
이것이 좋은 접근 방식이라고 생각하십니까? 그렇다면 제거 스크립트를 어디서 어떻게 설정합니까?
답변1
일회용 sudo 같은 건 본 적이 없는데 sudo
일회용 비밀번호를 설정하면 그래도 한 번은 받을 수 있어요. Linux Journal에 다음과 같은 제목의 기사가 있습니다.OTPW를 사용하여 일회용 비밀번호 인증 구성, 이를 수행하는 다양한 방법을 다룹니다. 그들은 이를 촉진하기 위해 3가지 패키지에 대해 논의했습니다.
나는 그 중 어떤 것도 사용해 본 적이 없기 때문에 지침이나 실제 사용 경험을 제공할 수는 없지만 LJ 기사와 내가 가장 좋아하는 리소스에는 시작하는 데 필요한 모든 것이 들어 있는 것 같습니다.
답변2
사용자에게 루트로 임의의 명령을 실행할 수 있는 권한을 부여하면 해당 사용자는 백도어를 심을 수 있습니다. 비록 설치가 쉽지는 않지만루트 키트발견되지 않고 다른 사람이 어려운 작업을 수행했으며 미리 만들어진 루트킷을 다운로드하여 설치할 수 있습니다. 따라서 보안 관점에서 일회성 루트 액세스는 영구 루트 액세스보다 더 이상 제한되지 않습니다.
사용자를 신뢰하는 경우 해당 사용자에게 sudo 액세스 권한을 부여한 다음 해당 액세스 권한을 취소하세요. 사용자를 신뢰할 수 없다면 sudo 액세스 권한을 부여하지 마세요.
사용자에게 특정 명령을 실행할 수 있는 권한을 부여하려는 경우 시간 제한이 있는 sudo 액세스가 적합합니다. 그러나 일회성 액세스를 허용하는 것은 좋지 않습니다. 특정 시점에 액세스 권한을 부여한 다음 해당 액세스 권한을 취소하세요. 예를 들어, sudoers 파일에 행을 추가하고 해당 행을 제거하도록 at 작업을 설정하여 24시간 액세스 권한을 부여할 수 있습니다.