2014-02-06 3 views
1

Apache 사용자 'nobody'에 대해 SSH 키를 생성해야합니다. 나는 PHP 스크립트는 어떤 망할 놈의 Bitbucket에서 REPO를 끌어 명령을 실행할 수 있도록 노력하고CentOS에서 Apache 사용자 용 SSH 키 생성

내가 PHP 스크립트로 문제가 있어요 그러나 (http://brandonsummers.name/blog/2012/02/10/using-bitbucket-for-automated-deployments/)

아파치를 실행하고 사용자가 보인다 '아무도 '. 따라서 SSH를 통한 연결에는 실패합니다. 명령 줄을 통해 스크립트를 실행하면 아파치 사용자가 '루트'로 보이고 정상적으로 작동합니다.

PHP 스크립트는 Git을 실행하고 SSH를 사용하여 BitBucket에 액세스해야하지만, 서버에있는 SSH 키는 'root'사용자를위한 것입니다.

비대화 형 사용자를위한 공개 및 비공개 SSH 키를 만들려면 어떻게합니까?

[email protected] [~]# lsof -i | grep :http 
httpd  16942  nobody 5u IPv4 23590964  0t0 TCP *:http (LISTEN) 
httpd  16942  nobody 6u IPv4 23590970  0t0 TCP *:https (LISTEN) 
httpd  16944  nobody 5u IPv4 23590964  0t0 TCP *:http (LISTEN) 
..... and more 
+0

ssh 클라이언트에게 키를 사용하도록 말할 수 있습니까? ssh를 실행하고 있다면 -i 인수를 전달하여 ID를 지정할 수 있습니다. 그런 다음 키를 생성하고 사용자가 액세스 할 수있는 장소에 키를 넣을 수 있습니다. –

+0

ehm ... 그것은 SSH 클라이언트가 아니며, Git 클라이언트입니다. – Martin

+0

id_rsa 파일과 함께 /home/nobody/.ssh 디렉토리를 만들 수 있습니까? idk. – neubert

답변

3
mkdir /nobody/.ssh 
chown nobody -R //nobody/.ssh 
chmod 777 /nobody/.ssh 
ssh-add /nobody/.ssh/id_rsa 

sudo -u nobody ssh-keygen 
(when prompted specify save path in /nobody/.ssh) 

문제, 그렇지 않으면에만 작동 키 암호는 키 체인에 저장해야하는 경우가있다.