Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: [FAQ] Установка Counter-Strike 1.6/Source сервера на Ubuntu Server  (Прочитано 205040 раз)

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

Оффлайн Mafiz

  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
Re: [FAQ] Установка Counter-Strike 1.6/Source сервера на Ubuntu Server
« Ответ #240 : 26 Февраля 2012, 04:05:32 »
bmctik - на файлы hlds.run, hlds.i686, start-cs-1_6.sh должны стоять права 755. Если сервер запускаешь на удаленной машине и чтоб меньше было гемороя, используй Windowsкую программу Winscp   там увидишь все права к файлам и папкам и в работе те, это программа пригодится!

К заметке цитирую диалог, то что отвечал пользователю:

(допустим сервер лежит в папке root в подпапке server в папке Version, путь будет выглядеть так root/server/Version)

Готовый код запуска сервера который должен получиться:
#!/bin/sh
cd /root/server/Version
./hlds_run -binary ./hlds_i686 -game cstrike -master +log on +map de_dust2 +port 27015 -maxplayers 32 +exec server.cfg
« Последнее редактирование: 26 Февраля 2012, 04:18:21 от Mafiz »

Оффлайн bumctik

  • Любитель
  • *
  • Сообщений: 57
    • Просмотр профиля
Re: [FAQ] Установка Counter-Strike 1.6/Source сервера на Ubuntu Server
« Ответ #241 : 26 Февраля 2012, 08:57:22 »
Mafizб спасибо, но я запускаю через терминал, неудаленно.
И вот еще проблема
При запуске с параметром
hlds_run -game cstrike +ip 192.168.1.5 сервер стартует, но  не работает команда status и amx_plugins (не показывает какие плагины запущены) а также не работает amx_modules
работают meta list
meta list
Currently loaded plugins:
      description      stat pend  file              vers      src   load  unlod
 [ 1] dproto_EF        RUN   -    dproto_i386.so    v0.9.87   ini   Start Never
 [ 2] AMX Mod X        RUN   -    amxmodx_mm_i386.  v1.8.1.3  ini   Start ANY 
2 plugins, 2 running

(показывает что dproto и amxx запущен) и работает команда stats
stats
CPU   In    Out   Uptime  Users   FPS    Players
 0.00  0.00  0.00       0     0  811.03       0
не могу предположить из-за чего?
на amx_plugins и amx_modules вообще в терминале нет реакции

при запуске в консоле, как будто бы все работает
Protocol version 48
Exe version 1.1.2.1/Stdio (valve)
Exe build: 22:54:48 Aug 15 2011 (5408)
STEAM Auth Server
Server IP address 127.0.0.1:27015
   
   Metamod version 1.19p32 Copyright (c) 2001-2006 Will Day
     Patch: Metamod-P (mm-p) v32 Copyright (c) 2004-2007 Jussi Kivilinna
   Metamod comes with ABSOLUTELY NO WARRANTY; for details type `meta gpl'.
   This is free software, and you are welcome to redistribute it
   under certain conditions; type `meta gpl' for details.
   
