Ir para conteúdo
  • 0
Yonie

Infraestrutura Servidor Online erro Account name or password is not correct.

Pergunta

Yonie    0
Yonie

Não consegui definir este erro, coloquei em infraestrutura, peço por gentileza, caso esteja em um local inadequado que realoquem a pergunta. Grato e desculpe-me caso seja a seção incorreta!

Antes de fazer a sua pergunta, tenha certeza de ter lido as regras da seção e o guia abaixo:

https://forums.otserv.com.br/index.php?/forums/topic/168583-regras-da-seção/

https://forums.otserv.com.br/index.php?/forums/topic/165121-como-fazer-uma-pergunta-ou-o-grande-guia-do-usuário-com-dúvidas/

Descreva em algumas palavras a base utilizada. (Nome do servidor / Nome do cliente / Nome do website / etc.).

SERVIDOR: OTServ 12x (do fórum)
SITE: MyAac (do fórum)

VPS: Google Cloud 4 núcleos 16gb ram
OS: Debian 9

Base:

SERVIDOR: OTServ 12x (do fórum)
SITE: MyAac (do fórum)

VPS: Google Cloud 4 núcleos 16gb ram
OS: Debian 9

Qual é a sua pergunta?

Olá galera, gostaria de pedir ajuda de vocês, estou tendo um problema com meu ot já desinstalei e instalei na VPS, todas as portas estão liberadas, todas configurações feitas corretamente, tudo foi seguido a risca de acordo com os tutoriais do fórum, todos feitos pelo @Majesty. Meu site está on, meu servidor starta sem erros, o site mostra que o char foi criado e mostra que o servidor está online ou não. Ao tentar logar no client (tutorial de como mudar o ip feito pelo Majesty também) me deparo com o seguinte erro: Account name or password is not correct.

Irei disponibilizar meus scripts do config.lua, login.php, config.php, config.local.php e algumas prints do site mostrando que ele reconhece o servidor.

 

Você tem o código disponível? Se tiver poste-o na caixa de código que está dentro do spoiler abaixo:

Spoiler

Config.lua :

Spoiler

-- Combat settings
-- NOTE: valid values for worldType are: "pvp", "no-pvp" and "pvp-enforced"
worldType = "pvp"
hotkeyAimbotEnabled = true
protectionLevel = 7
pzLocked = 60 * 1000
removeChargesFromRunes = true
removeChargesFromPotions = true
removeWeaponAmmunition = true
removeWeaponCharges = true
timeToDecreaseFrags = 45 * 24 * 60 * 60
whiteSkullTime = 15 * 60 * 1000
stairJumpExhaustion = 2 * 1000
experienceByKillingPlayers = false
expFromPlayersLevelRange = 75
dayKillsToRedSkull = 3
weekKillsToRedSkull = 5
monthKillsToRedSkull = 10
redSkullDuration = 30
blackSkullDuration = 45
orangeSkullDuration = 7

-- Connection Config
-- NOTE: maxPlayers set to 0 means no limit
-- NOTE: MaxPacketsPerSeconds if you change you will be subject to bugs by WPE, keep the default value of 25
ip = "35.247.231.90"
bindOnlyGlobalAddress = false
loginProtocolPort = 7171
gameProtocolPort = 7172
statusProtocolPort = 7171
maxPlayers = 0
motd = "Bem vindo ao OTServBR-Global!"
onePlayerOnlinePerAccount = true
allowClones = false
serverName = "OTServBR-Global"
statusTimeout = 5 * 1000
replaceKickOnLogin = true
maxPacketsPerSecond = 25
maxItem = 2000
maxContainer = 100

--- Version
clientVersion = 1240
clientVersionStr = "12.40"

-- Depot Limit
freeDepotLimit = 2000
premiumDepotLimit = 10000
depotBoxes = 18

-- GameStore
gamestoreByModules = true

-- Deaths
-- NOTE: Leave deathLosePercent as -1 if you want to use the default
-- death penalty formula. For the old formula, set it to 10. For
-- no skill/experience loss, set it to 0.
deathLosePercent = -1

-- Houses
-- NOTE: set housePriceEachSQM to -1 to disable the ingame buy house functionality
-- Periods: daily/weekly/monthly/yearly/never
housePriceEachSQM = 1000
houseRentPeriod = "never"

