서버 프록시와 함께 Sponge 사용하기
참고
프록시 서버와 연결하기 위해 SpongeForge와 SpongeVanilla는 “IP forwading” 기능을 활성화하는 기능을 제공하지만 Sponge는 어떠한 특정 프록시 소프트웨어를 공식적으로 지원하거나 권장하지 않습니다. 프록시와 관련된 모든 문제는 관련 지원 커뮤니티에 문의해야 합니다.
서버 프록시는 서버 관리자가 마인크래프트 서버들 사이에서 연결을 끊거나 재연결할 필요 없이 말그대로 점프할 수 있도록 해줍니다. 잘 알려진 서버 프록시 프로그램은 SpigotMC 팀의 md_5가 만든 BungeeCord가 있으며, Forge와 Sponge 호환성을 위해 만들어진 BungeeCord에서 파생된 Waterfall이나 Hexacord도 있습니다. 앞서 설명한 프로그램 말고도 Velocity도 있습니다. 서버 프록시는 보통 다양한 서버 모드를 제공하기 위해 서버 네트워크에서 사용됩니다. Sponge는 플레이어의 게임 프로필에 Forge 마커 추가를 지원하는 서버에 플레이어 정보를 전달하는 기능과 함께 대부분의 서버 프록시에서 동작합니다.
프록시 서버 소프트웨어 선택하기
SpongeVanilla는 대부분의 프록시 서버 소프트웨어에서 작동합니다. 하지만 SpongeForge 서버는 모드가 설치된 클라이언트가 접속할 때 표준 BungeeCord에서 작동하지 않습니다. 모드가 설치된 서버 사이에서 프록시를 연결하고 싶다면 BungeeCord의 파생형인 Waterfall 이나 다른 해결책인 Velocity 를 사용해야 합니다. 두 프로그램 모두 Forge 환경을 지원하는 코드가 담겨 있습니다.
프록시 서버 네트워크 구성하기
경고
서버 프록시에 서버들을 연결하기 위해서 먼저 모든 서버들을 오프라인 모드로 만들어야 합니다. 하지만 오프라인 모드에서는 적절한 예방 조치 없이 아무나 원하는 아무 이름으로 서버에 접속하고 심지어 어드민 권한을 가질 수도 있습니다. 따라서 모든 서버를 방화벽으로 보호해야 합니다. 리눅스를 사용하고 있다면 IpTable 가이딩 문서 SpigotMC Firewall guide 를 참고하시거나 다른 배포판은 UncomplicatedFirewall “ufw” 를 참고해주세요.
SSH를 사용한다면 22 포트가 열려 있는지 확인하세요. 그렇지 않으면 서버 관리자인 당신이 서버에 접근할 수 없는 위험이 생길지도 모릅니다!
리눅스를 사용하는 것에 익숙하지 않거나 서버에 인증되지 않은 접근을 막는 방법에 확신을 가질 수 없으시다면 서버 보안에 경험이 많은 다른 사람에게 자문을 구하시는 것도 나쁘지 않습니다.
프록시에서 연결을 허락하려면, Sponge 서버에서 ``server.properties``에서 ``online-mode``가 ``false``가 되어 있는지 확인하세요. 프록시가 당신 대신 인증을 해줄 겁니다. 그런 다음 서버 프록시 문서에서 프록시에 서버를 추가하는 방법을 따르세요.
프록시 연결을 활성화하는 것은 이게 전부이지만, Player Information Forwarding 또는 IP Forwarding 중 하나를 활성화하여 Sponge가 서버가 온라인 모드인 것처럼 처리하도록 하는 것을 강력히 추천합니다.
Player Information Forwarding (또는 IP Forwarding)
서버 프록시 소프트웨어는 일반적으로 “플레이어 정보 전달(Player Information Forwarding)” 또는 “IP 전달(IP Forwarding)”이라는 모드를 제공합니다. 이 모드를 사용하면 프록시 서버 소프트웨어가 연결된 서버들에게 플레이어의 UUID 및 IP 주소를 전달할 수 있으므로 Sponge 서버가 마치 온라인 모드(정품 모드)인 것처럼 동작시킬 수 있습니다. 이러한 옵션은 프록시 및 Sponge에서 모두 사용하도록 설정하는 것을 강력히 권장합니다.
프록시에서 플레이어 정보 전달을 활성화하려면 어떻게 활성화시킬 수 있는지 프록시 소프트웨어 문서에서 찾아보아야 합니다. BungeeCord와 파생형 프로그램에서는 “IP forwarding”이라고 지칭하고 있습니다. SpongeForge를 사용하고 있다면 프록시에서 Forge를 지원하도록 활성화시킬 필요도 있습니다. Velocity를 사용하고 있다면 LEGACY
플레이어 정보 전달 옵션을 사용하고 있는지 확인해야 합니다.
Sponge에서 플레이어 정보 전달을 활성화하려면 Sponge의 환경 설정 파일인 ``config/sponge/global.conf``에서 두 가지 옵션을 ``true``로 설정해야 합니다.
modules.bungeecord
bungeecord.ip-forwarding
이 옵션은 BungeeCord의 이름을 따서 명명되었지만 동일한 프로토콜을 사용하는 아무 프록시에서 일관되게 작동합니다.
설정한 후 반드시 서버를 재시작해야 합니다. 이 옵션을 네트워크 상의 모든 Sponge 서버에서 활성화했는지 반드시 확인해야 합니다. 프록시에서 액세스할 다른 서버에서도 동일한 옵션을 설정해야 합니다.