[DPROTO]: Version 0.9.87 Linux
[DPROTO]:  Loading config './valve/dproto.cfg'
[DPROTO]:  LoggingMode = 2
[DPROTO]:  Config sucessfully loaded.
[DPROTO]: Done.

   AMX Mod X version 1.8.1.3746 Copyright (c) 2004-2006 AMX Mod X Development Team
   AMX Mod X comes with ABSOLUTELY NO WARRANTY; for details type `amxx gpl'.
   This is free software and you are welcome to redistribute it under
   certain conditions; type 'amxx gpl' for details.

Пользователь решил продолжить мысль 26 Февраля 2012, 13:45:49:
С этим вопросом разобрался. Нужно просто полностью настроить сервер и hlds_run запускать из папки сервера
теперь другая проблема
сервер поднят на 192.168.1.5:27012 и воткнут в роутер с внешним ip 46.50.168.142
не получается сделать так, чтобы при коннекте на 46.50.168.142:27012 игроки в итоге цеплялись к 192.168.1.5:27012

я так думаю необходимо правильно прописать Iptables + пробросить порты на роутере.
На роутере пробросил также как и для сервера под windows
Да TCP/UDP 2700-27039,1200 192.168.1.5 oldgamer.0nline
но к серверу все равно не цепляется
подскажите что еще необходимо сделать? :idiot2:

Пользователь решил продолжить мысль 26 Февраля 2012, 15:39:58:
народ ну помогите уже а? просто б*во какое-то целый день прогуглил, а решение не нашел
не могу опубликовть сервер (local IP 192.168.1.5) на порту 27012 в интернет сервер за роутером (локальный у роутера Ip 192.168.1.1) WAN адрес 46.50.168.142
« Последнее редактирование: 26 Февраля 2012, 15:39:58 от bmctik »
===========================================================
Пользователи убунты не знают о существовании других дистров.
Они считают, что Ubuntu - это и есть Linux, единственный и неповторимый.

Оффлайн Mafiz

  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
Re: [FAQ] Установка Counter-Strike 1.6/Source сервера на Ubuntu Server
« Ответ #242 : 27 Февраля 2012, 06:50:15 »
помимо сервера, там будут ли еще, какие то сервера стоять? можно было проверить, например коннект к вэб серверу. Если в роутере открыт порт, то коннект должен быть без проблем, думаю даже iptabless не нужно настраивать, считай что соединение прямое. Главное убедиться что в роутере 100% открыт соответствующий порт 27012. Попробуй еще прописать sv_lan 1 либо sv_lan 0 в файле server.cfg.

Оффлайн bumctik

  • Любитель
  • *
  • Сообщений: 57
    • Просмотр профиля
вопрос решился.. проблема была в роутере, порт был проброшен дважды.
остался момент -iptables
сервер стартует автоматом, после запуска пользователя gamer (входит автоматически)
если создаю правило, и потом машину с сервером перезапускаю, то все правила исчезают и их приходиться вводить по новой. Можно ли их добавить в файл, который бы обрабатывался "поумолчанию" и чтобы правила автоматом подключались, как только пользователь вошел в систему?

в какой файл их вписать?

Пользователь решил продолжить мысль 09 Марта 2012, 17:08:26:
по iptables вопрос по-прежнему открыт
но сейчас есть более актуальная проблема.
Сервер стал падать при смене карты вот что в логах
вот такой debug.log
[code]----------------------------------------------
CRASH: Пт. марта  9 16:04:16 NOVT 2012
Start Line: ./hlds_i686 -insecure +sv_lan 0 -console -game valve -debug +exec server.cfg +ip 0.0.0.0 +port 27012 +maxplayers 16 +map ag_crossfire -noipx -autoupdate -pidfile hlds.16453.pid
[New Thread 17176]
[New Thread 17178]
[New Thread 17182]
[New Thread 21672]
[New Thread 17180]
Core was generated by `./hlds_i686 -insecure +sv_lan 0 -console -game valve -debug +exec server.cfg +i'.
Program terminated with signal 11, Segmentation fault.
#0  0x01691362 in ?? ()
#0  0x01691362 in ?? ()
No symbol table info available.
From        To          Syms Read   Shared Object Library
0x0092e830  0x009454af  Yes (*)     /lib/ld-linux.so.2
(*): Shared library is missing debugging information.
Stack level 0, frame at 0xbfe7cb4c:
 eip = 0x1691362; saved eip End of crash report
