Left 4 Dead 2 server

Автор AlexTheGreat, 03 августа 2014, 17:07:03

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

AlexTheGreat

Всем доброго времени суток!
Я недавно решил запилить свой сервачок Left 4 Dead 2, чтобы без проблем сыграть с друзьями в пользовательские карты! Установка прошла на УРА! Пользовался официальной инструкцией (https://developer.valvesoftware.com/wiki/SteamCMD). Проблема "нарисовалась" уже после! Дело в том, что мой сервер не виден из внешней сети! Хотя вроде по умолчанию все входы должны быть открыты.
У меня стоит рутер D-Link DIR-615 с прошивкой dd-wrt. Я открыл на нем порт 27015 TCP. Стал проверять порт с помощью браузерной утилитки (http://ping.eu/port-chk/) и всё равно пишет port closed.
Но я не отчаялся и решил скачать gui для встроеного файерволла (Firestarter), открыл на нём тот же порт. Перезагрузил всё, результат тот же - port closed. Пробовал скачивать другие GUI на файерволл, не помогло.
Дошло до того, что стал вручную редактировать iptables:
Цитировать
root@debian-server:~# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:25565flags: FIN,SYN,RST,ACK/SYN
ACCEPT     all  --  anywhere             anywhere           
REJECT     all  --  anywhere             loopback/8           reject-with icmp-port-unreachable
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:http
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:https
ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:30000
ACCEPT     icmp --  anywhere             anywhere             icmp echo-request
LOG        all  --  anywhere             anywhere             limit: avg 5/min burst 5 LOG level debug prefix "iptables denied: "
REJECT     all  --  anywhere             anywhere             reject-with icmp-port-unreachable
ACCEPT     udp  --  anywhere             anywhere             udp spts:27000:27030 dpts:1025:65355
ACCEPT     udp  --  anywhere             anywhere             udp spt:4380 dpts:1025:65355

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         
REJECT     all  --  anywhere             anywhere             reject-with icmp-port-unreachable

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere

Может кто нибудь сталкивался с подобной проблемой? Никак не могу понять, где мой косяк!

P.S. Сервер Minecraft без проблем виден из интернета, без всяких редактирований!

Defman

Порты проверял, когда сервер уже был запущен? У меня тоже показывало, что порты закрыты, когда сервер GMOD был выключен. Врубил и сразу же начало показывать "порт открыт".
:)

AlexTheGreat

Цитата: Defman от 04 августа 2014, 00:12:35
Порты проверял, когда сервер уже был запущен? У меня тоже показывало, что порты закрыты, когда сервер GMOD был выключен. Врубил и сразу же начало показывать "порт открыт".
Да, всегда проверяю, именно тогда, когда сервак уже запущен! Left 4 Dead 2 - порт 27015 закрыт, Minecraft - порт 25565 открыт. Парадокс блин!

endru

на самом сервере с игрой порт проверяли?
netstat -n | grep номер_порта

AlexTheGreat

на самом сервере с игрой порт проверяли?
Код: [Выделить]
Цитироватьnetstat -n | grep номер_порта

Ввел команду при запущеном серваке... ничего не выдала!

endru

Значит твой сервер на этом порту ничего не слушает. смотри настройки сервера.

p.s. я надеюсь "номер_порта" ты заменил на свои цифры  :D

AlexTheGreat

Цитата: endru от 05 августа 2014, 06:03:46
Значит твой сервер на этом порту ничего не слушает. смотри настройки сервера.

p.s. я надеюсь "номер_порта" ты заменил на свои цифры  :D
Ну я уж не совсем дурак! Разумеется заменил! Ничего не показывает! Другие порты, кстати, тоже не показывает!

endru

Извиняюсь. не тот ключ на автомате написал. нужен -a
netstat -a | grep номер_порта

AlexTheGreat

Цитата: endru от 05 августа 2014, 13:12:08
Извиняюсь. не тот ключ на автомате написал. нужен -a
netstat -a | grep номер_порта
Вот такую "вещь" выдал:
Цитироватьaleksei@debian-server:~$ netstat -a | grep 27015
tcp        0      0 debian-server:27015     *:*                     LISTEN     
udp        0      0 *:27015                 *:*

endru

показывай правила iptables:
iptables-save

AlexTheGreat

Цитата: endru от 06 августа 2014, 05:58:38
показывай правила iptables:
iptables-save

Цитировать# Generated by iptables-save v1.4.14 on Wed Aug  6 19:49:23 2014
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -p tcp -m tcp --dport 25565 --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -d 127.0.0.0/8 ! -i lo -j REJECT --reject-with icmp-port-unreachable
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 30000 -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied: " --log-level 7
-A INPUT -j REJECT --reject-with icmp-port-unreachable
-A INPUT -p udp -m udp --sport 27000:27030 --dport 1025:65355 -j ACCEPT
-A INPUT -p udp -m udp --sport 4380 --dport 1025:65355 -j ACCEPT
-A FORWARD -j REJECT --reject-with icmp-port-unreachable
-A OUTPUT -j ACCEPT
COMMIT

endru

я так понимаю, это правила на роутере...
в них я не вижу проброшенного порта на твой сервер, ни на 25565 порт ни на 27015.
25565 работает за счет включенного UPnP?

AlexTheGreat

Цитата: endru от 07 августа 2014, 06:44:18
я так понимаю, это правила на роутере...
в них я не вижу проброшенного порта на твой сервер, ни на 25565 порт ни на 27015.
25565 работает за счет включенного UPnP?
Да нет, функцией UPnP никогда не пользовался...

AlexTheGreat

Проблема решилась! Косяк был в конфиге (server.cfg). Написал новый конфиг и всё полетело!