요구사항을 비활성화할 수 있나요?

요구사항을 비활성화할 수 있나요?

다음을 사용하여 배포 스크립트를 설정하려고 합니다.카피스트라노 한 단계에서 cap deploy:setup스크립트는 내 서버에 연결하고 디렉터리를 생성하는 명령을 실행하려고 시도합니다. 그런 다음 오류가 표시됩니다.msudo: sorry, you must have a tty to run sudo

내 서버에서 requiretty를 비활성화하는 제안된 솔루션이 있습니다.https://unix.stackexchange.com/a/49078/26271

이것이 안전한지 알고 싶습니다.

답변1

requiretty서버의 보안 이점은 매우 제한적입니다. 루트가 아닌 일부 코드(예: PHP 스크립트)가 악용되는 경우 이 requiretty옵션은 악용 코드가 실행되지 않음을 의미합니다 sudo.

공격자가 루트 액세스 권한을 얻을 수 있는 다른 방법이 있을 수 있으며 물론 공격자는 여전히 사이트를 손상시킬 수 있지만 공격자에게 루트 액세스 권한을 부여하지 않으면 다른 사용자로 실행되는 다른 서비스가 계속해서 정상적으로 작동하고 공격자는 루트 권한을 얻을 수 없습니다. 시스템 로그는 삭제할 수 없습니다. 귀하의 규칙 sudo중 어느 것도 이를 수행하지 않는 경우디렉토리 생성과 같은 위험한 것,이건 문제가 되지 않습니다.

더욱이, 더욱 끔찍하게도 requirettytty를 생성하는 데는 어떤 권한도 필요하지 않습니다.예상되는. 따라서 이 기능을 끄는 것이 좋습니다 requiretty. 그 자체로는 보안상의 이점을 제공하지 않습니다. 사용자가 실행할 때 약간의 감사 가능성 이점을 제공하지만(로그를 통해 호출한 사람 sudo과 호출이 어디서 왔는지 더 잘 이해할 수 있으므로) 백그라운드 작업에서 실행할 때는 그렇지 않습니다.

관련 정보