----------------------------------------------
----------------------------------------------
CRASH: Пт. марта  9 16:54:19 NOVT 2012
Start Line: ./hlds_i686 -insecure +sv_lan 0 -console -game valve -debug +exec server.cfg +ip 0.0.0.0 +port 27012 +maxplayers 16 +map ag_crossfire -noipx -autoupdate -pidfile hlds.16453.pid
[New Thread 17176]
[New Thread 17178]
[New Thread 17182]
[New Thread 21672]
[New Thread 17180]
Core was generated by `./hlds_i686 -insecure +sv_lan 0 -console -game valve -debug +exec server.cfg +i'.
Program terminated with signal 11, Segmentation fault.
#0  0x01691362 in ?? ()
#0  0x01691362 in ?? ()
No symbol table info available.
From        To          Syms Read   Shared Object Library
0x0092e830  0x009454af  Yes (*)     /lib/ld-linux.so.2
(*): Shared library is missing debugging information.
Stack level 0, frame at 0xbfe7cb4c:
 eip = 0x1691362; saved eip End of crash report
----------------------------------------------
----------------------------------------------
CRASH: Пт. марта  9 19:00:41 NOVT 2012
Start Line: ./hlds_i686 -insecure +sv_lan 0 -console -game valve -debug +exec server.cfg +ip 0.0.0.0 +port 27012 +maxplayers 16 +map ag_crossfire -noipx -autoupdate -pidfile hlds.16453.pid
[New Thread 22880]
[New Thread 22884]
[New Thread 22886]
[New Thread 26003]
[New Thread 22882]
Core was generated by `./hlds_i686 -insecure +sv_lan 0 -console -game valve -debug +exec server.cfg +i'.
Program terminated with signal 11, Segmentation fault.
#0  0x07535362 in ?? ()
#0  0x07535362 in ?? ()
No symbol table info available.
From        To          Syms Read   Shared Object Library
0x00ab9830  0x00ad04af  Yes (*)     /lib/ld-linux.so.2
(*): Shared library is missing debugging information.
Stack level 0, frame at 0xbfa7a1fc:
 eip = 0x7535362; saved eip End of crash report
----------------------------------------------
в чем проблема может быть?
конфиг серва: Antom 1.6 512 DDR кроме серва больше нет ничего[/code]
« Последнее редактирование: 09 Марта 2012, 17:10:13 от bmctik »
===========================================================
Пользователи убунты не знают о существовании других дистров.
Они считают, что Ubuntu - это и есть Linux, единственный и неповторимый.

Оффлайн Mafiz

  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
Посмотри, чтоб все названии карты совпадали со скриптом запуска. у тебя в логах написана первичная карта ag_crossfire, это карта должна быть прописана в файле mapcycle.txt и в maps.ini (cstrike\addons\amxmodx\configs). Если там все прописано, оставь все станадртные карты, может в карте ag_crossfire чего то не хватает и сервер падает.
« Последнее редактирование: 14 Марта 2012, 00:15:58 от Mafiz »

Оффлайн bumctik

  • Любитель
  • *
  • Сообщений: 57
    • Просмотр профиля
первый раз слышу что, карты используемые в качестве "дефолтных" для запуска должны быть обязательно прописаны в mapcycle.txt(.ini)  :idiot2:

сервер падает из-за amxbans_main.amxx
===========================================================
Пользователи убунты не знают о существовании других дистров.
Они считают, что Ubuntu - это и есть Linux, единственный и неповторимый.

Оффлайн Mafiz

  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
Все может быть... вот например я сталкивался с ситуацией, когда в скрипте запуска была прописана карта de_dust2, а в файле mapcycle.txt не было прописано de_dust2, тоже подобные ошибки сыпались. вот и подумал, что и у вас данная ситуация.

Оффлайн Aluminium//titan

  • Новичок
  • *
  • Сообщений: 28
    • Просмотр профиля
по iptables вопрос по-прежнему открыт
форвардни порт с одного интерфейса на другой

Оффлайн AD56

  • Новичок
  • *
  • Сообщений: 2
    • Просмотр профиля
