라즈베리 파이는 컴퓨팅의 스위스 군용 칼이라고 할 수 있습니다. LED를 켜고, 업무용 이메일을 작성하고, 오래된 텔레비전/모니터로 영화를 스트리밍하거나 게임 서버를 호스팅하는 데 사용할 수 있습니다.

서버 호스팅은 라즈베리 파이를 활용할 수 있는 좋은 방법입니다. 많은 호스팅 애플리케이션은 하드웨어에 큰 부담을 주지 않으면서도 싱글 보드 컴퓨터의 리소스를 활용합니다. 라즈베리파이 SBC에서 호스팅할 수 있는 몇 가지 다양한 서버를 살펴봅시다.

웹 서버: Apache, Nginx

웹 서버는 요청에 따라 사용자에게 웹 페이지를 제공하는 컴퓨터입니다. 웹 서버는 구성 요소 파일(HTML, CSS, JavaScript)을 저장하고 해당 파일에 대한 액세스 요청을 처리하는 역할을 담당합니다.

이러한 사용자 요청을 수락하고 요청된 파일을 전송할 수 있는 널리 사용되는 크로스 플랫폼 소프트웨어 솔루션인 아파치를 사용하여 나만의 온라인 웹 서버를 만들 수 있습니다. Apache는 전 세계 웹사이트의 67% 이상을 담당하고 있습니다. 대신 사용할 수 있는 훌륭한 대안으로 Nginx가 있습니다.

라즈베리파이에서 웹 서버를 설정하려면 사용자 데이터 및 기타 필요한 정보를 저장하기 위해 Apache와 MariaDB와 같은 관계형 데이터베이스 관리 소프트웨어를 설치해야 합니다.

데이터베이스 서버: MariaDB

웹사이트와 별도의 플랫폼에서 데이터베이스를 호스팅하도록 선택할 수 있습니다. 이는 성능 향상과 보안 강화에 도움이 될 수 있습니다. 4

MySQL은 데이터베이스 관리를 위해 널리 사용되는 솔루션이지만, 라즈베리파이에는 설치할 수 없습니다. 대신 데이터베이스를 관리하려면 MariaDB를 설치해야 합니다. MariaDB는 몇 가지 사소한 차이점을 제외하면 대부분의 경우 MySQL과 호환됩니다.

파일 서버: Samba, NFS

파일 서버는 네트워크를 통해 파일과 문서를 저장하고 액세스를 제공하는 역할을 하는 컴퓨터입니다. 네트워크 연결 스토리지 또는 NAS는 파일 서버의 한 유형입니다. 파일 서버를 사용하면 주 컴퓨터의 공간을 절약하면서 필요할 때마다 파일에 바로 액세스할 수 있습니다.

라즈베리파이에서 파일 서버를 설정하는 가장 일반적인 방법은 Samba를 사용해 네트워크에서 파일을 공유하는 것입니다. 이를 통해 최소한의 설정으로 로컬 네트워크에 있는 여러 컴퓨터 간에 파일을 교환할 수 있습니다. 전송 병목 현상을 피하려면 좋은 SD 카드 또는 SSD가 필요합니다.

이 글도 확인해 보세요:  MQTT와 함께 ESP-01 사용: IoT 디바이스 연결 및 제어 방법

NFS는 더 나은 암호화를 제공하고 설정이 약간 더 쉬운 Samba의 대안입니다.

FTP 서버: vsftpd, ProFTPD

FTP 서버는 파일 서버와 유사하게 작동하지만, 파일이 인터넷에 저장되고 로컬 네트워크를 통해 액세스할 수 없다는 점이 다릅니다. 파일 서버는 일반적으로 더 안전하지만 접근성이 더 제한적입니다. FTP 서버에 저장된 파일은 전 세계 어디에서나 액세스할 수 있습니다.

라즈베리파이에서 FTP 서버를 호스팅하려면, 라즈베리파이에 ProFTPD(프로 파일 전송 프로토콜 데몬)와 같은 FTP 프로그램을 설치 및 설정해야 합니다. ProFTPD는 기능이 풍부하고 성능이 뛰어나며 보안성이 매우 높습니다. 서버를 설정한 후 운영체제에서 지원하는 모든 FTP 클라이언트를 사용해 서버에 연결할 수 있습니다.

DNS 서버: BIND, dnsmasq

DNS 서버는 도메인 이름을 IP 주소로 변환합니다. 로컬 DNS 서버를 사용하면 보안, 도메인 차단, 자주 방문하는 사이트에 대한 빠른 액세스, 로컬 도메인 이름을 직접 만들 수 있는 기능 등의 이점이 있습니다.

