Ir para conteúdo

Líderes

Conteúdo Popular

Exibindo conteúdo com a maior reputação em 07/31/22 em todas áreas

  1. Esse tutorial será composto por vários passo-a-passo (tópicos) de como montar toda a infraestrutura para deixar um servidor TFS 1.x online no Linux Ubuntu 22.04. INICIANDO A MÁQUINA LINUX É importante que toda vez que você entrar em sua máquina UBUNTU você atualize os pacotes já instalados para as versões mais recentes com o comando: sudo apt update E depois procure por novos pacotes de atualização para a versão do UBUNTU instalado. (em alguns casos irá perguntar se você realmente deseja instalar determinado pacote, digite Y (yes - sim) e depois ENTER. sudo apt upgrade PILHA LEMP - Inicialmente você deve entender que as versões mais atuais do TFS suportam apenas o MySQL como armazenamento de banco de dados e não usam mais "account manager" no jogo para criação de contas, portanto você deverá ter um site para isto. - Para usar um site você deverá instalar o pacote de pilha conhecido como LEMP, que basicamente é um grupo de programas com a abreviação de LINUX - ENGINE X (nginx) - MySQL ou MariaDB (no caso usaremos a MariaDB) - PHP. - Para quem é mais leigo, é interessante saber que o Nginx é um servidor web (irá mostrar as páginas web), o MariaDB é programa de armazenamento e gerenciamento de dados do banco de dados e o PHP serve para processar código e gerar conteúdo dinâmico para o servidor Web. 1 - TUTORIAL DE COMO INSTALAR O NGINX NO UBUNTU 22.04 2 - TUTORIAL DE COMO INSTALAR O MARIADB NO UBUNTU 22.04 3 - TUTORIAL DE COMO INSTALAR O PHP NO UBUNTU 22.04 PHPMYADMIN - Apesar de já termos instalado o programa MariaDB que armazena e gerencia os dados de seu projeto, sabemos que não é muito fácil manipular os dados apenas por comandos no prompt (ainda mais por leigos) .. diante disso, iremos usar o PHPMYADMIN, que através de um interface web, realiza as ações no banco de dados de forma fácil e prática ... - TUTORIAL DE COMO INSTALAR O PHPMYADMIN NO UBUNTU 22.04 AJUSTANDO O TIMEZONE - Muitas máquina vem com o horário diferente do horário de sua região, para ver a hora da máquina basta usar o comando: date Se estiver diferente, você poderá usar o seguinte comando: sudo timedatectl set-timezone America/Sao_Paulo Com o comando acima, você estará mudando a timezone para "America/Sao_Paulo", ou seja, ficará com o horário local do estado de São Paulo. Caso queira encontrar outra timezone, digite: timedatectl list-timezones Para sair da lista use CTRL+C. Aposta feita a alteração, é necessário reiniciar a máquina: sudo shutdown -r now E depois testar novamente. COMPILAR E CONFIGURAR TFS - TUTORIAL DE COMO COMPILAR E CONFIGURAR O TFS NO UBUNTU 22.04 INSTALAR E CONFIGURAR SITE Existem, hoje em dia, várias opções de sites para otservs, e com o tempo quero fazer um tutorial para cada um ... - TUTORIAL DE COMO INSTALAR E CONFIGURAR O ZNOTE ACC NO UBUNTU 22.04 Esse tópico estará em constante atualização .. e cada mudança irei informar nos comentários. Bom uso!
  2. Instalando o PHP no Ubuntu 22.04

    L3K0T reagiu a luanluciano93 por uma resposta no tópico

    1 ponto
    Olá, esse tutorial é uma parte do tópico principal: "Tutorial completo de infraestrutura para montar um servidor TFS 1.x no Ubuntu 22.04" ... Ele faz parte da 3º instalação da pilha LEMP no Ubuntu 22.04: o PHP. PASSO 1 - COMO INSTALAR O PHP Você já tem instalado o Nginx para exibir seu conteúdo web e o MySQL para armazenar e gerenciar seus dados. Agora, você pode instalar o PHP para processar os códigos e gerar conteúdo dinâmico para o servidor Web. - Enquanto o Apache incorpora o interpretador PHP em cada solicitação, o Nginx necessita de um programa externo para lidar com o processamento PHP e atuar como uma ponte entre o próprio interpretador PHP e o servidor web. Isso permite um desempenho global melhor na maioria dos sites baseados em PHP, mas exige configuração adicional. Será necessário instalar o php-fpm, que significa “Gerenciador de processos PHP fastCGI”, e dizer ao Nginx para enviar as solicitações PHP para esse software para processamento. - Adicionalmente, você precisará do php-mysql php-mysqlnd, um módulo PHP que permite ao PHP se comunicar com os bancos de dados baseados em MySQL. Os pacotes básicos do PHP serão instalados automaticamente como dependências. Para instalar os pacotes php-fpm e php-mysql, execute e depois aperte Y para aceitar a instalação: sudo apt install php-fpm php-mysqlnd Agora confira o status do PHP-FPM para ver se ele está corretamente ativo: sudo systemctl status php8.1-fpm Deve aparecer algo assim: Como vocês podem ver em verde: active (running), ou seja, está ativo e funcionando. PASSO 2 - CONFIGURAÇÕES DO PHP JUNTO AO NGINX Crie duas pastas com os comandos: sudo mkdir /home/otserv sudo mkdir /home/www A pasta criada "otserv" é onde iremos deixar os arquivos do servidor e a pasta "www" que irá conter os arquivos do site. Usando o WinSCP, vá até a pasta /etc/nginx/sites-available/ e substitua o conteúdo do arquivo default por esse: https://raw.githubusercontent.com/luanluciano93/ESTUDOS/master/infraestrutura/default_nginx Quando estiver pronto, recarregue o nginx para aplicar as alterações: sudo systemctl reload nginx Agora, com o WinSCP vá até /home/www/ e crie um arquivo com o nome index.php e coloque isso dentro: <?php phpinfo(); ?> Após feito isso, entre com seu IP ou DOMÍNIO pelo navegador, e deverá aparecer as informações do PHP. PASSO 3 - CONFIGURAÇÕES DO PHP Com o WinScp, vá até o arquivo /etc/php/8.1/fpm/php.ini e altere: ignore_repeated_errors = Off Para: ignore_repeated_errors = On Altere: ;date.timezone = Para: date.timezone = America/Sao_Paulo Altere: post_max_size = 8M Para: post_max_size = 64M Altere: upload_max_filesize = 2M Para: upload_max_filesize = 64M Após feito as alterações use o comando para dar reload no php-fpm: sudo systemctl reload php8.1-fpm A princípio é isso! Siga as atualizações no tópico principal: "Tutorial completo de infraestrutura para montar um servidor TFS 1.x no Ubuntu 22.04" ... Fontes: - https://www.digitalocean.com/community/tutorials/how-to-install-linux-nginx-mysql-php-lemp-stack-on-ubuntu-20-04-pt - https://conectandonet.com.br/blog/como-instalar-a-pilha-lemp-no-ubuntu-20-04-server-desktop/
  3. Instalando o NGINX no Ubuntu 22.04

    L3K0T reagiu a luanluciano93 por uma resposta no tópico

    1 ponto
    Olá, esse tutorial é uma parte do tópico principal: "Tutorial completo de infraestrutura para montar um servidor TFS 1.x no Ubuntu 22.04" ... Ele faz parte da 1º instalação da pilha LEMP no Ubuntu 22.04: o NGINX. PASSO 1 - COMO INSTALAR O SERVIDOR WEB NGINX Para mostrar páginas Web aos visitantes do seu site, vamos usar o Nginx, um servidor Web de alto desempenho. Usaremos o seguinte comando para instalar o Nginx: sudo apt install nginx Quando solicitado, digite Y para confirmar se deseja instalar o Nginx. Assim que a instalação terminar, o servidor web Nginx estará ativo e em execução em sua máquina. Agora confira o status do Nginx para ver se ele está corretamente ativo: sudo systemctl status nginx Deve aparecer algo assim: Como vocês podem ver em verde: active (running), ou seja, está ativo e funcionando. Você pode também conferir a versão do nginx instalado com o comando: nginx -v Eu obtive como resposta em 04JUL22: nginx version: nginx/1.18.0 (Ubuntu) PASSO 2 - LIBERANDO AS PORTAS NO FIREWALL Aqui a resposta seria bem ampla, pois você deve saber qual o tipo de firewall está usando. Se você tiver o firewall UFW habilitado, você precisará permitir conexões com o Nginx. O Nginx registra alguns perfis diferentes de aplicações no UFW após a instalação. Para verificar quais perfis do UFW estão disponíveis, execute: sudo ufw app list Irá aparecer as opções: É recomendável que você habilite o perfil mais restritivo que, ainda assim, permitirá o tráfego que você precisa. Caso você ainda não tenha configurado o SSL (HTTPS) para seu servidor, você precisará apenas permitir o tráfego HTTP regular na porta 80 usando o comando: sudo ufw allow 'Nginx HTTP' Verifique a mudança executando: sudo ufw status No google cloud o firewall UFW é desativado por padrão, então ative-o antes com o comando e posterior digite Y para confirmar: sudo ufw enable O google cloud é necessário também liberar as portas de acesso no firewall que é administrado pela plataforma do site deles, como explicado neste tutorial: GOOGLE COUD PLATAFORM. PASSO 3 - TESTANDO SE O NGINX ESTÁ FUNCIONANDO Entre pelo IP ou pelo DOMINIO da sua máquina pelo navegador, se aparecer a seguinte página está tudo correto. Caso não carregue esta página, você provavelmente está com bloqueio no firewall (firewall diferente dos que eu citei acima) A princípio é isso! Siga as atualizações no tópico principal: "Tutorial completo de infraestrutura para montar um servidor TFS 1.x no Ubuntu 22.04" ... Fontes: - https://www.digitalocean.com/community/tutorials/how-to-install-linux-nginx-mysql-php-lemp-stack-on-ubuntu-20-04-pt - https://conectandonet.com.br/blog/como-instalar-a-pilha-lemp-no-ubuntu-20-04-server-desktop/
  4. adicionando tempo a storage

    carloos reagiu a Carlinhous1996 por uma resposta no tópico

    1 ponto
    galera do tk alguem poderia me ajudar a colocar um tempo nessa storage por favor? queria que ela a cada 6 dias expirasse a storage script:
  5. Ah sim, estava liberado! minha questão era sobre qual client usar e, é preciso alterá-lo para conectar. Depois de algumas pesquisas encontrei a solução, entretanto te agradeço pela publicação bem explicada. Como sugestão, acredito que possa anexar mais uma etapa para a conexão, esses modelos novos de OT são um pouco mais complexos, o último que havia criado foi em 2013.
  6. adicionando tempo a storage

    carloos reagiu a xMonkey por uma resposta no tópico

    1 ponto
    Olá @Carlinhous1996, boa noite! Você não explicou exatamente quais storages gostaria de adicionar o tempo. Ao meu ver, seria para receber a recompensa? Fiz as modificações para só receber as recompensas caso a Storage tenha resetado, após 6 dias. Também fiz uma pequena organização ao código. -- Created by pc98 -- Edited by xMonkey local config = { castle_one_name = "Castle", -- Nome do castelo 1 storages = {154154,54321,123123, 123124}, -- Storages ( se vc eh iniciante, deixe como está...) -- REWARDS I N D I V I D U A I S --------- premio_por_vezes = 1, -- Premio por vezes de conquista de castelo. (1) = Ativo (0) = Desativa. premio_vezes = 3, -- Caso ativo, a quantidade de conquista que o player tem, para ganhar PREMIO. premio = 10522, -- ID do Premio premio_cont = 1, -- Quantidade do Premio premio_reset = 1, -- Resetar o contador do premio depois que atingir a meta?? (1) = SIM (0) = NAO resetReward = {6, "day"} -- Tempo para resetar a storage e receber novamente a recompensa } -- Para deixar mais organizado, jogar essas funções em LIB (se jogar em LIB, remover o local na frente de function) -- Custom Functions (inicio) local function mathtime(table) -- by dwarfer local unit = {"sec", "min", "hour", "day"} for i, v in pairs(unit) do if v == table[2] then return table[1]*(60^(v == unit[4] and 2 or i-1))*(v == unit[4] and 24 or 1) end end return error("Bad declaration in mathtime function.") end local function getTimeString(self) local format = { {'dia', self / 60 / 60 / 24}, {'hora', self / 60 / 60 % 24}, {'minuto', self / 60 % 60}, {'segundo', self % 60} } local out = {} for k, t in ipairs(format) do local v = math.floor(t[2]) if(v > 0) then table.insert(out, (k < #format and (#out > 0 and ', ' or '') or ' e ') .. v .. ' ' .. t[1] .. (v ~= 1 and 's' or '')) end end local ret = table.concat(out) if ret:len() < 16 and ret:find('segundo') then local a, b = ret:find(' e ') ret = ret:sub(b+1) end return ret end -- Custom Functions (fim) function onUse(cid, item, frompos, item2, topos) local sto_ativ, position = getGlobalStorageValue(config.storages[2]), getCreaturePosition(cid) if (isPlayerGuild(cid) == true) then if (sto_ativ == 1 or sto_ativ == -1) then guildname = getPlayerGuildName(cid) guild = getPlayerGuildId(cid) guild_sto = getGlobalStorageValue(config.storages[3]) if (guild ~= guild_sto) then setPlayerStorageValue(cid, guild_sto, guild) if (getPlayerStorageValue(cid, config.storages[1]) == -1) then setPlayerStorageValue(cid, config.storages[1], 0) end setGlobalStorageValue(config.storages[3], getPlayerGuildId(cid)) setPlayerStorageValue(cid,config.storages[1], getPlayerStorageValue(cid, config.storages[1]) + 1) sto_vezes_total = getPlayerStorageValue(cid, config.storages[1]) doBroadcastMessage("O(a) "..getCreatureName(cid).." acabou de conquistar o ".. config.castle_one_name .." para a guild \"".. guildname .."\" pela ".. sto_vezes_total .."ª vez(s).", 22) doSendMagicEffect(position, 39) doRemoveItem(item.uid, 1) if (config.premio_por_vezes == 1) then if (getPlayerStorageValue(cid, config.storages[4]) - os.time() > 0) then doPlayerSendTextMessage(cid, 18, "Voce deve aguardar ".. getTimeString(getPlayerStorageValue(cid, config.storages[4]) - os.time()) .." para receber a recompensa novamente.") return true end if (getPlayerStorageValue(cid, config.storages[1]) == config.premio_vezes) then if (getItemWeightById(config.premio, 1) <= getPlayerFreeCap(cid)) then doBroadcastMessage("O ".. getCreatureName(cid) .." ganhou uma(o) ".. getItemNameById(config.premio) .." como recompensa das suas ".. config.premio_vezes .." conquistas!", 21) doPlayerAddItem(cid, config.premio, config.premio_cont) doPlayerSendTextMessage(cid, 18, "Voce recebeu o(a) ".. getItemNameById(config.premio) .." como recompensa das suas ".. config.premio_vezes .." conquistas!") if config.premio_reset == 1 then setPlayerStorageValue(cid,config.storages[1], 0) end setPlayerStorageValue(cid, config.storages[4], os.time() + mathtime(config.resetReward)) else doPlayerSendTextMessage(cid, 18, "Voce nao tem capacidade para ganhar o item. Vamos verificar novamente em 10 segundos!") addEvent(additem, 10000, cid, config.premio, config.premio_cont, config.premio_reset) end end end else doBroadcastMessage("O(a) ".. getCreatureName(cid) .." acabou de conquistar o ".. config.castle_one_name .." para a guild \"".. guildname .."\" pela ".. sto_vezes_total .."ª vez(s).", 22) doSendMagicEffect(position, 39) end else doPlayerSendCancel(cid, "O sistema está desativado") end else doPlayerSendCancel(cid, "É nescessario ter guild para dominar o castelo!") doSendMagicEffect(position, 2) end end function additem(cid, config.premio, config.premio_cont, config.premio_reset) if (not isPlayer(cid)) then stopEvent(additem) return true end if (getItemWeightById(config.premio, 1) <= getPlayerFreeCap(cid)) then doPlayerAddItem(cid, config.premio, config.premio_cont) doPlayerSendTextMessage(cid, 18, "Voce recebeu o(a) ".. getItemNameById(config.premio) .." como recompensa das suas ".. config.premio_vezes .." conquistas!") if (config.premio_reset == 1) then setPlayerStorageValue(cid, config.storages[1], 0) end setPlayerStorageValue(cid, config.storages[4], os.time() + mathtime(config.resetReward)) stopEvent(additem) else doPlayerSendTextMessage(cid, 18, "Voce nao tem capacidade para receber o item. Verificando novamente em 10 segundos!") addEvent(additem, 10000, cid) end end function isPlayerGuild(cid) if (getPlayerGuildName(cid) ~= "") then return true else return false end end
  7. Instalando a MariaDB no Ubuntu 22.04

    thepops reagiu a luanluciano93 por uma resposta no tópico

    1 ponto
    Olá, esse tutorial é uma parte do tópico principal: "Tutorial completo de infraestrutura para montar um servidor TFS 1.x no Ubuntu 22.04" ... Ele faz parte da 2º instalação da pilha LEMP no Ubuntu 22.04: a MariaDB. PASSO 1 - COMO INSTALAR O SERVIDOR DE BANCO DE DADOS MariaDB O MariaDB é um sistema de gerenciamento de banco de dados de código aberto, usado com frequência como uma alternativa ao MySQL. Ele é desenvolvido por ex-membros da equipe do MySQL que estão preocupados que o Oracle possa transformar o MySQL em um produto de código fechado. Digite o seguinte comando para instalar o MariaDB no Ubuntu 22.04, após iniciar, é necessário digitar Y para prosseguir ... sudo apt install mariadb-server Depois de instalado, o servidor MariaDB deve ser automaticamente visualizado. Use o comando a seguir para verificar seu status: sudo systemctl status mariadb Irá aparecer o seguinte resultado: Como vocês podem ver em verde: active (running), ou seja, está ativo e funcionando. Você pode também conferir a versão do MariaDB instalado com o comando: mariadb --version Eu obtive como resposta em 05JUL22: mariadb Ver 15.1 Distrib 10.6.7-MariaDB PASSO 2 - CONFIGURANDO O MARIADB O próximo passo será executar o script de segurança incluído. Esse script modifica algumas das opções padrões menos seguras referentes, por exemplo, a logins root remotos e usuários de exemplo. Execute o script de segurança: sudo mysql_secure_installation Isso levará você a uma série de prompts onde é possível fazer algumas alterações nas opções de segurança de sua instalação do MariaDB. O primeiro prompt pedirá que digite a senha atual do root do banco de dados. Como ainda não configuramos uma senha, pressione ENTER para indicar “nenhuma”, Em seguida, o sistema irá perguntar se você quer usar o unix_socket, pois ele garante que ninguém possa fazer o login no usuário root do MARIADB sem a devida autorização. Digite que sim (Y) Ativar a autenticação unix_socket? [S/n] Em seguida, digite Y para definir a senha raiz do servidor MariaDB. ATENÇÃO: A SENHA QUE VOCÊ DEFINIR SERÁ A SENHA DO SERVIDOR SQL, ELA SERÁ USADA PARA CONEXÃO DO SITE E DO SERVIDOR AO BANCO DE DADOS! GUARDE-A BEM! Em seguida, você pode pressionar ENTER (com ENTER é escolhido a resposta padrão, que sempre é mostrada em maiúsculo. Nesse caso será o Y) para responder a todas as perguntas restantes: - Remover usuários anônimos? [Sim/n] - Não permitir login root remotamente? [Sim/n] - Remover banco de dados de teste e acesso a ele? [Sim/n] - Recarregar as tabelas de privilégios garantirá que todas as alterações feitas até agora entrará em vigor imediatamente. Recarregar tabelas de privilégios agora? [Sim/n] Esta etapa é um requisito básico para a segurança do banco de dados MariaDB. A princípio é isso! Siga as atualizações no tópico principal: "Tutorial completo de infraestrutura para montar um servidor TFS 1.x no Ubuntu 22.04" ... Fontes: - https://conectandonet.com.br/blog/como-instalar-a-pilha-lemp-no-ubuntu-20-04-server-desktop/ - https://www.digitalocean.com/community/tutorials/how-to-install-mariadb-on-ubuntu-20-04-pt
  8. 1 ponto
    Olá, esse tutorial é uma parte do tópico principal: "Tutorial completo de infraestrutura para montar um servidor TFS 1.x no Ubuntu 22.04" ... Aqui ensinaremos como instalar o PHPMYADMIN. PASSO 1 - COMO INSTALAR O PHPMYADMIN Embora muitos usuários precisam da funcionalidade de um sistema de gerenciamento de banco de dados (como o MariaDB, por exemplo), talvez não se sintam à vontade para interagir com o sistema unicamente a partir do prompt. Diante disto, o phpMyAdmin foi criado para que os usuários possam interagir com o MariaDB através de uma interface Web. - Neste guia, discutiremos como instalar e proteger o phpMyAdmin para que você possa usá-lo com segurança para gerenciar seus bancos de dados em um sistema Ubuntu 22.04. Execute o seguinte comando para instalar o phpmyadmin e posterior digite Y para aprovar a instalação. sudo apt install phpmyadmin Note que o processo de instalação exige que você faça algumas escolhas para configurar o phpMyAdmin corretamente. Analisaremos essas opções em instantes: - Você será solicitado a escolher um servidor da Web para configurar. Como estamos usando o Nginx, devemos apenas pressionar TAB, depois de OK e depois avançar para a próxima etapa. Depois disso, você será perguntado se deve usar dbconfig-common para configurar o banco de dados do aplicativo. Selecione YES. Você também será solicitado a criar uma senha. Aqui você pode deixar em branco e obter uma senha aleatória no phpMyAdmin. Apenas aperte ENTER. A instalação terminará. Você precisará criar um atalho dos arquivos de instalação para o diretório raiz do seu servidor, para que o servidor nginx encontre e atenda corretamente os arquivos phpMyAdmin: sudo ln -s /usr/share/phpmyadmin /home/www PASSO 2 - CRIANDO USUÁRIO E SENHA PARA O PHPMYADMIN - Nas última versões do servidor MariaDB você não poderá fazer login no phpMyAdmin usando a conta root do MariaDB e receberá um erro "Acesso negado para usuário 'root'@'localhost'". - Em vez disso, você deve criar uma nova conta de "super usuário" apenas para o phpMyAdmin. Para criar um "super usuário" faça o login no MariaDB pelo terminal usando a senha de root do MariaDB: sudo mariadb Uma vez logado, adicione um novo "super usuário" MariaDB com o nome de usuário de sua escolha. Neste exemplo, defina o nome do novo usuário onde está "tester" e defina a nova senha deste usuário: CREATE USER 'tester'@'localhost' IDENTIFIED BY 'nova_senha_aqui'; Agora, conceda privilégios de "super usuário" ao seu novo usuário "tester" (não se esqueça de mudar o nome do usuário no comando): Uma vez logado, adicione um novo "super usuário" MariaDB com o nome de usuário de sua escolha. Neste exemplo, defina o nome do novo usuário onde está "tester" e defina a nova senha deste usuário: GRANT ALL PRIVILEGES ON *.* TO 'tester'@'localhost'; E por fim, saia do MariaDB com o comando: exit Agora você deve poder acessar o phpMyAdmin usando esta nova conta de usuário e senha. PASSO 3 - PROTEGENDO O PHPMYADMIN Vá até /home/www onde está o atalho do phpmyadmin e renomeie a pasta para um nome bem incomum do seu gosto, como por exemplo: vamolameuparcacadeophpmyadmin Desta forma, para acessar o phpmyadmin do navegador terá que usar o endereço IP/vamolameuparcacadeophpmyadmin A princípio é isso! Siga as atualizações no tópico principal: "Tutorial completo de infraestrutura para montar um servidor TFS 1.x no Ubuntu 22.04" ... Fontes: - https://www.digitalocean.com/community/tutorials/how-to-install-and-secure-phpmyadmin-on-ubuntu-20-04-pt - https://www.letscloud.io/community/como-instalar-e-proteger-o-phpmyadmin-com-nginx-em-um-ubuntu - https://devanswers.co/install-secure-phpmyadmin-nginx-ubuntu-20-04/ Editado agora por luanluciano93 (veja o histórico de edições)
Líderes está configurado para São Paulo/GMT-03:00

Informação Importante

Confirmação de Termo