문제

PHP에서 VPN 연결 (VPNC 사용)을 시작하려고합니다. 활동이 없으면 원격으로 닫히기 때문에 서버에서 실행할 수는 없기 때문에 이런 식으로해야합니다. 입력하여 명령 줄에서 할 수 있습니다.

/usr/local/sbin/vpnc --natt-mode force-natt

이것은 작동합니다. 암호를 conf 파일에 저장하고 있기 때문에 나에게서 입력이 필요하지 않습니다. 이것은 PHP에서 작동하지 않습니다.

exec('/usr/local/sbin/vpnc --natt-mode force-natt', $output, $result);
echo $result.',';
print_r($output);

출력은 다음과 같습니다.

1,Array
(
)

안전 모드가 꺼져 있고 "/usr/local/sbin"디렉토리는 Open_Basedir를 통해 허용되며 VPNC는 모든 사용자가 실행할 수 있습니다. VPN 연결을 이런 식으로 얻을 수없는 이유는 무엇입니까?

도움이 되었습니까?

해결책

문제는 "sudo"를 사용하여 그것을 부를 필요가 있다는 것이 밝혀졌습니다. VPNC는 루트에서 호출되어야합니다. 여기에 더 많은 정보를 게시했습니다. http://bkwld.com/blog/2009/10/vpn-through-php--n-mt/

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top