BIND는 DNS 서버 설정에 관심이 있다면 가장 좋은 선택입니다. 모든 기능을 갖춘 서버로, 권한 있는 재귀적 네임 서버로 작동할 수 있습니다. Dnsmasq는 더 적은 기능으로 가볍고 사용하기 쉬운 대안입니다.

메일 서버: Postfix, Dovecot

라즈베리파이에서 메일 서버를 호스팅하는 데 사용할 수 있는 많은 도구가 있습니다. 하지만 메일 서버를 운영하려면 상당한 양의 작업이 필요하고 다른 단점도 있기 때문에 완전 초보자라면 섣불리 뛰어들지 않는 것이 좋습니다. 그러나 단점을 기꺼이 간과한다면 보람 있는 학습 경험이 될 수 있습니다.

라즈베리 파이에서 메일 서버를 실행하려면 이메일을 주고받을 수 있도록 Postfix를 설정해야 합니다. 또한 이메일에 액세스하려면 Dovecot 또는 Courier와 같은 추가 서비스를 설치해야 합니다.

VPN 서버: OpenVPN, WireGuard

VPN(가상 사설망) 서버는 장치 간의 연결을 암호화하여 제3자가 전송된 데이터를 가로채거나 액세스하기 어렵게 만듭니다. 라즈베리 파이에서 VPN 서버를 호스팅할 수 있는 옵션이 있으며, 이는 안전한 개인 네트워크를 구축하는 좋은 방법이 될 수 있습니다.

이 글도 확인해 보세요:  브레드보드와 아두이노로 CAN 버스를 구축하는 방법

VPN 서버를 실행하려면 약간의 기술 지식이 필요하며, 제대로 보안을 유지하지 않으면 보안 위험이 있다는 점을 명심하세요. 필요한 예방 조치를 취하고 항상 최신 보안 패치로 시스템을 최신 상태로 유지하세요.

미디어 서버: Plex, Emby

많은 라즈베리 파이 소유자가 이 장치를 사용하여 영화, 사진 앨범, 음악, TV 프로그램 컬렉션을 저장하고 관리합니다. 전용 미디어 서버를 호스팅하는 가장 일반적인 옵션은 Plex이지만, Jellyfin과 Emby도 좋은 대안이 될 수 있습니다.

모든 옵션에 대부분의 운영 체제용 앱이 있지만, 일반적으로 Plex가 더 나은 성능을 제공하며 문제가 발생할 경우 도움을 받을 가능성이 더 높습니다. 이제 라즈베리 파이를 꺼내 Plex를 설치하고 원하는 장치에서 좋아하는 영화를 스트리밍하세요.

게임 서버: Minecraft, Terraria

라즈베리파이에 게임 서버를 호스팅하여 다운타임을 줄일 수 있습니다. 라즈베리 파이 서버에서 자체 호스팅할 수 있는 게임은 여러 가지가 있지만, 가장 인기 있는 두 가지 옵션은 마인크래프트와 테라리아입니다.

두 게임 모두 온라인과 오프라인 요소가 있는 샌드박스 게임입니다. 하지만 테라리아는 액션과 전투에 더 중점을 두는 반면 마인크래프트는 좀 더 느긋하고 탐험과 창의성을 강조합니다.

게임용 서버 소프트웨어를 설치해야 하는데, 마인크래프트의 경우 Nukkit을, 테라리아의 경우 TShock을 설치해야 합니다. 두 게임의 서버를 실행하는 과정은 충분히 비슷합니다. 따라서 라즈베리 파이에서 Minecraft 서버를 설정할 수 있다면 테라리아에서도 동일하게 설정할 수 있을 것입니다.

라즈베리 파이에서 서버 실행하기

서버 호스팅은 라즈베리 파이를 사용하는 가장 인기 있는 방법 중 하나입니다. 많은 사용자들이 다양한 이유로 하나의 라즈베리파이에서 하나 이상의 서버를 호스팅합니다. 하지만 라즈베리 파이에서 서버를 호스팅하는 데에는 하드웨어 제한이 있으며, 하나의 라즈베리 파이에서 여러 서버를 호스팅하면 필연적으로 성능에 영향을 미칠 수 있다는 점을 알아두세요.

By 박준영

업계에서 7년간 경력을 쌓은 숙련된 iOS 개발자인 박준영님은 원활하고 매끄러운 사용자 경험을 만드는 데 전념하고 있습니다. 애플(Apple) 생태계에 능숙한 준영님은 획기적인 솔루션을 통해 지속적으로 기술 혁신의 한계를 뛰어넘고 있습니다. 소프트웨어 엔지니어링에 대한 탄탄한 지식과 세심한 접근 방식은 독자에게 실용적이면서도 세련된 콘텐츠를 제공하는 데 기여합니다.