-- Item Usage
timeBetweenActions = 200
timeBetweenExActions = 1000

-- Push Delay
pushDelay = 1000
pushDistanceDelay = 1500

-- Map
-- NOTE: set mapName WITHOUT .otbm at the end
-- NOTE: unzip the map world.rar
mapName = "otservbr"
mapAuthor = "OTServBR"

-- Market
marketOfferDuration = 30 * 24 * 60 * 60
premiumToCreateMarketOffer = true
checkExpiredMarketOffersEachMinutes = 60
maxMarketOffersAtATimePerPlayer = 100

-- MySQL
mysqlHost = "127.0.0.1"
mysqlUser = "otserv"
mysqlPass = "MINHA SENHA"
mysqlDatabase = "otservbrglobal"
mysqlPort = 3306
mysqlSock = ""

-- Misc.
allowChangeOutfit = true
freePremium = true
kickIdlePlayerAfterMinutes = 15
idleWarningTime = 10 * 60 * 1000
idleKickTime = 15 * 60 * 1000
maxMessageBuffer = 4
emoteSpells = false
classicEquipmentSlots = false
allowWalkthrough = true
coinPacketSize = 25
coinImagesURL = "http://127.0.0.1/images/store/"
classicAttackSpeed = false
showScriptsLogInConsole = false

-- Server Save
-- NOTE: serverSaveNotifyDuration in minutes
serverSaveNotifyMessage = true
serverSaveNotifyDuration = 5
serverSaveCleanMap = false
serverSaveClose = false
serverSaveShutdown = true

-- Rates
-- NOTE: rateExp is used as a fallback only
-- To configure experience rate see file data/stages.lua
rateExp = 1
rateSkill = 50
rateLoot = 3
rateMagic = 25
rateSpawn = 1

-- Monster rates
rateMonsterHealth = 1.0
rateMonsterAttack = 1.0
rateMonsterDefense = 1.0

-- Monsters
deSpawnRange = 2
deSpawnRadius = 50

-- Stamina
staminaSystem = true

-- Scripts
warnUnsafeScripts = true
convertUnsafeScripts = true

-- Startup
-- NOTE: defaultPriority only works on Windows and sets process
-- priority, valid values are: "normal", "above-normal", "high"
defaultPriority = "high"
startupDatabaseOptimization = true

-- Status server information
ownerName = "OTServBR-Global"
ownerEmail = ""
url = "https://github.com/opentibiabr/otservbr-global"
location = "South America"
 

config.php:

Spoiler

<?php
/**
 * This is MyAAC's Main Configuration file
 *
 * All the default values are kept here, you should not modify it but use
 * a config.local.php file instead to override the settings from here.
 *
 * This is a piece of PHP code so PHP syntax applies!
 * For boolean values please use true/false.
 *
 * Minimally 'server_path' directive have to be filled, other options are optional.
 *
 * @package   MyAAC
 * @author    Slawkens <[email protected]>
 * @copyright 2019 MyAAC
 * @link     https://my-aac.org
 */

