SCP를 사용하여 로컬에서 루트 소유 폴더로 복사할 때 사용 권한 "문제"

SCP를 사용하여 로컬에서 루트 소유 폴더로 복사할 때 사용 권한 "문제"

저는 기본 LAMP 상자를 설정하려는 초기 단계에 있습니다. 단순히 작업 환경을 제공하는 것이 아닌 제가 사용할 소프트웨어를 설정하는 것은 이번이 처음이므로 편하게 대해주세요 :)

Apache를 설치했는데, 해당 htdocs 폴더의 권한은 drwxr-xr-x입니다. 원격에서 로컬로 복사할 수는 있지만 작은 디렉토리를 복사하려고 하면 권한이 거부됩니다.

나는 내 자신의 관리자 계정으로 로그인했으며 물론 htdocs는 내 소유가 아니라는 점을 언급해야 합니다.

그래서 나는 순진하게 sudo 명령만 필요하다고 생각했지만 그것은 작동하지 않습니다. 좋습니다. 다음에는 제가 온라인에서 읽은 내용을 바탕으로 774에 대한 권한을 "수정"하겠습니다. 아니요, 그것도 작동하지 않습니다. "세 번째 "사용자"에게 쓰기 액세스 권한을 추가해야 합니까? 이상해 보입니다.

그런 다음 누군가가 그 사람에게 폴더가 루트 소유이므로 파일을 scp하여 원격 호스트의 home/ 디렉터리에 넣은 다음 sudo cp를 apache 폴더로 보내야 한다고 말한 포럼 게시물을 읽었습니다.

이것은 나에게 긴 접근 방식처럼 보이지만 이것을 시도하기 전에 이것이 사실인지, 여기에 모범 사례가 있는지, 그리고 내 가정이 잘못된 것인지 물어봐야 한다고 생각했습니다.

둘째, htdocs에 대한 적절한 권한은 무엇입니까?

저는 아직 초기 단계에 있어서 일부 FTP 액세스를 설정하게 될 수도 있지만 알려주시면 감사하겠습니다.

답변1

이 고양이의 가죽을 벗기는 방법에는 여러 가지가 있습니다. 고려해야 할 사항은 다음과 같습니다.

  1. htdocs나무는 뿌리로 돌아갈 필요가 거의 없습니다. 중요한 것은 그렇다는 것이다.읽을 수 있는Apache 사용자. 문제의 *ix 시스템에 따라 , 또는 다른 것일 수 apache있습니다 www-data. 위에 제공된 기본 파일 모드 drwxr-xr-x(755로 약칭)가 이러한 목적에 이상적입니다.

    그렇다면 문제는 그 나무를 누가 소유해야 하며, 어떤 그룹에 속해야 하는가입니다. 이것으로 충분할 수 있습니다:

    $ sudo chown -R dan.apache /var/www
    

    이는 사용자가 그 아래의 모든 것을( 재귀적으로) dan소유 하고 그룹 도 그에 대한 일부 권한을 가지고 있음을 의미합니다. 그룹으로 실행 하면 트리의 파일을 읽고 그 안의 디렉터리를 변경할 수 있는 충분한 권한을 얻을 수 있으며 이는 대부분의 사이트에 충분합니다./var/www-Rapachehttpdapache

  2. 또 다른 접근 방식은 가지고 있는 모든 권한을 사용하고 scp모형 트리의 소유자에게 간단히 알리는 것입니다 /var/www/.

    mybox$ scp ~/site-mirror/index.html [email protected]:/var/www/htdocs
    

    사용자로 로그인하고 루트 파일의 로컬 복사본을 index.html적절한 위치에 복사합니다. 여기에서 원하는 사용자 이름과 호스트 이름을 사용할 수 있습니다. 나무 소유자의 사용자로 원격으로 로그인할 수 있으면 됩니다. 그렇게 할 수 없다면 옵션 #1을 사용하는 것을 고려하고 최소한 직접 보관할 수 있는 방식으로 설정하십시오.example.comwww/var/www/scp

    만약 너라면사전 공유 키 설정SSH를 사용하면 비밀번호를 제공할 필요조차 없습니다.

    scp웹사이트 개발 에는 사용하지 않는 것이 좋습니다 rsync.

    mybox$ rsync -ave ssh --delete ~/site-mirror [email protected]:/var/www/htdocs
    

    ~/site-mirror그러면 myboxon(로컬 작업 컴퓨터)의 내용이 /var/www/htdocson으로 미러링되고 example.comuser 로 로그인됩니다 www. 원시 파일보다 원시 파일을 사용하면 변경되지 않은 파일을 복사하고 다시 복사할 필요가 없다는 rsync장점이 있습니다. scpRsync 알고리즘은 변경 사항을 계산하고 해당 변경 사항만 보냅니다.

답변2

언뜻보기에 귀하의 문제는 다음과 같을 것입니다.774화권한 설정: 기본적으로 디렉토리를 소유자와 그룹이 읽고, 쓰고, 실행할 수 있도록 설정했습니다.하지만 강제할 수는 없다다른 사람들을 위해.

즉, 소유자나 그룹이 아닌 사람은 cd디렉토리에 들어갈 수 없고 그 안에 있는 파일에 접근할 수도 없습니다.

여가 시간에 파일 권한에 대해 읽어 보시기 바랍니다. 이제 권한을 다음과 같이 설정해 보세요.755화문제가 해결되는지 확인하세요.

추가 크레딧: 설문조사동기화그리고스폴리...그리고 기억하세요. 사용자는 다음 작업만 수행하면 됩니다.읽다소스에서, 그러나 거기에 있어야합니다쓰다목적지에 도착하세요.

관련 정보