인터넷을 통해서도 접속할 수 있는 다목적 홈 서버 시작하기: 미디어 스트리밍, 게임 서버, 파일 저장/백업

인터넷을 통해서도 접속할 수 있는 다목적 홈 서버 시작하기: 미디어 스트리밍, 게임 서버, 파일 저장/백업

시작하기 전에 내가 이 주제를 검색했다고 말하고 싶습니다. 다목적 홈 서버에 대한 내 질문에 대한 답변이 결과에 없는 것 같습니다.

모두들 안녕!

다음과 같은 목적으로 홈 서버를 구축하고 싶습니다.

  • 파일/미디어에 액세스할 수 있는 PC의 백업으로 저장
  • 해당 미디어를 연결된 특정 컴퓨터나 서버에 연결된 TV로 스트리밍합니다.
  • 마인크래프트/테라리아/등용 게임 서버(이 서버는 항상 100% 실행되지 않으며 필요할 때 다른 작업을 위한 메모리를 확보하기 위해 서버를 껐다가 켜야 합니다.
  • 파일에 액세스하고 인터넷에서 스트리밍하여 필요할 때 어디서나 액세스할 수 있습니다.

집에 있는 많은 사용자가 개인 권한으로 자신의 파일을 가질 수 있고 각 사용자가 자신만 액세스할 수 있는 미디어를 스트리밍할 수 있도록 여러 계정을 갖고 싶습니다(모든 사용자를 위한 공개 스트림은 물론 게스트는 제외).

또한 가능하다면 인터넷에서도 액세스할 수 있기를 바랍니다. 이렇게 하면 정말로 필요한 경우 어디에서나 연결하여 파일을 가져올 수 있습니다. 내 외부 IP가 고정되지 않을 수 있기 때문에 이것이 실제로 어려울 수 있다는 것을 알고 있습니다. (Comcast와 같은 많은 회사, 불행하게도 내가 사용하는 ISP) 실제로 외부 IP를 때때로 (그러나 자주는 아님) 변경할 수 있습니다. 나는 클라이언트에게 동적 DNS 서비스를 제공하는 namecheap으로부터 서버용 도메인 이름을 구입했습니다. 이렇게 하면 외부 IP를 올바르게 업데이트할 수 있습니다.

나 자신에 대한 약간의 배경지식: 저는 물리학 및 전기 공학 전공이고 컴퓨터 공학을 부전공합니다. 저는 C, C++, Python에 대해 상당히 잘 알고 있습니다. 하지만 저는 PHP나 다른 서버 언어를 모릅니다. 나는 windows/osx/linux에 익숙하지만 내 linux/terminal 기술은 최고 수준이 아닙니다.

예전에 홈 웹서버를 구축하려고 했으나 학교가 방해를 해서 너무 바빠서 할 수가 없었습니다. 또한 집에서 웹 사이트를 호스팅하는 것은 일반적으로 신뢰성이 낮고 보안 문제가 많기 때문에 끔찍한 아이디어라는 것을 알게 되었습니다. 이제 시간이 더 많아 게임도 호스팅할 수 있는 홈 미디어와 파일 서버를 만들고 싶습니다. 파일을 쉽게 백업하고 저장할 수 있습니다.

이 모든 일을 어떻게 시작하나요? 서버가 Windows/OSX/Linux와 호환되는지 어떻게 확인합니까?

나는 그것이 아마도 최고일 것이라는 것을 알고 있기 때문에 그것을 리눅스 서버로 만들고 싶었습니다(비록 나는 리눅스 마스터는 아니지만).

인터넷에 연결할 수 있다면(어디서나 이 파일에 액세스할 수 있다면) 어떻게 보안을 유지하나요? 특정 사용자만 로그인할 수 있게 하려면 어떻게 해야 하나요?

염두에 두고 있는 컴퓨터가 있는데, 사양은 다음과 같습니다. 추가 업그레이드가 없습니다(따라서 함께 제공된 RAM은 8GB입니다). 그것이 제공하는 모든 것은 그것이 가지고 있는 것입니다.

내가 나열한 하드웨어가 있습니다. 아주 오래된(읽기: 6년) 데스크톱입니다. 나는 그것이 부분적으로 프로젝트이기를 원하지만 학습 곡선이 쉽습니다. 나만의 스트리밍 서비스 애플리케이션을 작성하고 싶지는 않지만 네트워킹 장치의 기본 사항과 파일 전송/원격 제어를 위해 서버를 인터넷에 연결하는 방법을 배우고 싶기 때문에 모든 것을 "설정하고 잊어버리는" 것을 원하지 않습니다. / 등

두 가지 이유로 모든 것을 가상화하는 것이 최선인지는 모르겠습니다. 1) 가상화에는 훨씬 더 많은 RAM이 필요합니다. 2) 이 작업에는 다소 복잡해 보입니다. 원격으로도 모든 것을 완전히 제어할 수 있기를 원합니다. 기계가 다운되는데 어떻게 원격으로 시작할 수 있나요? (어쩌면 이것은 실제로 문제가 아닐 수도 있습니다)