Здравствуйте!!! Поставил ubuntu 11.10 x64.... Пытаюсь запустить сервер Counter-Strike 1.6 но не получается.... При запуске через скрипт .sh окно терминала появляется на долю секунды! Даже не возможно разглядеть есть ли там текс и исчезает.... Качал разные версии серверов и скриптом запуска, везде аналогичная ситуация... Может кто подскажет в чем дело???

Оффлайн Acumen

  • Автор темы
  • Новичок
  • *
  • Сообщений: 47
    • Просмотр профиля
Здравствуйте!!! Поставил ubuntu 11.10 x64.... Пытаюсь запустить сервер Counter-Strike 1.6 но не получается.... При запуске через скрипт .sh окно терминала появляется на долю секунды! Даже не возможно разглядеть есть ли там текс и исчезает.... Качал разные версии серверов и скриптом запуска, везде аналогичная ситуация... Может кто подскажет в чем дело???

Как на Ubuntu x64 с либами я без понятия, для того чтоб сервер заработал на 64bit надо установить ia32, делается достаточно просто:
apt-get install ia32-libs
Дальше попробуйте для начала сервер запустить без фона, просто из консоли, т.е. без "screen" или "> /dev/null 2>&1 &" на конце строки запуска, смотря кто чем пользуется =).
Удачи, пробуйте и практикуйтесь.
« Последнее редактирование: 22 Марта 2012, 17:55:49 от Acumen »
apt-get remove Microsoft Windows Xp Professional

Оффлайн AD56

  • Новичок
  • *
  • Сообщений: 2
    • Просмотр профиля
Цитировать
ad56@ad56-P5K-EPU:~$ sudo apt-get install ia32-libs
[sudo] password for ad56:
Чтение списков пакетов... Готово
Построение дерева зависимостей       
Чтение информации о состоянии... Готово
Уже установлена самая новая версия ia32-libs.
Следующий пакет устанавливался автоматически и больше не требуется:
  libreoffice-report-builder-bin
Для их удаления используйте 'apt-get autoremove'.
обновлено 0, установлено 0 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
ad56@ad56-P5K-EPU:~$


вот то что выдало!!! Пользуюсь "screen" но и без него происходит вылет!!!

Оффлайн Mafiz

  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
Здравствуйте!!! Поставил ubuntu 11.10 x64.... Пытаюсь запустить сервер Counter-Strike 1.6 но не получается.... При запуске через скрипт .sh окно терминала появляется на долю секунды! Даже не возможно разглядеть есть ли там текс и исчезает.... Качал разные версии серверов и скриптом запуска, везде аналогичная ситуация... Может кто подскажет в чем дело???

на файлы hlds.run, hlds.i686, start-cs-1_6.sh должны стоять права 755, иначе сервер не будет стартовать! Пробуй сначало запустить hlds.run но у тебя явно проблемы с правами.

Оффлайн gajet

  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
Доброго всем времени суток.

В первую очередь благодарю автора за инструкцию, сервер поднял, только радуюсь.

На данный момент сталкнулся с проблемой. Мой сервер стартует без AMXмода.
Брал готовый сервер отсюда

1) Установил сервер по инструкции.
2) Скачал готовый сервер и разархивировал в папку Cstrike
3) Запускаю при помощи команды: ./hlds_run -binary ./hlds_i686 -game cstrike -nomaster +ip 134.0.118.146 +maxplayers 16 +port 27015 +map de_dust2

Если подскажите, что не так буду очень признателен.
Заранее спасибо.

Пользователь решил продолжить мысль 30 Марта 2012, 22:09:37:
Проблему решил, прописав в Liblist.gam
строчку gamedll_linux "addons/metamod/dlls/metamod_i386.so"
Всем спасибо)
« Последнее редактирование: 30 Марта 2012, 22:09:37 от gajet »

Оффлайн Mafiz

  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
по iptables вопрос по-прежнему открыт
форвардни порт с одного интерфейса на другой

Вот небольшое решение, правда там типа фильтрация против ддос атак