$config = array(
    // directories & files
    'server_path' => '', // path to the server directory (same directory where config file is located)

    /**
     * Environment Setting
     *
     * if you use this script on your live server - set to 'prod' (production)
     * if you want to test and debug the script locally, or develop plugins, set to 'dev' (development)
     * WARNING: on 'dev' cache is disabled, so site will be significantly slower !!!
     * WARNING2: on 'dev' all PHP errors/warnings are displayed
     * Recommended: 'prod' cause of speed (page load time is better)
     */
    'env' => 'prod', // 'prod' for production and 'dev' for development

    'template' => 'kathrine', // template used by website (kathrine, tibiacom)
    'template_allow_change' => true, // allow users to choose their own template while browsing website?

    'vocations_amount' => 4, // how much basic vocations your server got (without promotion)

    // what client version are you using on this OT?
    // used for the Downloads page and some templates aswell
    'client' => 1098, // 954 = client 9.54

    'session_prefix' => 'myaac_', // must be unique for every site on your server
    'friendly_urls' => false, // mod_rewrite is required for this, it makes links looks more elegant to eye, and also are SEO friendly (example: https://my-aac.org/guilds/Testing instead of https://my-aac.org/?subtopic=guilds&name=Testing). Remember to rename .htaccess.dist to .htaccess
    'gzip_output' => false, // gzip page content before sending it to the browser, uses less bandwidth but more cpu cycles

    // gesior backward support (templates & pages)
    // allows using gesior templates and pages with myaac
    // might bring some performance when disabled
    'backward_support' => true,

    // head options (html)
    'meta_description' => 'Tibia is a free massive multiplayer online role playing game (MMORPG).', // description of the site
    'meta_keywords' => 'free online game, free multiplayer game, ots, open tibia server', // keywords list separated by commas
    'title_separator' => ' - ',

    // footer
    'footer' => ''/*'<br/>Your Server &copy; 2016. All rights reserved.'*/,

    'language' => 'en', // default language (currently only 'en' available)
    'language_allow_change' => false,

    'visitors_counter' => true,
    'visitors_counter_ttl' => 10, // how long visitor will be marked as online (in minutes)
    'views_counter' => true,

    // cache system. by default file cache is used
    'cache_engine' => 'auto', // apc, apcu, eaccelerator, xcache, file, auto, or blank to disable.
    'cache_prefix' => 'myaac_', // have to be unique if running more MyAAC instances on the same server (except file system cache)

    // database details (leave blank for auto detect from config.lua)
    'database_host' => '',
    'database_port' => '', // leave blank to default 3306
    'database_user' => '',
    'database_password' => '',
    'database_name' => '',
    'database_log' => false, // should database queries be logged and and saved into system/logs/database.log?
    'database_socket' => '', // set if you want to connect to database through socket (example: /var/run/mysqld/mysqld.sock)
    'database_persistent' => false, // use database permanent connection (like server), may speed up your site

    // multiworld system (only TFS 0.3)
    'multiworld' => false, // use multiworld system?
    'worlds' => array( // list of worlds
        //'1' => 'Your World Name',
        //'2' => 'Your Second World Name'
    ),

    // images
    'outfit_images_url' => 'http://outfit-images.ots.me/outfit.php', // set to animoutfit.php for animated outfit
    'item_images_url' => 'http://item-images.ots.me/1092/', // set to images/items if you host your own items in images folder

    // account
    'account_management' => true, // disable if you're using other method to manage users (fe. tfs account manager)
    'account_create_auto_login' => false, // auto login after creating account?
    'account_create_character_create' => true, // allow directly to create character on create account page?
    'account_mail_verify' => false, // force users to confirm their email addresses when registering account
    'account_mail_unique' => true, // email addresses cannot be duplicated? (one account = one email)
    'account_premium_days' => 0, // default premium days on new account
    'account_premium_points' => 0, // default premium points on new account
    'account_welcome_mail' => true, // send welcome email when user registers
    'account_mail_change' => 2, // how many days user need to change email to account - block hackers
    'account_country' => true, // user will be able to set country of origin when registering account, this information will be viewable in others places aswell
    'account_country_recognize' => true, // should country of user be automatically recognized by his IP? This makes an external API call to http://ipinfo.io
    'account_change_character_name' => false, // can user change their character name for premium points?
    'account_change_character_name_points' => 30, // cost of name change
    'account_change_character_sex' => false, // can user change their character sex for premium points?
    'account_change_character_sex_points' => 30, // cost of sex change
    'characters_per_account' => 10,    // max. number of characters per account

    // mail
    'mail_enabled' => false, // is aac maker configured to send e-mails?
    'mail_address' => '[email protected]', // server e-mail address (from:)
    'mail_admin' => '[email protected]', // admin email address, where mails from contact form will be sent
    'mail_signature' => array( // signature that will be included at the end of every message sent using _mail function
        'plain' => ""/*"--\nMy Server,\nhttp://www.myserver.com"*/,
        'html' => ''/*'<br/>My Server,\n<a href="http://www.myserver.com">myserver.com</a>'*/
    ),
    'smtp_enabled' => false, // send by smtp or mail function (set false if use mail function, set to true if you use GMail or Microsoft Outlook)
    'smtp_host' => '', // mail host. smtp.gmail.com for GMail / smtp-mail.outlook.com for Microsoft Outlook
    'smtp_port' => 25, // 25 (default) / 465 (ssl, GMail) / 587 (tls, Microsoft Outlook)
    'smtp_auth' => true, // need authorization?
    'smtp_user' => '[email protected]', // here your email username
    'smtp_pass' => '',
    'smtp_secure' => '', // What kind of encryption to use on the SMTP connection. Options: '', 'ssl' (GMail) or 'tls' (Microsoft Outlook)
    'smtp_debug' => false, // set true to debug (you will see more info in error.log)

    // reCAPTCHA (prevent spam bots)
    'recaptcha_enabled' => false, // enable recaptcha verification code
    'recaptcha_site_key' => '', // get your own site and secret keys at https://www.google.com/recaptcha
    'recaptcha_secret_key' => '',
    'recaptcha_theme' => 'light', // light, dark

    //
    'generate_new_reckey' => true,                // let player generate new recovery key, he will receive e-mail with new rec key (not display on page, hacker can't generate rec key)
    'generate_new_reckey_price' => 20,            // price for new recovery key
    'send_mail_when_change_password' => true,    // send e-mail with new password when change password to account
    'send_mail_when_generate_reckey' => true,    // send e-mail with rec key (key is displayed on page anyway when generate)

    // genders (aka sex)
    'genders' => array(
        0 => 'Female',
        1 => 'Male'
    ),

    // new character config
    'character_samples' => array( // vocations, format: ID_of_vocation => 'Name of Character to copy'
        //0 => 'Rook Sample',
        1 => 'Sorcerer Sample',
        2 => 'Druid Sample',
        3 => 'Paladin Sample',
        4 => 'Knight Sample'
    ),
    
    // it must show limited number of players after using search in character page
    'characters_search_limit' => 15,

    // town list used when creating character
    // won't be displayed if there is only one item (rookgaard for example)
    'character_towns' => array(1),

    // characters lenght
    // This is the minimum and the maximum length that a player can create a character. It is highly recommend the maximum lenght be 21.
    'character_name_min_length' => 4,
    'character_name_max_length' => 21,

    // list of towns
    // if you use TFS 1.3 with support for 'towns' table in database, then you can ignore this - it will be configured automatically (generated from your .OTBM map)
    'towns' => array(
        0 => 'No town',
        1 => 'Sample town'
    ),

    // guilds
    'guild_management' => true, // enable guild management system on the site?
    'guild_need_level' => 1, // min. level to form a guild
    'guild_need_premium' => true, // require premium account to form a guild?
    'guild_image_size_kb' => 80, // maximum size of the guild logo image in KB (kilobytes)
    'guild_description_chars_limit' => 1000, // limit of guild description
    'guild_description_lines_limit' => 6, // limit of lines, if description has more lines it will be showed as long text, without 'enters'
    'guild_motd_chars_limit' => 150, // limit of MOTD (message of the day) that is shown later in the game on the guild channel

    // online page
    'online_record' => true, // display players record?
    'online_vocations' => false, // display vocation statistics?
    'online_vocations_images' => false, // display vocation images?
    'online_skulls' => false, // display skull images
    'online_outfit' => true,
    'online_afk' => false,

    // support list page
    'team_style' => 2, // 1/2 (1 - normal table, 2 - in boxes, grouped by group id)
    'team_display_status' => true,
    'team_display_lastlogin' => true,
    'team_display_world' => false,
    'team_display_outfit' => true,

    // bans page
    'bans_limit' => 50,
    'bans_display_all' => true, // should all bans be displayed? (sorted page by page)

    // highscores page
    'highscores_vocation_box' => true, // show 'Choose a vocation' box on the highscores (allowing peoples to sort highscores by vocation)?
    'highscores_vocation' => true, // show player vocation under his nickname?
    'highscores_frags' => false, // show 'Frags' tab (best fraggers on the server)? Only 0.3
    'highscores_balance' => false, // show 'Balance' tab (richest players on the server)
    'highscores_outfit' => true, // show player outfit?
    'highscores_country_box' => false, // doesnt work yet! (not implemented)
    'highscores_groups_hidden' => 3, // this group id and higher won't be shown on the highscores
    'highscores_ids_hidden' => array(0), // this ids of players will be hidden on the highscores (should be ids of samples)
    'highscores_length' => 100, // how many records per page on highscores

    // characters page
    'characters' => array( // what things to display on character view page (true/false in each option)
        'level' => true,
        'experience' => false,
        'magic_level' => false,
        'balance' => false,
        'marriage_info' => true, // only 0.3
        'outfit' => true,
        'creation_date' => true,
        'quests' => true,
        'skills' => true,
        'equipment' => true,
        'frags' => false,
        'deleted' => false, // should deleted characters from same account be still listed on the list of characters? When enabled it will show that character is "[DELETED]"
    ),
    'quests' => array(
        //'Some Quest' => 123,
        //'Some Quest Two' => 456,
    ), // quests list (displayed in character view), name => storage
    'signature_enabled' => true,
    'signature_type' => 'tibian', // signature engine to use: tibian, mango, gesior
    'signature_cache_time' => 5, // how long to store cached file (in minutes), default 5 minutes
    'signature_browser_cache' => 60, // how long to cache by browser (in minutes), default 1 hour

    // news page
    'news_limit' => 5, // limit of news on the latest news page
    'news_ticker_limit' => 5, // limit of news in tickers (mini news) (0 to disable)
    'news_date_format' => 'j.n.Y', // check php manual date() function for more info about this
    'news_author' => true, // show author of the news

    // gifts/shop system
    'gifts_system' => false,

    // support/system
    'bug_report' => true, // this configurable has no effect, its always enabled

    // forum
    'forum' => 'site', // link to the server forum, set to "site" if you want to use build in forum system, otherwise leave empty if you aren't going to use any forum
    'forum_level_required' => 0, // level required to post, 0 to disable
    'forum_post_interval' => 30, // in seconds
    'forum_posts_per_page' => 20,
    'forum_threads_per_page' => 20,
    // uncomment to force use table for forum
    //'forum_table_prefix' => 'z_', // what forum mysql table to use, z_ (for gesior old forum) or myaac_ (for myaac)

    // last kills
    'last_kills_limit' => 50, // max. number of deaths shown on the last kills page

    // status, took automatically from config file if empty
    'status_ip' => '',
    'status_port' => '',
    'status_timeout' => 2, // how long to wait for the initial response from the server (default: 2 seconds)

    // how often to connect to server and update status (default: every minute)
    // if your status timeout in config.lua is bigger, that it will be used instead
    // when server is offline, it will be checked every time web refreshes, ignoring this variable
    'status_interval' => 60,

    // admin panel
    'admin_panel_modules' => 'lastlogin,points,coins',

    // other
    'anonymous_usage_statistics' => true,
    'email_lai_sec_interval' => 60, // time in seconds between e-mails to one account from lost account interface, block spam
    'google_analytics_id' => '', // e.g.: UA-XXXXXXX-X
    'experiencetable_columns' => 3, // how many columns to display in experience table page. * experiencetable_rows, 5 = 500 (will show up to 500 level)
    'experiencetable_rows' => 200, // till how many levels in one column
    'date_timezone' => 'Europe/Berlin', // more info at http://php.net/manual/en/timezones.php
    'footer_show_load_time' => true, // display load time of the page in the footer

    'npc' => array()
);
 

