www-data 사용자에게 scp / ssh 허용


11

Ubuntu 10.04.2를 사용하는 Amazon EC2에 있습니다.

내 웹 폴더는 www-data가 소유하므로 ssh 및 scp의 경우 www-data로 서버에 로그인 할 수 있기를 원합니다.

감사!

내 / etc / ssh / sshd_config에 줄을 추가해도 작동하지 않는 것 같습니다.

AllowUsers www-data

답변:


6

데비안에서 우분투를 기반으로하는 www-data 사용자는 / bin / sh를 기본 쉘로 사용합니다. SFTP를 활성화하려면 /var/www/.ssh/authorized_keys공개 키를 사용 하여 만들 수 있습니다 . 의 권한 /var/www/.ssh은 700이어야하고 authorized_keys 파일의 권한은 600이어야합니다.이 디렉토리에 대한 액세스를 금지하기 위해 http 구성에 다음을 추가하려고합니다.

<Directory /var/www/.ssh>
  Order Deny,Allow
  Deny from all
</Directory>

을 사용하여 www-data 사용자 설정 (home dir, shell 등)을 확인할 수 있습니다 getent passwd www-data.

sshd_config에가 있는지 확인 Subsystem sftp /usr/lib/openssh/sftp-server하고 아마도 설정하고 싶을 것입니다 PasswordAuthentication no.


2

이것은 안전하지 않습니다. 다른 사용자를 사용하여 중간 영역에 업로드하고 cron때때로 작업을 실행하여 차단되는 곳으로 물건을 옮기고 그에 따라 권한을 변경하는 것이 좋습니다.

로 로그온을 실제로 주장 www-data하는 경우 ssh 개인 키를 사용하여이를 수행해야합니다 (AFAIK EC2 인스턴스는 키 인증 만 허용 함). 또한 www-data유효한 쉘이 /etc/passwd있고 유효한 홈 디렉토리 가 있는지 확인해야합니다 .

결국 이 질문에 대한 해결책을 시도해 볼 수도 있습니다 .


나는 그것을하기 위해 ssh 개인 키를 사용할 계획이었습니다. 그러나 cron을 사용하여 파일을 복사하면 cron 스크립트가 파일을 복사 할 때까지 기다려야하기 때문에 조금 느리지 않습니다. 또한 파일을 업로드 할 수 없습니다. 내가 정말로 원하는 것은 www-data의 FTP와 같지만 scp와 같은 것입니다.
ambiguousmouse

내가 제공하는 다른 솔루션은 실현 가능하지만 아이디어는 마음에 들지 않습니다.
coredump

-3

scp에 대해 www-data로 로그인하면 시간이 낭비됩니다.

scp 명령의 경우 ssh2_scp_send파일 전송에 사용 하지 않는 이유는 간단하며 사용자 www-data의 add-ssh 또는 공개 키를 만들 필요가 없습니다.

예를 들어

ssh2_scp_send($connection, '/directory/filename', '/remotedirectory/filename', 0644);

작동해야합니다

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.