Цитировать
Цитата от Pir@tehnic
Хочу с вами поделиться тем, как мне удалось решить эту проблему!

 Я просто задал пару правил для Linuxовского iptables.. Точнее просто вбил пару строк в терминал!

iptables -A INPUT -p udp --dport 27016 -m hashlimit --hashlimit 50/s --hashlimit-burst 50 --hashlimit-mode srcip --hashlimit-name CSS -j ACCEPT

iptables -A INPUT -p udp --dport 27016 -j DROP

 Где: 27016 - это порт Сервака, еще можно попробовать побаловаться с числом 50/s, но я себе поставил именно 50! Вбивайте и вы =)

 После этого я тестил Зомбез несколькими програмками для ДОС-атак, среди которых был DDoS-ер с иконкой в виде лимона и CSS Server Lagger и Зомбез короче от них даже не пошевелился (хотя до этого любая из них сваливала Сервак за минуту).

 Только одна програмка смогла поднять пинг до 200, но к счастью ее автор (програмки) эту прогу не распространяет и никому не дает =) !!!



 Можно прописать и другие правила, для более точной фильтрации!

iptables -A INPUT -p udp -m udp --dport 27016 -m state --state RELATED,ESTABLISHED -j ACCEPT

 iptables -A INPUT -p udp --dport 27016 -m state --state NEW -m hashlimit --hashlimit 100/s --hashlimit-burst 100 --hashlimit-mode srcip --hashlimit-name TF -j ACCEPT

 iptables -A INPUT -p udp --dport 27016 -j DROP

 Здесь также можно попробовать изменить число 100, но мне кажется 50 или 100 - нормально!

Еще команды для iptables:
iptables -L -n - показывает уже существующие правила!
iptables -F - сбрасывает все правила!



>>>Не помогли мне эти правила для моего Linuxовского серва, все равно ДДОСят, можно ли еще что-то придумать?<<<

 Можно попробовать осилить эту статью -> http://forums.alliedmods.net/showthread.php?t=106378

 Или можно сделать так!

 Ставите плагин DoS Attack Fixer (DAF) и в настройках включаете логирование! Далее, если произошла DDoS-атака, смотрите в логе с какого IP-адреса была атака, и баните IP-адрес через iptables! Бан по iptables - вещь очень надежная, на себе проверял =) !

 Оффтоп: хотя и написано что этот плагин DAF защищает сервер от ДДОСа, но по моему мнению и опыту, ни фига он не защищает (Во всяком случае от лимона не спасал)

Банить через iptables надо так:

iptables -A INPUT -s xxx.xxx.xxx.xxx -j DROP

 Где xxx.xxx.xxx.xxx - это IP-адрес нарушителя!

 Если нарушитель имеет динамический IP, сменил IP и ДДОСит дальше, то баним подсеть или несколько подсетей!

iptables -A INPUT -s xxx.xxx.xxx.0/24 -j DROP

 Пример:
 iptables -A INPUT -s 187.34.232.0/24 -j DROP -> Так мы забаним по iptables диапазон IP-адресов от 187.34.232.0 до 187.34.232.255


 Разбан так:

iptables -D INPUT -s xxx.xxx.xxx.xxx -j DROP


Примечание 1:
 Кстати, Бан по iptables вроде как не Банит на сервере CS:S, то есть Юзер, забаненный по iptables, сможет играть на вашем Серваке, но не сможет ДДОСить!
скопипасено здесь http://hlmod.ru/forum/zashita-igrovogo-servera/1178-ddos-zashita-linuxovskogo-servera-cherez-pravila-iptables.html

Оффлайн Megabytt

  • Любитель
  • *
  • Сообщений: 56
    • Просмотр профиля
Помогите никто не может зайти на сервер. Вот что у всех в консоли STEAM userid keysize is bogus (1436994564/1024.

 

Страница сгенерирована за 7.246 секунд. Запросов: 25.