Ранливост на DDoS/Dice и P2P безбедносни мерки во Metin2 Pvp серверите
Најтаргетираните точки на Metin2 pvp серверите од сајбер напаѓачите се P2P (Peer-to-Peer) портите и пропустите на Dice. Со користење на овие пропусти, напаѓачите можат да ги намалат каналите во играта (CH), да го урнат серверот или да си дадат неважечки дозволи. Во ова упатство, ги составивме чекорите што треба да ги преземете за да ја осигурате безбедноста на вашиот сервер и да ги спречите овие напади.
1. Затворање на P2P порти кон надворешниот свет (најкритична мерка)
P2P портите им овозможуваат на каналите на играта да разменуваат податоци меѓу себе. Ако овие порти останат отворени кон надвор, напаѓачите можат да добијат администраторски привилегии или да ги затворат каналите со испраќање лажни команди до серверот. За решение, мора да го активирате заштитниот ѕид на FreeBSD (IPFW или PF):
- вашиот сервер со Filezilla
/etc/rc.confОтворете ја датотеката и овозможете го заштитниот ѕид со додавање на овие линии:
firewall_enable="YES" firewall_script="/etc/ipfw.rules"
- Потоа
/etc/ipfw.rulesНаправете датотека наречена , дозволете ги портите на играта што треба да бидат отворени кон надвор (Влезна порта, порти CH) и запишете како што е напишано во вашите CONFIG-датотеки. P2P порти само на локалниот хост (127.0.0.1) Додадете правило за слушање.
2. Поставки за безбедност на P2P во CONFIG датотеки
Ако не користите датотеки со извори и поставките за ipfw се комплицирани, можете да ги ограничите P2P конекциите во рамките на серверот само од датотеката CONFIG на секој канал:
/usr/game/cores/channel1/CONFIGОтворете ја датотеката.- Додадете ја следнава команда во долната линија на датотеката:
bind_ip 127.0.0.1 - Благодарение на оваа команда, тој канал ќе ги отфрли барањата за директно слушање пристаништа од надворешни мрежи. Повторете го овој процес на сите датотеки CH, Auth и Game99 CONFIG.
3. Оневозможување на командата за ранливост „Dice“.
Во датотеките од постарата генерација или незаштитените, играчите можеа да го вртат моторот на играта и да го испуштат CH со впишување одредена команда за коцки (`/ dice`) во линијата за разговор. За да ја затворите оваа празнина:
- Ако имате изворен код,
cmd.cppОтворете ја датотеката иACM(do_dice)со целосно бришење на линијата или почеток//оневозможете ја командата целосно и прекомпајлирај го изворот. - Ако не користите датотеки со извори, можете да преземете некоја во играта потрага (скрипта Луа) Користете филтри кои автоматски го исфрлаат играчот од играта или го блокираат зборот кога зборот „/ dice“ се споменува во линијата за разговор со пишување.
Оваа статија е специјално подготвена за PvPServer.