>

일부 명령을 sudo로 실행해야하는 스크립트가 있습니다. 나는 sudo를 실행하는 것이 어설트 것을 보았다 내부 스크립트는 나쁜 생각이므로 전체 스크립트를 sudo로 실행하는 것이 좋습니다 (그리고 편의를 위해 sudoers를 수정하는 것이 좋습니다, 여기에 설명 된 )

생각해 보았는데 실제로 스크립트 내에서 sudo 명령을 실행해야하는 이유를 알 수 없습니다. 스크립트와 디렉토리가 모두 루트에 의해 소유되어 있다고 가정하면 보안 관점에서 차이를 볼 수 없습니다. (그렇더라도 전체 스크립트를 sudo로 실행하는 것은 덜 위험하지 않습니다). 여기에 뭔가 빠졌습니까?

  • 답변 # 1

    sudo 를 실행  무슨 일이 일어날 지 모르고 정말로 필요한지 알기 때문에 나쁜 생각입니다.

    비밀번호 프롬프트가 표시됩니까? 그렇다면 누가 암호를 입력합니까? 명심하십시오 : 스크립트는 사람에 의해 쉘에서 실행될 수 있지만 백그라운드에서, 시작시, cron에 의해 또는 터미널을 사용할 수없는 다른 상황에서도 실행될 수 있습니다.

    사용자가 프롬프트가 표시되면 비밀번호를 입력합니까? 개인적으로, 나는 암호를 묻는 스크립트를 즉시 중단 할 것입니다. 또한 스크립트에서 많은 출력을 생성하면 프롬프트가 표시되지 않을 수도 있습니다.

    와이즈 비즈  사용 가능하고 구성되어 있습니까? 현재 사용자가 sudo 를 실행할 수 있습니까 ? 이 질문 중 하나에 대한 대답은 '아니요'일 수 있으며,이 경우 사용자에게 스크립트에 필요한 권한을 부여하는 방법을 선택하도록해야합니다.

    슈퍼 유저 여야합니까? 어쩌면 스크립트에 루트 권한이 필요하지 않도록 시스템을 구성했을 수도 있습니다.이 경우 sudo  완전히 불필요하며 매우 혼란 스러울 수 있습니다.

    나에게필요한 권한과 권한 부여 방법을 결정하도록하십시오

    . sudo 를 실행  루트이고 권한을삭제하려는 경우 좋은 아이디어 일 수 있습니다. 예를 들어, 루트가 소유 한 파일을 연 다음 즉시 sudo 로 전환 할 수 있습니다  보안상의 이유로. 그래도 문제는 nobody:nogroup  사용할 수 없거나 구성되어 있지 않을 수 있습니다.

    sudo

  • 이전 shell script - 프로세스가 파일을 건드리지 않으면 경고 알림 만들기
  • 다음 shell - 디렉토리에서 파일 이름의 하위 문자열을 바꿉니다