LINUX.ORG.RU

Вопрос о сервере C.S. 1.6 и Linux

 , , ,


0

1

Здравствуйте. Игровой сервер C.S. 1.6 при запуске всегда пытается запустить файл steamcmd.sh. Это не обязательно, но, если файл существует, он его запускает. Я проверил, вписав в этот файл команду сервера Linux, не относящуюся к steamcmd и он выполнилась. Получается, юзер сможет выполнить свою команду, а мне этого не нужно. Вопрос заключается в том, как сделать, чтобы игровой сервер не пытался запустить файл steamcmd.sh? У меня есть вариант просто прописать md5sum на этот файл, и, если он изменен, ничего не будет работать. Но, по моему, этот способ так себе. Вопрос к тем, кто разбирается в серверах C.S. 1.6 и Linux, безопасно ли вообще давать доступ к корневой директории игрового сервера, а не просто к папке cstrike?



Последнее исправление: MrSullex (всего исправлений: 2)

Не вполне понял твою ситуацию, но например можно сделать файл неизменяемым (chattr +i /path/to/file)

MrClon ★★★★★
()
Ответ на: комментарий от MrClon

Ну вот, у меня есть возможность сделать его просто неизменяемым, но будет ли это корректно в данной ситуации? Вопрос еще в том, безопасно ли давать доступ к корневой директории игрового сервера, там находятся всякие .so файлы и папки с файлами. Но это уже к людям, которые разбираются в серверах C.S. 1.6

MrSullex
() автор топика
Ответ на: комментарий от MrSullex

там находятся всякие .so файлы

Ну т.е. исполняемые файлы. Кто захочет, сможет выполнить в системе что угодно с правами исполняемого файла игрового сервера.

PolarFox ★★★★★
()
Ответ на: комментарий от PolarFox

Вот как раз таки на самих исполняемых файлах у меня защита. Их там 3, если не ошибаюсь (hlds_linux, hlds_run, hltv). А .so тоже небезопасно? Это же вроде типа DLL на винде

MrSullex
() автор топика
Последнее исправление: MrSullex (всего исправлений: 1)
Ответ на: комментарий от MrSullex

А .so тоже небезопасно? Это же вроде типа DLL на винде

Ну да, как .dll на винде. Т.е. тоже файлы с исполняемым кодом, только без точки входа.

PolarFox ★★★★★
()
Ответ на: комментарий от PolarFox

Тогда вопрос в том, запустится ли .so файл в случае подмены. Допустим, сервер запускается через ./hlds_run, обработает ли он левый .so файл..

MrSullex
() автор топика
Ответ на: комментарий от MrSullex

Допустим, сервер запускается через ./hlds_run, обработает ли он левый .so файл.

Ну да? Воспринимай .so файлы так же как исполняемые, потому что они такие и есть. Раз .so там лежит, значит что-то его скорее всего грузит и использует.

PolarFox ★★★★★
()
Ответ на: комментарий от MrSullex

Вопрос еще в том, безопасно ли давать доступ к корневой директории игрового сервера

Давать доступ кому? Давать доступ какой? Давать доступ зачем?

MrClon ★★★★★
()
Ответ на: комментарий от PolarFox

Но, если у пользователя недостаточно прав, опасные команды не могут быть исполнены, я правильно понимаю?

MrSullex
() автор топика
Ответ на: комментарий от MrSullex

Главное, чтобы у пользователя не было возможности sudo использовать.

А вообще, если так беспокоишься, то процесс сервера cs можешь запустить изолировано в контейнере.

Zermond
()
Ответ на: комментарий от Zermond

Пользователь создается через useradd, ему установлен домашний каталог и права на него, не более. Команда запуска выполняется в рут, но через su -lc от имени пользователя. Безопасно ли это?

MrSullex
() автор топика
Последнее исправление: MrSullex (всего исправлений: 1)

ты что его от рута стартуеш?

xaTa ★★★
()
Ответ на: комментарий от Deleted

Это админы CS платят за раскрутку своего сервера. Чтобы сервер CS временно появился у игроков в поиске серверов игры, нужно купить на время место в поиске серверов у создателя сборки CS. Иначе на сервере не будет игроков и никто ничего админу не задонатит.

anonymous
()

Ерундой ты какой-то занимаешься. Либо пускай в докере, либо давай пользователям только RCON (админ cs сервера), а не доступ к файловой системе, не нужно колхозить, а то тебе там с этой контрой анус разорвут юные хакеры

menangen ★★★★★
()

hl.sh не забудь еще залочить

xDShot ★★★★★
()
Ответ на: комментарий от PolarFox

только без точки входа

«точка входа» это любая экспортируемая функция. сейчас исполняемые файлы уже PIE, те тупо .so экспортирующая main()

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.