1
gem을 사용하여 Ruby 데몬을 실행하려고합니다.Ruby 데몬을 특정 사용자로 실행하려면 어떻게해야합니까?
사용자 'joe'로 시작되지만 악용되면 'www-data'로 변경해야 작업 할 파일에 액세스 할 수 있습니다.
나는 데몬이 응용 프로그램 클래스 change_privilege
방법이 표시되지만,이 코드 주위를 사용하는 방법을 알아낼 수 없습니다 : 이것은이다대로 www-data
으로 실행되어서는 안
require 'daemons'
Daemons.run(
File.join(File.dirname(__FILE__), 'worker.rb'),
{
:backtrace => true,
:log_output => true,
:dir_mode => :script,
:log_dir => '/tmp',
:monitor => true
}
)
FYI. 사용자 "joe"가 시작한 프로세스는 사용자 ID가 "www-data"로 변경 될 수 없습니다. 루트 사용자가 시작해야합니다. – Doon
당신이 맞습니다, 조는 단지 예일뿐입니다 :) – Val
내가 정상적으로 처리하는 방법은 사용자가 OS 기능을 시작 스크립트에서 setuid하는 것입니다. 유효 ID를 신과 같은 것으로 설정하십시오. – Doon