config.local.php:

Spoiler

<?php
// place for your configuration directives, so you can later easily update myaac
$config['installed'] = true;
$config['env'] = 'prod'; // dev or prod
$config['mail_enabled'] = true;
$config['server_path'] = '/home/otbr/';
$config['mail_admin'] = 'MEU EMAIL';
$config['mail_address'] = '[email protected]';
$config['date_timezone'] = 'America/Sao_Paulo';
$config['client'] = '1100';
$config['anonymous_usage_statistics'] = true;
$config['session_prefix'] = 'myaac_iqsr33ea_';
$config['cache_prefix'] = 'myaac_2pvlyaxy_';

$config['highscores_ids_hidden'] = array(1, 2, 3, 4, 5);

login.php:

Spoiler

<?php
require_once('common.php');
require_once('config.php');
require_once('config.local.php');
require_once(SYSTEM . 'functions.php');
require_once(SYSTEM . 'init.php');
require_once(SYSTEM . 'status.php');

# error function
function sendError($msg){
    $ret = [];
    $ret["errorCode"] = 3;
    $ret["errorMessage"] = $msg;
    die(json_encode($ret));
}

$request = file_get_contents('php://input');
$result = json_decode($request);
$action = isset($result->type) ? $result->type : '';

switch ($action) {
    case 'cacheinfo':
        die(json_encode([
            'playersonline' => $status['players'],
            'twitchstreams' => 0,
            'twitchviewer' => 0,
            'gamingyoutubestreams' => 0,
            'gamingyoutubeviewer' => 0
        ]));
    break;
    
    case 'eventschedule':
        die(json_encode([
            'eventlist' => []
        ]));
    break;

    case 'boostedcreature':
        die(json_encode([
            'boostedcreature' => false,
        ]));
    break;

    case 'login':
    
        $port = $config['lua']['gameProtocolPort'];
    
        // default world info
        $world = [
            'id' => 0,
            'name' => $config['lua']['serverName'],
            'externaladdressprotected' => $config['lua']['ip'],
            'externalportprotected' => $port,
            'externaladdressunprotected' => $config['lua']['ip'],
            'externalportunprotected' => $port,
            'previewstate' => 0,
            'location' => 'BRA', // BRA, EUR, USA
            'anticheatprotection' => false,
            'pvptype' => array_search($config['lua']['worldType'], ['pvp', 'no-pvp', 'pvp-enforced']),
            'istournamentworld' => false,
            'restrictedstore' => false,
            'currenttournamentphase' => 2
        ];

        $characters = [];
        $account = null;
        
        // common columns
        $columns = 'name, level, sex, vocation, looktype, lookhead, lookbody, looklegs, lookfeet, lookaddons, deletion, lastlogin';
        
        $account = new OTS_Account();
        $account->find($result->accountname);
        $config_salt_enabled = fieldExist('salt', 'accounts');
        $current_password = encrypt(($config_salt_enabled ? $account->getCustomField('salt') : '') . $result->password);

        if (!$account->isLoaded() || $account->getPassword() != $current_password) {
            sendError('Account name or password is not correct.');
        }

        $players = $db->query("select {$columns} from players where account_id = " . $account->getId())->fetchAll();
        foreach ($players as $player) {
            $characters[] = create_char($player);
        }

        $worlds = [$world];
        $playdata = compact('worlds', 'characters');
        $session = [
            'sessionkey' => "$result->accountname\n$result->password",
            'lastlogintime' => (!$account) ? 0 : $account->getLastLogin(),
            'ispremium' => (!$account) ? true : $account->isPremium(),
            'premiumuntil' => (!$account) ? 0 : (time() + ($account->getPremDays() * 86400)),
            'status' => 'active', // active, frozen or suspended
            'returnernotification' => false,
            'showrewardnews' => true,
            'isreturner' => true,
            'fpstracking' => false,
            'optiontracking' => false,
            'tournamentticketpurchasestate' => 0,
            'emailcoderequest' => false
        ];
        die(json_encode(compact('session', 'playdata')));
    break;
    
    default:
        sendError("Unrecognized event {$action}.");
    break;
}

