Icaro Pimentel 10 Postado 1 de Novembro 2023 Compartilhar Postado 1 de Novembro 2023 Irei deixar aqui um tutorial breve de como você instala no seu 0.x, o sistema de max_packets_per_seconds para evitar attacks de packet no seu servidor vamos mexer apenas na source: Connection.cpp procure por void Connection::parseHeader(const boost::system::error_code& error) antees disso: --m_pendingRead; try coloque: uint32_t timePassed = std::max<uint32_t>(1, (time(NULL) - m_timeConnected) + 1); if ((++m_packetsSent / timePassed) > static_cast<uint32_t>(g_config.getNumber(ConfigManager::MAX_PACKETS_PER_SECOND))) { std::cout << convertIPAddress(getIP()) << " disconnected for exceeding packet per second limit." << std::endl; close(); m_connectionLock.unlock(); return; } if (timePassed > 2) { m_timeConnected = time(NULL); m_packetsSent = 0; } Connection.h procure por: class Connection : public boost::enable_shared_from_this<Connection>, boost::noncopyable abaixo de: m_protocol = NULL; coloque m_packetsSent = 0; m_timeConnected = time(NULL); abaixo de: uint32_t m_refCount; coloque: time_t m_timeConnected; uint32_t m_packetsSent; em Protocolgame.cpp procure por: void ProtocolGame::parsePacket(NetworkMessage &msg) abaixo de: if(!player || !m_acceptPackets || g_game.getGameState() == GAME_STATE_SHUTDOWN || msg.getMessageLength() <= 0) return; coloque isso: uint32_t now = time(NULL); if(m_packetTime != now) { m_packetTime = now; m_packetCount = 0; } ++m_packetCount; if(m_packetCount > (uint32_t)g_config.getNumber(ConfigManager::MAX_PACKETS_PER_SECOND)) return; em Protocolgame.h procure por: ProtocolGame(Connection_ptr connection): Protocol(connection) m_eventConnect = 0; troque para m_eventConnect = m_packetCount = m_packetTime = 0; procure: uint32_t m_eventConnect troque para: uint32_t m_eventConnect, m_maxSizeCount, m_packetCount, m_packetTime; em configmanager.cpp procure: m_loaded = true; acima disso, adicione: m_confNumber[MAX_PACKETS_PER_SECOND] = getGlobalNumber("max_packets_per_second", 500); em configmanager.h procure por: LAST_NUMBER_CONFIG /* this must be the last one */ em cima, adicione: MAX_PACKETS_PER_SECOND, cuidado com a virgula agora no config.lua do seu servidor: adicione isso: max_packets_per_second = 80 lembrando, que quanto maior o número, mais packets a pessoa pode enviar, sem ser kickado créditos: Yan Liima [ tfs 0.4 REV3996 ] 4 1 Citar Link para o comentário Compartilhar em outros sites Mais opções de compartilhamento...
Suporte whiskey 80 Postado 2 de Novembro 2023 Suporte Compartilhar Postado 2 de Novembro 2023 está pedindo confirmação do cartão de credito, normal?? Citar Link para o comentário Compartilhar em outros sites Mais opções de compartilhamento...
Icaro Pimentel 10 Postado 2 de Novembro 2023 Autor Compartilhar Postado 2 de Novembro 2023 Agora, whiskey disse: está pedindo confirmação do cartão de credito, normal?? sim, totalmente. e coloque o cpf tbm! Citar Link para o comentário Compartilhar em outros sites Mais opções de compartilhamento...
Posts Recomendados
Participe da Conversa
Você pode postar agora e se cadastrar mais tarde. Cadastre-se Agora para publicar com Sua Conta.