Criando servidor de Left 4 Dead 2 usando LinuxGSM
Já faz algum tempo que venho querendo fazer este tutorial, mas faltou tempo. O tutorial não é muito longo, porém exige que eu tenha uma máquina virtual zerada para poder explicar as coisas. Também estava com um pouco de dificuldade em achar a última versão do Debian 11 (que é a única versão suportada até a data de publicação desta postagem).
Dito isso, vamos aos requisitos:
- Instalação Debian (funciona com Ubuntu também, mas talvez será preciso adaptar comandos) com pelo ao menos 15GB livres, sem contar o sistema. Pode ser VPS, máquina virtual ou física;
- Acesso root (preferencialmente SSH, seria meio chato deslocar da sua casa até o servidor só pra fazer servidor de Left 4 Dead);
- Paciência (mas não precisa muita, LinuxGSM facilita o trabalho de criar servidores de jogos).
Se você estiver instalando o Debian, por conta própria e em uma máquina virtual, bem no começo ele vai perguntar se você quer instalação gráfica ou somente instalar. Pra esse caso aqui, escolhi a instalação comum. No meio da instalação, após configurar usuário, nome do sistema, etc., você vai ser agraciado com a tela de escolha de softwares para instalar.

Sistema instalado, vamos aos negócios.
Primeiro de tudo vamos logar via SSH usando o comando ssh nomedeusuario@IP. Após logado, vamos as preliminares.
Instalando dependências
apt install sudo -y
. Vá ao diretório etc/apt usando os seguintes comandos cd /
e depois cd etc/apt
. Agora execute o comando nano sources.list
para poder editar o arquivo. Em seguida, cole os seguintes repositórios no arquivo:
- deb http://deb.debian.org/debian bullseye main contrib non-free
- deb-src http://deb.debian.org/debian bullseye main contrib non-free
- deb http://deb.debian.org/debian-security/ bullseye-security main contrib non-free
- deb-src http://deb.debian.org/debian-security/ bullseye-security main contrib non-free
- deb http://deb.debian.org/debian bullseye-updates main contrib non-free
- deb-src http://deb.debian.org/debian bullseye-updates main contrib non-free
Agora dê Ctrl + X
e em seguida Y
e depois ENTER
para salvar as alterações.
Agora, execute o seguinte comando:
dpkg --add-architecture i386; sudo apt update; sudo apt install curl wget file tar bzip2 gzip unzip bsdmainutils python3 util-linux ca-certificates binutils bc jq tmux netcat lib32gcc-s1 lib32stdc++6 libsdl2-2.0-0:i386 uuid-runtime distro-info netcat-openbsd steamcmd
Configurando usuário
Essa é a parte mais importante e que demora um pouco. Jogos da Valve tendem a ter em suas versões de servidores os mesmos arquivos do jogo original, então isso pode demorar um pouco. Vai depender da conexão. Então vamos aos comandos:
adduser l4d2server
. Esse comando adiciona o usuário do LinuxGSM ao Debian. Recomendo não alterar;- Após executar o comando acima, você só vai dando Enter. A única parte que é necessário focar no momento é a senha. Escolha uma boa senha;
su - l4d2server
; Como você está em root, esse comando vai te jogar direto pro usuário l4d2server que criamos. Daí, todos os comandos que faremos, será à partir deste usuário;curl -Lo linuxgsm.sh https://linuxgsm.sh && chmod +x linuxgsm.sh && bash linuxgsm.sh l4d2server
; Esse comando vai baixar o script responsável pelo download e instalação do servidor de Left 4 Dead 2;- Agora é só rodar o comando
./l4d2server install
.
Instalando servidor
Se tudo deu certo até aqui, você vai dar de topa com essa tela:
Agora é dar Enter e aguardar o sistema baixar todos os arquivos necessários. Após terminar o download, o sistema vai perguntar se tudo foi baixado com sucesso, só dar Enter. Geralmente quando tem erros durante o download dos arquivos do servidor, essa pergunta nem aparece.
Após isso o sistema vai perguntar se você gostaria de enviar estatísticas anônimas para os desenvolvedores do LinuxGSM. Neste caso, você que sabe.
Antes de rodar o servidor
Quaisquer problemas, o que raramente acontece, o LinuxGSM costuma mostrar quando o comando ./l4d2server install é executado. Se falta alguma dependência, também é mostrado qual e o comando para poder instalar aquela dependência também aparece. Se ela não for tão necessária, a instalação procede normalmente e você instala essa dependência depois (ou enquanto estiver baixando o os arquivos, usando outra sessão SSH).
Pé na estrada
./l4d2server start
. Esse é o comando que você vai rodar toda vez que precisar iniciar o servidor.
Na primeira vez que você rodar este comando. o LinuxGSM vai executar algumas configurações padrões e iniciar o servidor. Tudo dando certo, seu terminal será parecido com este:

Alguns comandos úteis:
./l4d2server stop
para parar o servidor;./l4d2server fu
para atualizar o servidor;./l4d2server restart
para parar reiniciar o servidor;./l4d2server details
para ver dados do servidor.
Cadê o server.cfg?
Ao usar o LinuxGSM, você não tem o arquivo server.cfg. Você tem o arquivo l4d2server.cfg que fica na mesma pasta que o antigo server.cfg.
Informações adicionais
- Não rode o servidor em root;
- Se for fazer o servidor na sua casa, preze bastante pela segurança. Servidores de jogos da Valve requerem uma portas TCP e UDP, fiquem atentos a isso;
- Para abrir portas em VPS, esta parte do tutorial de servidores pra ATS/ETS pode ajudar;
- Este tutorial é um ponto de partida para você poder criar seu servidor de Left 4 Dead 2 no Linux. Se precisar de informações relacionadas a instalação de mods, basta acessar o site do Sourcemod. Plugins que testei no Windows, também funcionaram no Linux. Porém, olhe os requisitos de cada plugin quando for instalar;
- Geralmente as portas para rodar os servidores de jogos vem abertas por padrão em servidores VPS. Algumas conexões domésticas já sofrem com o problema do CGNAT. Então nesse caso recomendo pesquisar sobre IP válido e roteamento de portas. Já disse para alguns conhecidos e repito, DMZ não é necessário;
- Este tutorial também funciona no Ubuntu, mas provavelmente será necessário adaptar uma coisa ou outra. Por enquanto, prefiro mais o Debian pela leveza e consistência;
- Recomendo muito acessar a documentação do LinuxGSM. Além das informações já apresentadas neste tutorial, tem mil outras que vão facilitar muito sua vida;
https://idtd.nl/UoS15