function create_char($player) {
    global $config;
    return [
        'worldid' => 0,
        'name' => $player['name'],
        'ismale' => intval($player['sex']) === 1,
        'tutorial' => false, //intval($player['lastlogin']) === 0,
        'level' => intval($player['level']),
        'vocation' => $config['vocations'][$player['vocation']],
        'outfitid' => intval($player['looktype']),
        'headcolor' => intval($player['lookhead']),
        'torsocolor' => intval($player['lookbody']),
        'legscolor' => intval($player['looklegs']),
        'detailcolor' => intval($player['lookfeet']),
        'addonsflags' => intval($player['lookaddons']),
        'ishidden' => intval($player['deletion']) === 1,
        'istournamentparticipant' => false,
        'remainingdailytournamentplaytime' => 0
    ];
}
 

 

 

Você tem alguma imagem que possa auxiliar no problema? Se sim, anexe-a dentro do spoiler abaixo:

Spoiler

print.png.74249c4fb55a235cc144cc1a70004a2d.png

OBS: Censurei alguns dados, estão escritos como "MEU EMAIL" "MINHA SENHA".

Agradeço seu tempo e atenção.

Editado por Yonie

Compartilhar este post


Link para o post
Compartilhar em outros sites

2 respostass a esta questão

Recommended Posts

  • 0
Yonie    0
Yonie

@Majesty Era isso mesmo, muito obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Visitante
Este tópico está impedido de receber novos posts.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×