보안 관점에서 가장 좋은 방법이 무엇인지 궁금합니다. 단일 사용자 시스템의 /etc/sudoers 파일에 사용자를 추가해야 할까요, 아니면 그냥 %sudo를 그대로 두어야 할까요?
이로 인해 문제가 발생합니까? 아니면 루트 권한이 필요한 작업을 수행할 때마다 루트로 콘솔을 열어야 합니까?
저는 데비안 9.1과 KDE를 사용하고 있습니다.
답변1
보안 관점에서 볼 때 "sudoers" 파일에서 개별 사용자를 정의하거나 "sudo"와 같은 그룹에 추가하는 것에는 차이가 없습니다. 그러나 기본이자 모범 사례는 sudo
"sudo"에 게시해야 하는 사람을 추가하는 것입니다. 그룹 또는 다른 분포의 "바퀴".
언제 "sudoers" 파일에 개별 사용자를 추가해야 합니까? 예를 들어 특정 사용자에게 특정 권한이 필요한 경우 암호를 제공하지 않고 사용자 "john"으로 특정 컴퓨터에서만 특정 명령을 실행할 수 있습니다.
이제 많은 사용자가 있고 모두 동일한 기본 sudo
권한이 필요하다고 가정합니다. sudoers 파일에 하나씩 추가하는 것은 비논리적입니다. 그렇죠? 우리가 해야 할 일은 그것들을 모두 "sudo" 그룹에 추가하는 것입니다.
그러나 귀하의 경우 사용자가 한 명뿐이면 아무런 차이가 없습니다. 다음을 사용하여 명령을 실행하려면 sudo
"sudo" 그룹에 자신을 추가하십시오 .
sudo gpasswd -a username sudo
답변2
이는 보안 문제가 아닙니다.
sudo
이는 관리자가 루트 셸을 사용하지 않고 루트 액세스 권한을 얻는 빠른 방법일 뿐입니다.
루트 셸을 항상 사용하는 것은 다음과 같은 이유로 위험합니다.
루트로 로그인했습니다 = 모든 응용 프로그램은 루트 권한으로 실행됩니다. 이제 바이러스가 어디서나 액세스할 수 있으므로 Firefox, Flash, OpenOffice 등의 모든 취약점으로 인해 시스템이 손상될 수 있습니다. 예, Ubuntu/Linux에는 바이러스가 거의 없지만 보안이 뛰어나고 권한이 없는 기본 사용자가 있기 때문이기도 합니다. 이것은 단지 바이러스에 관한 것이 아닙니다. 응용 프로그램의 작은 버그로 인해 일부 시스템 파일이 삭제되거나...
루트로 로그인하면 모든 것을 할 수 있습니다. 묻지 않아도 됩니다! 이 디스크를 포맷하시겠습니까? 좋아, 당신은 루트이고 당신이 무엇을 하고 있는지 알고 있기 때문에 클릭 한 번이면 됩니다.
따라서 sudo
루트 액세스가 필요할 때 루트 액세스를 얻기 위해 사용하는 명령일 뿐이며 sudo
루트 셸을 영구적으로 사용하지 않도록 만들어졌습니다.
답변3
좋아요, 이제 설치 중에 루트 계정을 만들지 않는 것이 가장 좋다는 것을 이해했습니다. 설치 프로그램의 지침을 따르고 루트 비밀번호를 비워 두십시오. (나중에 sudoers 파일을 편집할 필요가 없습니다.) 그런 다음 루트 권한이 필요한 모든 항목에 및 명령을 사용하십시오 sudo
.sudo -i