현재 엔지니어링 회사 용 Linux 기반 단일 보드 컴퓨터에서 작업하고 있으며 보드 내에서 호스팅되는 로컬 구성 웹 사이트를 업데이트하는 업무를 담당하고 있습니다. 이 구성 서버의 요점은 사용자가 웹 브라우저를 통해 보드에 연결하고 보드 내의 설정을 수정할 수 있도록하는 것입니다.루트 심볼릭 링크를 생성하기위한 PHP exec 권한
현재 만들려는 설정에는 보드의 하드웨어 시계의 시간대 설정이 포함됩니다. 안타깝게도 보드가 시간대를 처리하는 방법은/usr/share/zoneinfo /에있는 파일과/etc/localtime 사이에 시스템 링크를 설정하는 것입니다.
내 문제는 내가 웹 사이트에서 다음 명령을 실행해야한다는 것입니다 :
ln -s /usr/share/zoneinfo/Etc/GMT$1 /etc/localtime
경우 $ 1은 + 또는 - 숫자 하였다. 이들은 웹 사이트의 드롭 다운으로 생성됩니다.
웹 사이트의 PHP에서이 명령을 실행하려고하면 주요 문제가 발생합니다. exec 명령의 응답을 잡아 냄으로써 symlink를 만들거나 수정할 충분한 권한이없는 것으로 나타났습니다. 나는 bash 스크립트를 만들고 PHP에서 실행하는 접근법을 시도했다. 또한 PHP 기반의 C 실행 파일을 실행 해 보았습니다.
주의 사항 : 사용자 암호는 임의로 생성되며 sudo는 포함 된 Linux 패키지에 포함되어 있지 않습니다.
내 목표는 보안 문제로 인해 Apache 서버를 루트로 실행하지 않는 것입니다. 명령을 실행하기위한 개별 스크립트 (임시) 권한을 줄 수있는 방법이 있습니까?
sudo는 스크립트에 임시 권한을 부여하는 방법입니다. 임베디드 설치를 추가하십시오. – lanzz
대부분의 임베디드 시스템에서 사용 된 suexec 헬퍼는 –