Servidor Ragnarok CentOS: Como criar?
Neste post mostro o passo a passo de como criar um servidor profissional do jogo Ragnarok, utilizando o sistema operacional CentOS. Servidor Ragnarok CentOS
Hoje vou mostrar o passo a passo de como criar um servidor profissional do jogo Ragnarok, utilizando o sistema operacional CentOS. No final deste post, você estará apto a criar seu próprio Servidor Ragnarok CentOS.
Iremos baixar, compilar e executar o servidor rAthena no CentOS.
Por que usar o CentOS para criar um servidor Ragnarok?
A resposta é simples! O CentOS é uma distribuição Linux baseada em um dos sistemas operacionais mais estável e confiável que existe até hoje, o Red Hat Enterprise Linux.
Quando digo baseado, quero dizer que ele é uma cópia do Red Hat Enterprise Linux, porém você não precisa pagar a Red Hat pelo suporte.
Logo, você terá de graça, uma distribuição linux com qualidade corporativa para o seu servidor Ragnarok.
Na versão minimal, o CentOS vem com o mínimo possível para que o sistema funcione, utilizando pouco HD, Memória RAM e processamento. Com isso você tem a garantia de que os recursos da máquina serão gastos com o que realmente importa para você. Nesse caso, o servidor Ragnarok.
Requisitos - Servidor Ragnarok CentOS
- CentOS ou um Linux baseado em RPM que tem o comando 'yum'
- Acesso root ou acesso a uma conta que tenha privilégios de sudo
- Uma conexão com a Internet para baixar os pacotes de instalação
Pré-requisitos - Servidor Ragnarok CentOS
Todos esses comandos serão digitados na interface de linha de comando.
Instalação dos pré-requisitos do Servidor Ragnarok CentOS
- Faça login no seu servidor via SSH ou, se já estiver conectado a uma GUI, abra uma janela de terminal.
- Digite o seguinte comando (isto irá instalar GCC, Make, MySQL, arquivos de cabeçalho MySQL, MariaDB Server (versão Open Source do MySQL), arquivos de cabeçalho PCRE e arquivos de cabeçalho Zlib) ``` yum -y install gcc make mysql mysql-devel mariadb-server pcre-devel zlib-devel git nano ```
- (Opcional) digite o seguinte comando para instalar alguns pacotes adicionais ``` yum -y install unzip wget zip ```
Criar um usuário não root no Linux
Pelo princípio de privilégio mínimo, recomenda-se que você não execute o rAthena como root. Digite o seguinte comando para criar uma conta Linux não-root:
useradd --create-home --shell /bin/bash rathena4444
–create-home = cria o diretório inicial do usuário.
–shell /bin/bash = define seu shell de login para o Bash.
rathena4444 = o nome de login da nova conta Linux.
4444 = escolha seus próprios números aleatórios para tornar o nome de usuário exclusivo.
Defina uma senha para o novo usuário (execute este comando e siga as instruções):
passwd rathena4444
Configurar MariaDB (MySQL)
Definir uma senha de root e deixar o MariaDB mais seguro
Assim como no MySQL Server, a instalação padrão do MariaDB Server cria um usuário do MariaDB ‘root’ @ ‘localhost’ sem senha. É recomendável que você crie uma senha para o usuário root.
Executar o serviço MariaDB:
service mariadb start
Execute este comando e siga as instruções:
mysql_secure_installation
O primeiro passo vai pedir a senha do usuário root do seu MariaDB, basta teclar ENTER para seguir em frente.
O segundo passo vai perguntar se você quer alterar a senha do usuário root do seu MariaDB, tecle Y e depois ENTER.
Vai ser pedida a senha que você quer por no usuário root do seu MariaDB, digite a senha desejada e tecle ENTER.
Após ele vai pedir para você digitar a senha novamente, digite a senha que escolheu anteriormente e tecle ENTER.
Atenção: Anote esta senha, pois sem ela você terá problemas se precisar realizar alguma operação de usuário root no seu MariaDB.
O terceiro passo vai perguntar se você quer remover os usuários anônimos do seu MariaDB, tecle Y e depois ENTER.
O quarto passo vai perguntar se você quer desabilitar o acesso remoto ao seu MariaDB, utilizando o usuário root, tecle Y e depois ENTER.
O quinto passo vai perguntar se você quer remover o banco de dados de test e acesso a ele, tecle Y e depois ENTER.
O sexto e último passo irá perguntar se você quer recarregar as tabelas de privilégios do seu MariaDB, tecle Y e depois ENTER.
Pronto! MariaDB seguro!
Faça login no seu servidor MySQL como root
Quando solicitado, digite sua senha do usuário root do seu MariaDB.
mysql --user=root -p
Agora seu prompt deve ser semelhante a este (o prompt de comando do MariaDB):
MariaDB [(none)]>
Criar banco de dados SQL para rAthena
No prompt do MariaDB, digite isso para criar um banco de dados (substitua rathena4444 pelo nome de usuário Linux que você criou anteriormente):
CREATE DATABASE rathena4444_rag;
Crie um banco de dados separado para logs:
CREATE DATABASE rathena4444_log;
Configurar um usuário MariaDB para rAthena
No prompt do MariaDB, digite usso para criar um novo usuário do MaruaDB:
CREATE USER 'rathena4444'@'localhost' IDENTIFIED BY 'secretpassword';
rathena4444 = o nome do usuário do MySQL (nós o nomeamos o mesmo que o usuário do Linux para facilitar a identificação)
localhost = o nome do host ou IP do qual ele se conectará. Por segurança, definimos que ele só vai se conectar localmente.
secretpassword = a senha para este usuário MariaDB.
Conceda privilégios ao usuário MariaDB ‘rathena’:
GRANT SELECT,INSERT,UPDATE,DELETE ON rathena4444_rag.* TO 'rathena4444'@'localhost';
GRANT SELECT,INSERT ON rathena4444_log.* TO 'rathena4444'@'localhost';
Instalando o rAthena
Faça o login como seu usuário não root do Linux
O resto da configuração é feita como rathena4444 (o usuário do Linux que você criou).
- Deslogue do SSH como root (ou minimize a janela)
- Faça login no seu servidor via SSH como o usuário Linux rathena4444.
Clonagem do repositório rAthena
Você pode obter a versão mais recente do rAthena digitando o seguinte comando. Isto colocará rAthena em uma pasta chamada rAthena, mas você é livre para mudá-lo para o que quiser:
git clone https://github.com/rathena/rathena.git ~/rAthena
Importar tabelas do MariaDB
Altere o diretório para a pasta ‘sql-files’:
cd rAthena/sql-files/
Execute estes comandos (quando solicitado, digite sua senha de root do MariaDB):
mysql -user root -p rathena4444_rag < main.sql
mysql -user root -p rathena4444_rag < item_db.sql
mysql -user root -p rathena4444_rag < item_db2.sql
mysql -user root -p rathena4444_rag < mob_db.sql
mysql -user root -p rathena4444_rag < mob_db2.sql
mysql -u root -p rathena4444_log < logs.sql
NOTA: se você quiser usar DBs SQL diferentes para servidores login/char/map, esta é a lista de bancos de dados que cada servidor usa:
login-server: global_reg_value, ipbanlist, login, loginlog
map-server: mapreg, item_db, item_db2, mob_db, mob_db2
char-server: todo o resto + global_reg_value
Note que as tabelas global_reg_value são necessárias tanto pelo login-server como pelo char-server (embora possam ser tabelas diferentes)
Compilar Código-Fonte
Volte para a pasta raíz do projeto rAthena
cd ..
Compile o servidor rAthena
./configure
make server
Se você estiver usando o CentOS de 32 bits, use:
./configure --disable-64bit
Como recompilar
No futuro (depois de atualizar ou editar qualquer arquivo em / src) para recompilar, adicione ‘make clean’ antes de ‘make server’:
./configure
make clean
make server
Alterando o rAthena para acessar o MariaDB
Acesse a pasta conf, e abra o arquivo inter_athena.conf.
cd conf
nano inter_athena.conf
Altere as credenciais de banco de dados para as que você criou
// MySQL Login server
login_server_ip: 127.0.0.1
login_server_port: 3306
login_server_id: ragnarok
login_server_pw: ragnarok
login_server_db: ragnarok
login_codepage:
login_case_sensitive: no
ipban_db_ip: 127.0.0.1
ipban_db_port: 3306
ipban_db_id: ragnarok
ipban_db_pw: ragnarok
ipban_db_db: ragnarok
ipban_codepage:
// MySQL Character server
char_server_ip: 127.0.0.1
char_server_port: 3306
char_server_id: ragnarok
char_server_pw: ragnarok
char_server_db: ragnarok
// MySQL Map Server
map_server_ip: 127.0.0.1
map_server_port: 3306
map_server_id: ragnarok
map_server_pw: ragnarok
map_server_db: ragnarok
// MySQL Log Database
log_db_ip: 127.0.0.1
log_db_port: 3306
log_db_id: ragnarok
log_db_pw: ragnarok
log_db_db: ragnarok
log_codepage:
log_login_db: loginlog
No caso deste tutorial ficaria da seguinte forma:
// MySQL Login server
login_server_ip: 127.0.0.1
login_server_port: 3306
login_server_id: rathena4444
login_server_pw: secretpassword
login_server_db: rathena4444_rag
login_codepage:
login_case_sensitive: no
ipban_db_ip: 127.0.0.1
ipban_db_port: 3306
ipban_db_id: rathena4444
ipban_db_pw: secretpassword
ipban_db_db: rathena4444_rag
ipban_codepage:
// MySQL Character server
char_server_ip: 127.0.0.1
char_server_port: 3306
char_server_id: rathena4444
char_server_pw: secretpassword
char_server_db: rathena4444_rag
// MySQL Map Server
map_server_ip: 127.0.0.1
map_server_port: 3306
map_server_id: rathena4444
map_server_pw: secretpassword
map_server_db: rathena4444_rag
// MySQL Log Database
log_db_ip: 127.0.0.1
log_db_port: 3306
log_db_id: rathena4444
log_db_pw: secretpassword
log_db_db: rathena4444_log
log_codepage:
log_login_db: loginlog
Pronto! Presione Ctrl + X, aparecerá uma mensagem perguntando se deseja salvar as alterações, digite Y e tecle ENTER.
Inicie o seu servidor rAthena
Altere o modo de acesso do arquivo athena-start para que você possa executá-lo.
chmod a+x athena-start
Para iniciar
./athena-start start
Para parar
./athena-start stop
Para reiniciar
./athena-start restart
Este comando para e inicia o servidor novamente.
Conclusão
Como vimos, é bem simples criar um Servidor Ragnarok CentOS. Se tudo ocorreu como o esperado, você está com um servidor pronto para receber os jogadores!
O tutorial Servidor Ragnarok CentOS: Como criar? foi baseado no passo a passo oficial do rAthena: https://github.com/rathena/rathena/wiki/Install-on-Centos
Bônus
Veja como ganhar $ 75 em créditos na Digital Ocean e crie seu servidor Ragnarok CentOS, com 15 meses de hospedagem grátis!
Livros indicados
É vital que um profissional de T.I conheça boas práticas e saiba aplicá-las independente da linguagem ou ferramenta.
Pensando nisso, separei alguns títulos que fazem parte da minha bilioteca pessoal.
Aproveite e invista na sua educação, pois é a base de tudo para uma carreira incrível.
Deixe seu comentário
Atenção: Os comentários abaixo são de inteira responsabilidade de seus respectivos autores e não representam, necessariamente, a opinião do autor desse blog.
Não perca mais nenhum post!
Cadastre-se e receba novos posts diretamente em seu e-mail.
Escolhidos para você