Plex 및 OwnCloud와 같은 몇 가지 사항을 조사했지만 이들이 통합되었는지 확인하고 싶습니다(즉, Plex가 스트리밍할 수 있는 OwnCloud를 사용하여 서버에 미디어를 업로드할 수 있음). 나는 대안에 대해 전적으로 개방적입니다. 내 연구에서 나온 plex와 OwnCloud에 대해서만 언급합니다. 또한 여러 사용자가 동시에 서버에 액세스할 수 있기를 원합니다(동일하거나 다른 미디어를 사용하여 여러 장치에 동시에 스트리밍, 다른 사람이 스트리밍하는 동안 파일 다운로드/업로드 등).

답변1

개인적인 경험으로 볼 때 홈 서버를 설정하는 것은 생각보다 꽤 복잡합니다. 조치를 취하기 전에 구성 프로세스를 계획해 주셔서 감사합니다.

  • 먼저, 다음을 수행해야 합니다.하드웨어를 고려하세요. 데스크탑 컴퓨터는 일상적인 사용에 안정적입니까? 드라이브와 RAM에 대한 유지 관리를 쉽게 수행할 수 있습니까? 지금부터 2년 후에 서버에 사용할 부품을 찾을 수 있나요? 다락방에 있는 오래된 데스크탑을 수리하거나(신뢰성을 희생하면서 저렴하게) NAS를 구입하거나(성능을 희생하면서 네트워크 연결 스토리지) 직접 타워를 건설할 수도 있습니다(비싸지만 가장 유연함).
  • 두번째,특정 운영 체제 또는 배포판 조사당신이 사용하고 싶은 것. 5번 중 4번은 아마도 Linux 배포판을 사용하게 될 것입니다. 서버 지향 배포판이 너무 많아서 이름을 지정할 수도 없습니다! (하지만 가장 인기 있는 것은 Ubuntu Server와 CentOS입니다.)
  • 드라이브 구성을 선택하십시오. 이는 드라이브가 1년, 5년, 15년에 걸쳐 고장날 수 있고 오프사이트 백업에 대역폭을 낭비하고 싶지 않기 때문에 장기적으로 매우 중요합니다. 하드웨어 RAID는 필수입니다. 이를 통해 일반적인 RAID 0 및 RAID 1보다 비용 효율적인 중복 설정을 생성할 수 있습니다. 여전히 백업 소스가 있어야 하지만 RAID를 사용하면 4개 이상의 드라이브 중 고장난 드라이브를 교체할 수 있습니다. 아무 재난 없이 5번의 드라이브를 펼쳤습니다.연중무휴 외부 USB 드라이브에 의존하지 마십시오. 이것들은 매우 빨리 실패합니다. 필요하지 않은 경우 외부 드라이브를 분리하세요.
  • 필요하지 않다면 가상화하지 마세요. 가상화 솔루션은 전체 도메인 컨트롤러의 정보가 단일 이미지 내에 완전히 저장될 수 있고 여러 도메인 컨트롤러가 동일한 하드웨어에서 동시에 실행될 수 있는 엔터프라이즈/데이터 센터 환경에서 매우 적합합니다. 가상화는 Windows Server 도메인에서 많이 사용되며 VirtualBox 방식을 따르지 않는 한 저렴하지 않습니다. 가능하다면 모든 프로그램을 동일한 OS에서 직접 실행하세요. 이렇게 하면 서비스(및 메모리)를 더 쉽게 관리할 수 있습니다.
  • 라우터는 대부분의 방화벽 작업을 처리할 수 있습니다. 그러나 당신은각 서비스를 강화하다읽기/쓰기 권한을 제한하여 공개적으로 실행합니다. 주요 규칙은 다음을 확인하는 것입니다.가능한 한 적은 수의 포트를 열어 두십시오.가능한 보안 허점을 방지하기 위해. 포트를 열지 않은 서비스에 임시로 액세스해야 하는 경우 SSH 터널을 사용할 수 있습니다.
  • 다음 경우에는 Scary.org를 사용하세요.동적 DNS필요한 경우. 동적 IP 작업에 스크립트를 사용할 수 있습니다.
  • 천천히 시작하여 작업을 진행하십시오.미디어 액세스를 위해 Samba 및 MiniDLNA와 같은 중요한 패키지를 먼저 설치한 다음 게임 서버 및 관리 서비스(예: SSH) 구축을 시작하세요. 웹 서버는 일반적으로 완전히 설정하는 것이 가장 성가신(보안 측면에서) 작업이므로 마지막에 구성해야 합니다. 존재하지 않는 한 소프트웨어나 스크립트를 처음부터 만들지 마십시오.

계속 연구하면 몇 달 안에 멋진 홈 서버를 갖게 될 것입니다.

관련 정보