웹 서버 모범 사례 : 디렉토리 구조 및 보안


15

Ubuntu 서버를 웹 서버로 사용하고 싶지만 설정을위한 모범 사례를 따르고 싶습니다. 최고의 위치에 디렉토리를 설정하고 해당 폴더에 적절한 보안을 구성하는 방법을 이해하고 싶습니다. 서버로 FTP를 전송하고 파일을 웹 폴더로 푸시 할 수 있기를 원하므로 PureFTPd 사용자가 웹 폴더 내에서 파일 / 디렉토리를 조작 할 수 있도록하는 방법을 이해하고 싶습니다.


serverfault.com 에서이 답변 을 찾았으며 매우 유용합니다. 많은 의견이이 주제를 다루는 데 도움이됩니다.
MystaMax

답변:


5

내 서버에서 내가 한 일은 사용자가 sftp로 일을 바로 할 수 있도록하는 것 /var/www입니다.

sudo chgrp -R www-data /var/www
sudo usermod -aG www-data $(whoami)
sudo chmod -R 775 /var/www/*
sudo chmod 2775 /var/www

그러면 사용자는 / var / www 및 모든 하위 디렉토리에 대한 그룹 소유권이있는 그룹으로 이동하고 그룹 쓰기 액세스를 허용하도록 / var / www의 모든 항목을 반복적으로 설정하고 / var / www 디렉토리에 setgid 비트를 설정합니다 나중에 / var / www에서 생성 된 모든 파일은 그룹을 작성자의 기본 그룹으로 설정하지 않고 동일한 그룹 소유권을 유지합니다.


이 방법은 좋은 방법이지만 웹 서버 자체가 이미 실행중인 그룹과 다른 그룹 을 만드는 경우에만 가능합니다 www-data. 결과적으로 웹 서버 스크립트가 손상되면 아래 파일 /var/www이 변경 될 수 있습니다. www-data다음과 같이 변경하십시오 (및를 사용 하여 web-users해당 그룹을 먼저 생성하십시오 sudo addgroup web-users).
Kees Cook

2

이것은 매우 일반적인 질문입니다.

분명히, 당신은 루트로 웹 서버를 실행하고 싶지 않습니다. 그러나 우분투 설치는 이미 올바른 방법으로 수행합니다.

또한 아파치 웹 사이트에는 디렉토리를 올바르게 구성하는 방법에 대한 팁이 있습니다. .

ftp와 관련하여. 네트워크를 통해 사용자 이름과 비밀번호를 일반 텍스트로 보내지 않는 보안 ftp 서버를 사용하려고합니다. Ubuntu 도움말 페이지에는 그러한 ftp 서버를 설정하는 방법이 있습니다.


나는 정보가 고맙다는 것을 알고, 그것이 일반적인 것이라는 것을 알고 있습니다.
JPrescottSanders

0

서버를 웹 서버로 사용하는 여러 사용자와 함께 우분투 서버 가 있으면 웹 파일을 전역에 저장하는 위치 /var/www때문에 디렉토리를 폐기합니다 /var/www. /etc/skel디렉토리를 업데이트하고 symlink를 사용 하여 publicprivate폴더를 추가하고 www -> public모든 가상 호스트 DocumentRoots를 업데이트하여/home/<user>/public .

/var/www여러 사용자 수준 폴더와 파일을 넣을 곳으로 보이지 않습니다 . 이것이 /home/디렉토리가 설계된 것입니다! 경로와 디렉토리 구조를 깨끗하게 유지합니다.

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