아마도 루트가 아닌 사용자로 로그인하고 write 를 하면 sudo passwd -d root
루트 로그인이 비활성화됩니다. 즉, 다른 사용자로 로그인하고 su
루트로 전환해야 합니다(또는 그냥 그대로 유지해야 합니다 sudo
).
그러나 이 작업을 시도했을 때 루트 로그인이 비활성화되지는 않았지만 비밀번호 요구 사항이 제거되어 본질적으로 누구나 내 컴퓨터의 루트에 액세스할 수 있게 되었습니다(아주 나쁜).
제가 사용하라고 들은 책은 sudo passwd -d root
CentOS 6.5용으로 쓰여졌습니다. 내 버전은 7.2입니다. 이것이 최근 변경 사항인가요? 아니면 제가 뭔가 잘못 이해한 것인가요?
답변1
로컬 사용자는 항상 루트 권한을 사용하여 단일 사용자 모드로 시스템을 로드할 수 있으므로 로컬 PC에서 루트 로그인을 제한하는 것은 의미가 없습니다. SSH를 통한 루트 로그인을 방지해야 하는 경우 /etc/ssh/sshd_config에 다음을 추가하여 수행할 수 있습니다. PermitRootLogin no
답변2
루트 로그인을 방지하는 가장 쉬운 방법은 break 입니다 /etc/shadow
. 일반 행 /etc/shadow
은 다음과 같습니다.
- 사용자 이름: 귀하의 로그인 이름입니다.
- 비밀번호: 암호화된 비밀번호입니다. 비밀번호 길이는 특수문자/숫자 등을 포함하여 6~8자 이상이어야 합니다.
- 마지막 변경 : 1970년 1월 1일 이후 마지막 비밀번호 변경 이후 경과 일수
- 최소: 비밀번호 변경 사이에 필요한 최소 일수, 즉 사용자가 비밀번호를 변경할 수 있을 때까지 남은 일수
- 최대: 비밀번호가 유효한 최대 일수(사용자가 강제로 비밀번호를 변경한 후)
- 경고: 비밀번호가 만료되기 전까지 사용자에게 비밀번호를 변경해야 한다고 경고하는 일수
- 비활성: 비밀번호 만료 후 계정이 비활성화되는 일수
- 만료: 1970년 1월 1일 이후 계정이 비활성화된 일수로, 로그인이 더 이상 사용되지 않는 절대 날짜를 지정합니다.
(여기에서 인용) 하나 추가할 수 있어요! (느낌표)는 루트 라인의 비밀번호 부분의 해시 함수에서 생성되지 않으므로 /etc/shadow
가능한 모든 비밀번호로 로그인할 수 없습니다. 이제 루트 비밀번호 로그인 방법을 제거했으므로 어느 누구도 어디서든 루트로 로그인할 수 없습니다.비밀번호 사용. (대체 로그인 방법이 있을 수 있습니다.)
더 안전한 방법은 usermod
유틸리티를 사용하는 것입니다: sudo usermod -L root 이렇게 하면 문제가 발생하는 것을 방지할 수 있습니다. 자세한 사용법을 usermod
참조하세요 usermod(8)
.
루트로 로그인하고 싶으면 삭제하세요! 모든 것이 좋아질 것입니다.
답변3
이전 답변에서는 usermod -L
루트를 사용하거나 차단하고 passwd -l
비밀번호 필드를 !로 효과적으로 설정하는 것에 대한 내 의견을 언급했지만 딜레마를 설명하지는 않습니다.
책에서 삭제하면 액세스가 차단된다고 되어 있는 이유가 궁금합니다 passwd -d
. 비밀번호를 공백으로 설정하고 -d를 추가하면 루트가 아닌 모든 사용자가 루트 계정에 액세스하는 것을 방지할 수 있습니다.떨어져서, 루트가 아닌 사용자는 비밀번호 없이 다른 계정으로 이동할 수 없기 때문입니다. 이제 ssh는 기본적으로 루트도 차단하므로 루트 계정은 원격 사용자 및 루트가 아닌 사용자의 관점에서 효과적으로 차단됩니다. (예를 들어, 루트로 작업할 수 있는 유일한 방법은 sudo입니다.)
그럼에도 불구하고 이 책에서는 로컬 콘솔의 모든 사용자가 비밀번호 없이 루트로 로그인할 수 있다는 점을 언급해야 합니다. 이제 대부분의 콘솔은 가상 환경의 일반 사용자가 접근할 수 없지만 루트 비밀번호를 제어할 수 있는 방법을 갖는 것이 항상 현명합니다.
더 현명한 전략은 usermod -L
root 를 사용하거나 차단 하는 것이지만 passwd -L
, 스마트 사용자 정책을 구축하고 테스트하기 전에는 안됩니다.
또 다른 접근 방식은 긴급 상황(예: 단일 부팅 또는 누군가가 실수로 sudo를 망친 경우)에 대비해 정기적으로 변경되고 아무도 이에 대해 알지 못하는 매우 안전한 루트 비밀번호를 설정하는 것입니다( makepasswd
예: 무작위로 생성하여 봉투에 보관). ) 루트 비밀번호를 유용하게 사용할 수 있으며, 그렇지 않으면 루트가 잠겨 있을 때 가상 또는 실제 CD나 펜에서 부팅이 가능합니다.