{"id":52235,"date":"2026-01-12T12:27:21","date_gmt":"2026-01-12T15:27:21","guid":{"rendered":"\/br\/tutoriais\/?p=52235"},"modified":"2026-01-12T12:29:10","modified_gmt":"2026-01-12T15:29:10","slug":"como-criar-um-servidor-de-streaming","status":"publish","type":"post","link":"\/br\/tutoriais\/como-criar-um-servidor-de-streaming","title":{"rendered":"Como criar um servidor de streaming de v\u00eddeo: guia completo"},"content":{"rendered":"<p>Um servi&ccedil;o de streaming de v&iacute;deo como o YouTube permite transmitir conte&uacute;do para audi&ecirc;ncias online com facilidade. No entanto, esse tipo de plataforma oferece poucas op&ccedil;&otilde;es de personaliza&ccedil;&atilde;o e imp&otilde;e regras que limitam como e onde voc&ecirc; pode distribuir seus v&iacute;deos.<\/p><p>Se a ideia &eacute; ter controle total, o melhor caminho &eacute; criar sua pr&oacute;pria solu&ccedil;&atilde;o de streaming. A forma mais simples de fazer isso &eacute; usando um plano de VPS (servidor virtual privado) de um provedor como a Hostinger. Esse tipo de hospedagem oferece recursos que facilitam a configura&ccedil;&atilde;o, como painel de controle e acesso completo ao servidor.<\/p><p>Para ajudar voc&ecirc; a come&ccedil;ar, este tutorial mostra como criar um servidor de streaming de v&iacute;deo em um VPS Ubuntu. Ao longo do guia, voc&ecirc; tamb&eacute;m vai aprender a ativar outros protocolos de streaming e a disponibilizar as transmiss&otilde;es diretamente no navegador.<\/p><p>\n\n\n\n\n\n<\/p><p><div class=\"protip\">\n                    <h2 class=\"featured-snippet title\">O que &eacute; um servidor de streaming de v&iacute;deo?<\/h2>\n                    <p><\/p>\n                <\/div>Um servidor de streaming de v&iacute;deo &eacute; um sistema intermedi&aacute;rio que permite transmitir conte&uacute;do ao vivo do seu sistema local para o p&uacute;blico online. O processo de transmiss&atilde;o ao vivo funciona codificando o conte&uacute;do de v&iacute;deo em tempo real, dividindo-o em pacotes de dados menores e enviando-os para o cliente. A transfer&ecirc;ncia de m&iacute;dia &eacute; cont&iacute;nua, o que significa que o servidor n&atilde;o armazena a m&iacute;dia localmente.<\/p><h2 class=\"wp-block-heading\" id=\"h-prerequisites-for-setting-up-a-streaming-server\">Pr&eacute;-requisitos para criar um servidor de streaming<\/h2><p>Para configurar seu pr&oacute;prio servidor de streaming de v&iacute;deo, voc&ecirc; precisa de um VPS executando um sistema operacional Linux, como <strong>o Ubuntu 24.04<\/strong>. Leia o tutorial que explica <a href=\"\/br\/tutoriais\/o-que-e-vps\">o que &eacute; um VPS<\/a> se precisar de mais informa&ccedil;&otilde;es sobre como funcionam os servidores virtuais privados. Tamb&eacute;m precisa ser compat&iacute;vel com o <a href=\"\/br\/tutoriais\/o-que-e-nginx\">servidor web NGINX,<\/a> j&aacute; que utilizaremos seu m&oacute;dulo de transmiss&atilde;o de dados.<\/p><p>Al&eacute;m disso, seu servidor deve suportar a conex&atilde;o SSH para executar comandos remotamente. Seu sistema local tamb&eacute;m precisa ter um cliente SSH, como o PuTTY, instalado para acessar o VPS. Para Linux e MacOS, utilize o Terminal integrado.<\/p><p>Configurar seu pr&oacute;prio servidor de streaming de m&iacute;dia tamb&eacute;m requer conhecimento b&aacute;sico de administra&ccedil;&atilde;o de servidores Linux. Caso n&atilde;o esteja familiarizado com o assunto, recomendamos a leitura do nosso tutorial <a href=\"\/br\/tutoriais\/comandos-linux\">sobre comandos Linux<\/a> para aprender mais sobre os utilit&aacute;rios essenciais.<\/p><h2 class=\"wp-block-heading\" id=\"h-how-to-build-a-video-streaming-server\">Como configurar um servidor de streaming de v&iacute;deo<\/h2><p>Ap&oacute;s se familiarizar com os comandos do Linux, continue lendo para aprender como configurar seu pr&oacute;prio servidor de streaming de v&iacute;deo em oito etapas.<\/p><h3 class=\"wp-block-heading\" id=\"h-1-purchase-a-virtual-private-server\">1. Adquira um Servidor Virtual Privado (VPS)<\/h3><p>Como a configura&ccedil;&atilde;o de um servidor de streaming requer um VPS, adquira um plano de um provedor confi&aacute;vel, caso ainda n&atilde;o o tenha feito. Para escolher a melhor hospedagem VPS para transmiss&atilde;o de conte&uacute;do de v&iacute;deo, considere os pr&eacute;-requisitos que explicamos anteriormente.<\/p><p>Com base nisso, a Hostinger &eacute; uma escolha ideal. Todas as nossas <a href=\"\/br\/vps-hosting\">solu&ccedil;&otilde;es VPS<\/a> possuem um <strong>terminal de navegador.<\/strong> Isso permite que voc&ecirc; se conecte ao sistema sem um cliente SSH. Isso ajuda a simplificar o processo de configura&ccedil;&atilde;o do servidor de transmiss&atilde;o ao vivo, j&aacute; que voc&ecirc; pode fazer isso diretamente do seu navegador da web.<\/p><p>Al&eacute;m disso, <strong><a href=\"https:\/\/www.hostinger.com\/br\/blog\/kodee\">o Kodee<\/a> <\/strong>, nosso assistente de IA para VPS, permite que voc&ecirc; gere rapidamente comandos para instalar e configurar o software do servidor de streaming de m&iacute;dia. Isso torna o plano VPS da Hostinger especialmente adequado para novos usu&aacute;rios de VPS que n&atilde;o est&atilde;o familiarizados com a administra&ccedil;&atilde;o de sistemas Linux.<\/p><p>\n\n\n<div class=\"protip\">\n                    <h4 class=\"title\">Usando o Kodee para gerenciar seu servidor<\/h4>\n                    <p>Al&eacute;m de auxiliar em diversas tarefas de administra&ccedil;&atilde;o do sistema, voc&ecirc; pode solicitar que o Kodee gerencie diretamente v&aacute;rios aspectos do seu servidor, incluindo reiniciar seu VPS, restaurar servi&ccedil;os ao estado padr&atilde;o e ajustar regras de firewall. Basta inserir uma mensagem e o Kodee cuidar&aacute; do resto.<\/p>\n                <\/div>\n\n\n\n<\/p><p>Ao escolher um plano de hospedagem VPS, certifique-se de que ele tamb&eacute;m ofere&ccedil;a uma conex&atilde;o de alta velocidade e largura de banda suficiente. Isso &eacute; importante, pois o streaming de v&iacute;deo requer transfer&ecirc;ncia de dados consistente e cont&iacute;nua.<\/p><p>O VPS da Hostinger oferece uma conex&atilde;o <strong>de 1 Gb\/s<\/strong> e at&eacute; <strong>32 TB<\/strong> de largura de banda. Nossa rede de alto desempenho garante que sua plataforma de streaming ao vivo transmita v&iacute;deos de forma confi&aacute;vel e sem interrup&ccedil;&otilde;es.<\/p><figure class=\"wp-block-image size-large\"><a href=\"\/br\/servidor-vps\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" width=\"1024\" height=\"300\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2023\/02\/BR-VPS-hosting_in-text-banner-1.png\/public\" alt=\"\" class=\"wp-image-32923\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2023\/02\/BR-VPS-hosting_in-text-banner-1.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2023\/02\/BR-VPS-hosting_in-text-banner-1.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2023\/02\/BR-VPS-hosting_in-text-banner-1.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2023\/02\/BR-VPS-hosting_in-text-banner-1.png\/w=768,fit=scale-down 768w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2023\/02\/BR-VPS-hosting_in-text-banner-1.png\/w=1536,fit=scale-down 1536w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><h3 class=\"wp-block-heading\" id=\"h-2-set-up-your-vps\">2. Configure seu VPS<\/h3><p>Ap&oacute;s adquirir e <a href=\"\/br\/tutoriais\/como-configurar-vps\">configurar seu plano VPS<\/a>, vamos preparar o ambiente de hospedagem atualizando seu reposit&oacute;rio e instalando o software do servidor de v&iacute;deo.<\/p><p>Comece conectando-se ao seu servidor via SSH <a href=\"\/br\/tutoriais\/como-se-conectar-servidor-vps-usando-terminal-ssh\">usando o PuTTY<\/a> ou o terminal do navegador. Voc&ecirc; pode encontrar as credenciais de login na se&ccedil;&atilde;o <strong>de detalhes do VPS<\/strong> no menu <strong>de vis&atilde;o geral do VPS<\/strong> do hPanel. Por padr&atilde;o, voc&ecirc; se conectar&aacute; como <strong>root<\/strong>.<\/p><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"69fa02eb644a4\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-full wp-lightbox-container\"><img decoding=\"async\" width=\"1460\" height=\"1041\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/vps-ssh-username-and-ip-address-on-hpanel.png\/public\" alt=\"Credenciais de acesso SSH no menu Vis&atilde;o geral do VPS do hPanel\" class=\"wp-image-52157\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/vps-ssh-username-and-ip-address-on-hpanel.png\/w=1460,fit=scale-down 1460w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/vps-ssh-username-and-ip-address-on-hpanel.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/vps-ssh-username-and-ip-address-on-hpanel.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/vps-ssh-username-and-ip-address-on-hpanel.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/vps-ssh-username-and-ip-address-on-hpanel.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1460px) 100vw, 1460px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Ampliar\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><p>No entanto, criaremos outro superusu&aacute;rio, j&aacute; que os comandos ser&atilde;o executados como <strong>root.<\/strong> Pode causar problemas graves se n&atilde;o for tomado cuidado. Para isso, execute o seguinte comando:<\/p><pre class=\"wp-block-preformatted\">adduser seu-nome-de-usuario<\/pre><p>Insira as informa&ccedil;&otilde;es solicitadas, como senha, nome e outros dados. Pressione <strong>Y<\/strong> e depois <strong>Enter<\/strong> para confirmar.<\/p><p>Em seguida, conceda ao novo usu&aacute;rio o privil&eacute;gio de superusu&aacute;rio para permitir a execu&ccedil;&atilde;o de comandos administrativos usando <strong>o sudo<\/strong>. Voc&ecirc; pode fazer isso digitando o seguinte:<\/p><pre class=\"wp-block-preformatted\">usermod -aG sudo seu-nome-de-usuario<\/pre><p>Alterne para o novo usu&aacute;rio usando este comando:<\/p><pre class=\"wp-block-preformatted\">su seu-nome-de-usuario<\/pre><p>Digite a senha do usu&aacute;rio e voc&ecirc; dever&aacute; ver as altera&ccedil;&otilde;es no shell da linha de comando. Agora, vamos preparar o servidor atualizando os pacotes do sistema para garantir que voc&ecirc; obtenha as vers&otilde;es mais recentes do software do reposit&oacute;rio local:<\/p><pre class=\"wp-block-preformatted\">sudo apt update <br><br>sudo apt upgrade<\/pre><p>Observe que os comandos funcionam apenas em sistemas operacionais baseados em Debian, como o Ubuntu. Para outras distribui&ccedil;&otilde;es, substitua <strong>por apt.<\/strong> com o gerenciador de pacotes correspondente, como <strong>o dnf<\/strong>, ou <strong>yum<\/strong> no CentOS:<\/p><pre class=\"wp-block-preformatted\">sudo yum update <br><br>sudo yum upgrade<\/pre><h3 class=\"wp-block-heading\" id=\"h-3-install-nginx-and-the-rtmp-module\">3. Instale o NGINX e o m&oacute;dulo RTMP<\/h3><p>Em um servidor de streaming de m&iacute;dia, o NGINX receber&aacute; as solicita&ccedil;&otilde;es dos clientes, as processar&aacute; e enviar&aacute; o conte&uacute;do solicitado aos usu&aacute;rios. Para instal&aacute;-lo no Ubuntu, execute o seguinte comando:<\/p><pre class=\"wp-block-preformatted\">sudo apt install -y nginx<\/pre><p>Agora, execute o seguinte comando para iniciar o NGINX quando seu VPS reiniciar automaticamente:<\/p><pre class=\"wp-block-preformatted\">sudo systemctl enable nginx<\/pre><p>Verifique se o NGINX est&aacute; ativo e configurado corretamente consultando seu status com este comando:<\/p><pre class=\"wp-block-preformatted\">sudo systemctl status nginx<\/pre><p>O aplicativo de terminal deve exibir o NGINX como ativo e em execu&ccedil;&atilde;o, semelhante ao exemplo abaixo.<\/p><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"69fa02eb65622\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-large wp-lightbox-container\"><img decoding=\"async\" width=\"1024\" height=\"317\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/status-do-nginx-no-terminal.png\/public\" alt=\"Status do NGINX no Terminal\" class=\"wp-image-52168\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/status-do-nginx-no-terminal.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/status-do-nginx-no-terminal.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/status-do-nginx-no-terminal.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/status-do-nginx-no-terminal.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Ampliar\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><p>Agora, vamos instalar o <strong>protocolo de mensagens em tempo real (RTMP).<\/strong> m&oacute;dulo que permite ao servidor de streaming NGINX transferir conte&uacute;do de v&iacute;deo para m&aacute;quinas cliente com baixa lat&ecirc;ncia.<\/p><p>Em um processo de transmiss&atilde;o de v&iacute;deo ao vivo, esse protocolo envia os pacotes de dados que o seu software de transmiss&atilde;o codifica. Em seguida, o computador do usu&aacute;rio recompilar&aacute; os dados para exibir o v&iacute;deo solicitado.<\/p><p>Para instalar o m&oacute;dulo NGINX RTMP, execute o seguinte comando:<\/p><pre class=\"wp-block-preformatted\">sudo apt install -y libnginx-mod-rtmp<\/pre><p>Observe que todos os comandos de instala&ccedil;&atilde;o anteriores ir&atilde;o obter o software do reposit&oacute;rio do gerenciador de pacotes do seu sistema, o que significa que podem n&atilde;o ser a vers&atilde;o mais recente.<\/p><p>Se voc&ecirc; precisar da vers&atilde;o mais recente, baixe o NGINX e o RTMP diretamente de seus reposit&oacute;rios no GitHub. Antes de prosseguir, instale as seguintes depend&ecirc;ncias para compilar o pacote:<\/p><pre class=\"wp-block-preformatted\">sudo apt install build-essential git libpcre3-dev libssl-dev zlib1g-dev<\/pre><p>Agora, busque ambos os reposit&oacute;rios de software usando estes comandos <strong>Git clone<\/strong>:<\/p><pre class=\"wp-block-preformatted\">sudo git clone https:\/\/github.com\/arut\/nginx-rtmp-module.git<br><br>sudo git clone https:\/\/github.com\/nginx\/nginx.git<\/pre><p>Acesse o diret&oacute;rio do NGINX e execute o script do compilador. Para isso, execute a seguinte sequ&ecirc;ncia de comandos:<\/p><pre class=\"wp-block-preformatted\">cd nginx<br><br>.\/auto\/configure --add-module=..\/nginx-rtmp-module <br><br>make <br><br>sudo make install<\/pre><h3 class=\"wp-block-heading\" id=\"h-4-configure-nginx-for-video-streaming\">4. Configure o NGINX para streaming de v&iacute;deo<\/h3><p>Ap&oacute;s concluir a instala&ccedil;&atilde;o do servidor RTMP, configure o NGINX para habilitar a transmiss&atilde;o de v&iacute;deo ao vivo. Para isso, abra o arquivo <strong>nginx.conf<\/strong> usando um editor de texto como <strong>o nano<\/strong>,:<\/p><pre class=\"wp-block-preformatted\">sudo nano \/etc\/nginx\/nginx.conf<\/pre><p>Na janela do editor de texto, adicione o bloco de configura&ccedil;&atilde;o RTMP ao final do arquivo. Por exemplo, vamos inserir estas configura&ccedil;&otilde;es b&aacute;sicas:<\/p><pre class=\"wp-block-preformatted\">rtmp {<br><br>   server {<br><br>      listen 1935;<br><br>      chunk_size 4096;           <br><br>      application live {<br><br>         live on;<br><br>         record off;<br><br>      }<br><br>   }<br><br>}<\/pre><p>Para ajudar voc&ecirc; a entender o que o c&oacute;digo de configura&ccedil;&atilde;o faz, aqui est&aacute; a descri&ccedil;&atilde;o de cada par&acirc;metro:<\/p><ul class=\"wp-block-list\">\n<li><strong>listen 1935<\/strong> &ndash; o n&uacute;mero da porta que seu servidor RTMP est&aacute; escutando, configurado para <strong>1935<\/strong>, por padr&atilde;o.<\/li>\n\n\n\n<li><strong>chunk_size 4069<\/strong> &ndash; o tamanho dos fragmentos de v&iacute;deo que o servidor enviar&aacute; em <strong>bytes<\/strong>, definido como <strong>4096 bytes<\/strong> ou <strong>4 KB<\/strong> por padr&atilde;o.<\/li>\n\n\n\n<li><strong>application live<\/strong> &ndash; o aplicativo de transmiss&atilde;o ao vivo que estar&aacute; dispon&iacute;vel no endere&ccedil;o <strong>\/live<\/strong>.<\/li>\n\n\n\n<li><strong>live on<\/strong> &ndash; a op&ccedil;&atilde;o de modo ao vivo permite que v&aacute;rios usu&aacute;rios se conectem &agrave; sua transmiss&atilde;o simultaneamente.<\/li>\n\n\n\n<li><strong>record off<\/strong> &ndash; a op&ccedil;&atilde;o para ativar\/desativar a funcionalidade de grava&ccedil;&atilde;o RTMP. <strong>Desativar<\/strong> essa op&ccedil;&atilde;o significa que o servidor n&atilde;o armazenar&aacute; o v&iacute;deo transmitido localmente.<\/li>\n<\/ul><p>A p&aacute;gina <a href=\"https:\/\/github.com\/arut\/nginx-rtmp-module\/wiki\/Directives\" target=\"_blank\" rel=\"noopener\">do GitHub das diretivas do m&oacute;dulo RTMP<\/a> lista outros par&acirc;metros para alterar suas configura&ccedil;&otilde;es de RTMP. Por exemplo, adicione o seguinte em <strong>server{}<\/strong>, Permitir que apenas um endere&ccedil;o IP espec&iacute;fico transmita conte&uacute;do em seu servidor e bloquear o acesso dos demais:<\/p><pre class=\"wp-block-preformatted\">allow publish 127.0.0.1;<br><br>deny publish all;<\/pre><p>Embora voc&ecirc; tenha controle total sobre seu pr&oacute;prio servidor de v&iacute;deo, use essas diretrizes com cuidado, pois elas podem afetar o desempenho do seu VPS. Para garantir uma transmiss&atilde;o confi&aacute;vel, defina o valor correto de acordo com suas necessidades e os recursos de hardware do servidor.<\/p><p>Aqui est&atilde;o alguns par&acirc;metros importantes de configura&ccedil;&atilde;o de streaming e seu impacto no desempenho:<\/p><ul class=\"wp-block-list\">\n<li><strong>chunk_size<\/strong> &ndash; um bloco de dados grande pode causar alta lat&ecirc;ncia, enquanto configur&aacute;-lo para um valor baixo causar&aacute; sobrecarga devido a transmiss&otilde;es extras.<\/li>\n\n\n\n<li><strong>max_connections<\/strong> &ndash; o n&uacute;mero m&aacute;ximo de conex&otilde;es simult&acirc;neas com o seu servidor RTMP, que pode consumir muita largura de banda de streaming de v&iacute;deo se configurado com um valor muito alto.<\/li>\n\n\n\n<li><strong>record<\/strong> &ndash; a op&ccedil;&atilde;o para ativar o modo de grava&ccedil;&atilde;o, que consumir&aacute; mais poder de processamento e espa&ccedil;o de armazenamento quando ativado.<\/li>\n\n\n\n<li><strong>max_message<\/strong> &ndash; o tamanho m&aacute;ximo dos dados de entrada enviados como uma mensagem. Configurar um valor muito alto consumir&aacute; mais mem&oacute;ria e poder&aacute; causar instabilidade no servidor.<\/li>\n<\/ul><p>Recomendamos usar o valor padr&atilde;o e ajust&aacute;-lo gradualmente para verificar se a nova configura&ccedil;&atilde;o afeta o desempenho do seu servidor de v&iacute;deo. Lembre-se tamb&eacute;m que transmitir conte&uacute;do em v&aacute;rios canais consumir&aacute; recursos adicionais.<\/p><p>\n\n\n<div><p class=\"important\"><strong>Importante! <\/strong>Para evitar problemas, teste as altera&ccedil;&otilde;es em uma &aacute;rea de teste antes de aplic&aacute;-las ao ambiente de produ&ccedil;&atilde;o. Ap&oacute;s aplicar as novas configura&ccedil;&otilde;es, monitore seu servidor para verificar se h&aacute; instabilidade.<\/p><\/div>\n\n\n\n<\/p><p>Ap&oacute;s adicionar o bloco RTMP ao arquivo de configura&ccedil;&atilde;o do NGINX, pressione <strong>Ctrl + X<\/strong> &rarr; <strong>Y<\/strong> &rarr; <strong>Enter<\/strong> para salvar as altera&ccedil;&otilde;es. Execute o seguinte comando para validar suas configura&ccedil;&otilde;es e detectar erros de sintaxe:<\/p><pre class=\"wp-block-preformatted\">sudo nginx -t<\/pre><p>Os clientes de VPS da Hostinger tamb&eacute;m podem usar <strong>o Kodee<\/strong> para verificar sua configura&ccedil;&atilde;o do NGINX e procurar erros como este:<\/p><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"69fa02eb65d86\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-large wp-lightbox-container\"><img decoding=\"async\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"\/br\/tutoriais\/wp-content\/uploads\/sites\/53\/2026\/01\/hpanel-vps-kodee.png\" alt=\"Kodee responde a uma pergunta sobre a configura&ccedil;&atilde;o do NGINX.\"><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Ampliar\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><p>Agora, recarregue a configura&ccedil;&atilde;o do servidor web NGINX para aplicar as configura&ccedil;&otilde;es usando este comando:<\/p><pre class=\"wp-block-preformatted\">sudo nginx -s recarregar<\/pre><h3 class=\"wp-block-heading\" id=\"h-5-set-up-a-cdn\">5. Configure uma CDN<\/h3><p>Uma <strong><a href=\"\/br\/tutoriais\/o-que-e-cdn\">rede de distribui&ccedil;&atilde;o de conte&uacute;do (CDN, na sigla em ingl&ecirc;s)<\/a> <\/strong> &eacute; uma rede de servidores que armazena temporariamente seu conte&uacute;do hospedado em v&aacute;rias localiza&ccedil;&otilde;es geogr&aacute;ficas. Isso permite que os usu&aacute;rios recuperem os dados solicitados mais pr&oacute;ximos deles, reduzindo a lat&ecirc;ncia e aumentando a velocidade de carregamento.<\/p><p>Como os usu&aacute;rios se conectam ao servidor de cache, a CDN reduz a carga em seu VPS. Um servidor de streaming de v&iacute;deo requer esse recurso, pois a distribui&ccedil;&atilde;o cont&iacute;nua do fluxo de dados para v&aacute;rios dispositivos pode causar instabilidade.<\/p><p>Em um ambiente de streaming, este software de cache armazena segmentos do v&iacute;deo transmitido em tempo real. Em seguida, o conte&uacute;do ser&aacute; fornecido aos clientes a partir dos dados tempor&aacute;rios armazenados na rede CDN, em vez do servidor principal.<\/p><p>A maneira mais f&aacute;cil de configurar uma CDN &eacute; usando um provedor de servi&ccedil;os como o Cloudflare. Antes de prosseguir, certifique-se de ter <a href=\"\/br\/tutoriais\/apontar-dominio-para-vps\">apontado um nome de dom&iacute;nio para seu VPS<\/a>, pois o utilizaremos para a configura&ccedil;&atilde;o. Depois, siga estes passos:<\/p><ol class=\"wp-block-list\">\n<li>Acesse o <a href=\"http:\/\/cloudflare.com\/\" target=\"_blank\" rel=\"noopener\">site da Cloudflare<\/a>. Clique em <strong>Cadastrar-se<\/strong> para criar uma nova conta e concluir o processo de verifica&ccedil;&atilde;o.<\/li>\n\n\n\n<li>Fa&ccedil;a login no seu painel de controle do Cloudflare e clique em <strong>Adicionar site<\/strong> no canto superior direito da sua tela.<\/li>\n\n\n\n<li>Insira o nome do seu dom&iacute;nio no campo fornecido e clique em <strong>Continuar<\/strong> para confirmar.<\/li>\n<\/ol><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"69fa02eb66945\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-large wp-lightbox-container\"><img decoding=\"async\" width=\"1024\" height=\"422\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/pagina-de-registro-de-dominio-no-painel-do-cloudflare.png\/public\" alt=\"A p&aacute;gina de registro de dom&iacute;nio no painel do Cloudflare\" class=\"wp-image-52188\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/pagina-de-registro-de-dominio-no-painel-do-cloudflare.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/pagina-de-registro-de-dominio-no-painel-do-cloudflare.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/pagina-de-registro-de-dominio-no-painel-do-cloudflare.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/pagina-de-registro-de-dominio-no-painel-do-cloudflare.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Ampliar\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><ol start=\"4\" class=\"wp-block-list\">\n<li>Selecione o plano de sua prefer&ecirc;ncia. Recomendamos escolher a op&ccedil;&atilde;o gratuita na parte inferior, pois voc&ecirc; poder&aacute; fazer o upgrade posteriormente, a qualquer momento. Clique em <strong>Continuar<\/strong> para prosseguir.<\/li>\n\n\n\n<li>Voc&ecirc; ser&aacute; direcionado para a p&aacute;gina <strong>de revis&atilde;o dos registros DNS<\/strong>. Certifique-se de que todos os registros apontem para o seu nome de dom&iacute;nio e clique em <strong>Continuar<\/strong>.<\/li>\n<\/ol><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"69fa02eb674d7\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-large wp-lightbox-container\"><img decoding=\"async\" width=\"1024\" height=\"525\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2022\/08\/cloudflare.png\/public\" alt=\"P&aacute;gina de revis&atilde;o de registros DNS no painel do Cloudflare\" class=\"wp-image-45280\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2022\/08\/cloudflare.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2022\/08\/cloudflare.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2022\/08\/cloudflare.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2022\/08\/cloudflare.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Ampliar\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><ol start=\"6\" class=\"wp-block-list\">\n<li>Na pr&oacute;xima tela, o Cloudflare fornecer&aacute; os servidores de nomes para o seu dom&iacute;nio. Copie e salve em um local seguro.<\/li>\n<\/ol><p>N&atilde;o feche o painel de controle, pois o utilizaremos posteriormente para verificar a configura&ccedil;&atilde;o. Agora, vamos apontar seu nome de dom&iacute;nio para os novos servidores de nomes. Veja como fazer isso na Hostinger:<\/p><ol class=\"wp-block-list\">\n<li>Fa&ccedil;a login no <strong>hPanel<\/strong>, e clique em <strong>Dom&iacute;nios<\/strong> no menu superior.<\/li>\n\n\n\n<li>Clique em <strong>Gerenciar<\/strong>, No dom&iacute;nio que deseja configurar, selecione <strong>DNS \/ Servidores de nomes.<\/strong> da barra lateral.<\/li>\n\n\n\n<li>Clique em <strong>Alterar servidores de nomes<\/strong> e selecione a op&ccedil;&atilde;o <strong>Alterar servidores de nomes<\/strong>.<\/li>\n\n\n\n<li>Insira os servidores de nomes do Cloudflare nos dois primeiros campos. Clique em <strong>Salvar<\/strong>.<\/li>\n<\/ol><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"69fa02eb6817f\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-full wp-lightbox-container\"><img decoding=\"async\" width=\"730\" height=\"467\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2019\/02\/hpanel-escolher-nameservers.jpg\/public\" alt=\"captura de tela da escolha de nameservers\" class=\"wp-image-25672\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2019\/02\/hpanel-escolher-nameservers.jpg\/w=730,fit=scale-down 730w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2019\/02\/hpanel-escolher-nameservers.jpg\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2019\/02\/hpanel-escolher-nameservers.jpg\/w=150,fit=scale-down 150w\" sizes=\"(max-width: 730px) 100vw, 730px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Ampliar\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><p>Volte ao painel do Cloudflare e clique em <strong>Verificar servidores de nomes agora<\/strong>. Se aparecer uma mensagem contendo o nome do seu dom&iacute;nio, clique em<strong>Continuar<\/strong>. Voc&ecirc; ver&aacute; um <strong>Guia de In&iacute;cio R&aacute;pido<\/strong>, mas escolheremos <strong>Concluir mais tarde<\/strong>.<\/p><p>&Eacute; isso! Seu v&iacute;deo agora est&aacute; sendo transmitido pela CDN da Cloudflare. Se voc&ecirc; quiser saber mais sobre outros provedores, confira nosso tutorial sobre <a href=\"\/br\/tutoriais\/melhorando-o-desempenho-do-site-usando-cdn\">como melhorar o desempenho do site usando uma rede de distribui&ccedil;&atilde;o de conte&uacute;do<\/a>.<\/p><h3 class=\"wp-block-heading\" id=\"h-6-set-up-streaming-software\">6. Configure o software de streaming<\/h3><p>Assim que o servidor de streaming estiver pronto, instale um software de streaming de v&iacute;deo em seu computador para transmitir o conte&uacute;do. Como existem diversas op&ccedil;&otilde;es, apresentaremos algumas ferramentas de streaming populares para ajudar voc&ecirc; a escolher:<\/p><ul class=\"wp-block-list\">\n<li><strong>Open Broadcaster Software (OBS)<\/strong> &eacute; um software de transmiss&atilde;o ao vivo de c&oacute;digo aberto com uma interface amig&aacute;vel e funcionalidades vers&aacute;teis.<\/li>\n\n\n\n<li><strong>Streamlabs<\/strong> &ndash; uma solu&ccedil;&atilde;o de streaming baseada no OBS com recursos adicionais, por&eacute;m mais exigente em termos de recursos e menos confi&aacute;vel.<\/li>\n\n\n\n<li><strong>Wirecast<\/strong> &ndash; uma plataforma premium de transmiss&atilde;o de v&iacute;deo ao vivo com recursos de edi&ccedil;&atilde;o integrados e amplo suporte a fontes de streaming de m&iacute;dia.<\/li>\n\n\n\n<li><strong>XSplit<\/strong> &ndash; uma ferramenta popular com recursos expans&iacute;veis por meio de plugins, mas complicada de configurar devido &agrave; falta de predefini&ccedil;&otilde;es.<\/li>\n<\/ul><p>Para escolher o melhor software de streaming, leve em considera&ccedil;&atilde;o o sistema operacional do seu computador, a capacidade do hardware e os requisitos da ferramenta. Para este tutorial, usaremos o OBS, pois ele &eacute; gratuito, leve e f&aacute;cil de configurar.<\/p><p><a href=\"https:\/\/obsproject.com\/download\" target=\"_blank\" rel=\"noopener\">Baixe o OBS Studio<\/a> da p&aacute;gina oficial e abra o pacote de instala&ccedil;&atilde;o. Siga as instru&ccedil;&otilde;es do assistente de instala&ccedil;&atilde;o para concluir o processo de configura&ccedil;&atilde;o. Ap&oacute;s a conclus&atilde;o, abra o Aplicativo <strong>obs64.exe<\/strong>.<\/p><p>Agora, conecte o OBS ao seu servidor RTMP navegando at&eacute; <strong>Settings<\/strong> &rarr; <strong>Stream<\/strong>. No menu suspenso <strong>Service<\/strong>, selecione <strong>Custom<\/strong>. Em <strong>server<\/strong>, digite o seguinte endere&ccedil;o:<\/p><pre class=\"wp-block-preformatted\">rtmp:\/\/seu-ip-do-servidor\/live<\/pre><p>Substitua <strong>seu-ip-do-servidor<\/strong> pel o endere&ccedil;o IP real do seu VPS. Al&eacute;m disso, altere <strong>\/live<\/strong> se modificar o caminho do aplicativo no bloco RTMP.<\/p><p>A <strong>chave de transmiss&atilde;o (Stream Key)<\/strong> deve ser adicionada ao final do URL da sua transmiss&atilde;o RTMP. Por exemplo, se voc&ecirc; usar <strong>o comando `test`<\/strong>, voc&ecirc; se conectar&aacute; ao servidor usando este endere&ccedil;o:<\/p><pre class=\"wp-block-preformatted\">rtmp:\/\/seu-ip-do-servidor\/live\/test<\/pre><p>Tamb&eacute;m vamos desmarcar a <strong>op&ccedil;&atilde;o Use authentication<\/strong>. Ap&oacute;s inserir todas as informa&ccedil;&otilde;es necess&aacute;rias, clique em <strong>Aplicar<\/strong> e <strong>OK<\/strong>.<\/p><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"69fa02eb68ef7\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-large wp-lightbox-container\"><img decoding=\"async\" width=\"1024\" height=\"413\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/rtmp-stream-url-setting-in-obs.png\/public\" alt=\"Configura&ccedil;&atilde;o do URL do fluxo RTMP no OBS\" class=\"wp-image-52213\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/rtmp-stream-url-setting-in-obs.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/rtmp-stream-url-setting-in-obs.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/rtmp-stream-url-setting-in-obs.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/rtmp-stream-url-setting-in-obs.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Ampliar\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><p>Em seguida, configure as cenas, as fontes e as defini&ccedil;&otilde;es de &aacute;udio da sua transmiss&atilde;o. Se voc&ecirc; n&atilde;o estiver familiarizado com o software de streaming, consulte o guia <a href=\"https:\/\/obsproject.com\/kb\/quick-start-guide\" target=\"_blank\" rel=\"noopener\">de in&iacute;cio r&aacute;pido de configura&ccedil;&atilde;o de streaming do OBS<\/a> para saber mais. Clique em <strong>Iniciar Transmiss&atilde;o<\/strong> para transmitir seu v&iacute;deo.<\/p><p>\n\n\n<div class=\"protip\">\n                    <h4 class=\"title\">Dica<\/h4>\n                    <p>Voc&ecirc; tamb&eacute;m pode transmitir conte&uacute;do de v&iacute;deo sob demanda. No entanto, voc&ecirc; deve colocar o arquivo de v&iacute;deo dentro do servidor de transmiss&atilde;o ao vivo.<\/p>\n                <\/div>\n\n\n\n<\/p><h3 class=\"wp-block-heading\" id=\"h-7-test-your-stream\">7. Teste sua transmiss&atilde;o<\/h3><p>Vamos verificar se o seu v&iacute;deo est&aacute; sendo transmitido corretamente para o servidor. Voc&ecirc; pode fazer isso acessando o URL por meio de um reprodutor de m&iacute;dia como <strong>o VLC<\/strong>. Confira o passo a passo:<\/p><ol class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.videolan.org\/vlc\/download-windows.html\" target=\"_blank\" rel=\"noopener\">Baixe o VLC<\/a> da p&aacute;gina oficial e instale-o em seu computador.<\/li>\n\n\n\n<li>Abra o reprodutor de m&iacute;dia e selecione <strong>M&iacute;dia.<\/strong> No canto superior esquerdo, clique em <strong>Abrir fluxo de rede<\/strong>.<\/li>\n\n\n\n<li>Na janela <strong>Abrir M&iacute;dia<\/strong>, selecione a guia <strong>Rede<\/strong>.<\/li>\n\n\n\n<li>Cole <strong>o URL do seu fluxo RTMP<\/strong> no campo fornecido e clique em <strong>Transmitir<\/strong> para come&ccedil;ar a reproduzir o v&iacute;deo.<\/li>\n<\/ol><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"69fa02eb69d57\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-large wp-lightbox-container\"><img decoding=\"async\" width=\"1024\" height=\"633\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/vlc-rtmp-streaming-settings.png\/public\" alt=\"Configura&ccedil;&otilde;es de streaming RTMP do VLC\" class=\"wp-image-52222\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/vlc-rtmp-streaming-settings.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/vlc-rtmp-streaming-settings.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/vlc-rtmp-streaming-settings.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/vlc-rtmp-streaming-settings.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Ampliar\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><p>Voc&ecirc; pode usar outro reprodutor de m&iacute;dia para verificar se o URL funciona, desde que ele seja compat&iacute;vel com RTMP. Caso encontre algum erro, verifique se a URL est&aacute; correta, especialmente se voc&ecirc; alterar o caminho do aplicativo na configura&ccedil;&atilde;o do NGINX e usar uma chave de fluxo espec&iacute;fica.<\/p><p>Al&eacute;m disso, verifique se o seu arquivo de configura&ccedil;&atilde;o cont&eacute;m defini&ccedil;&otilde;es que permitem ou bloqueiam fluxos de um endere&ccedil;o IP espec&iacute;fico. Nesse caso, certifique-se de adicionar seu VPS e o sistema que transmite o v&iacute;deo &agrave; lista de permiss&otilde;es.<\/p><p>Al&eacute;m disso, verifique se o endere&ccedil;o est&aacute; correto usando uma ferramenta online como <a href=\"https:\/\/whatismyipaddress.com\/\" target=\"_blank\" rel=\"noopener\">o whatismyipaddress<\/a> e veja se o valor corresponde. Ap&oacute;s alterar o arquivo de configura&ccedil;&atilde;o, lembre-se sempre de recarregar o NGINX para aplicar as altera&ccedil;&otilde;es.<\/p><p>Al&eacute;m disso, certifique-se de que seu firewall permita a conex&atilde;o do NGINX pelas portas <strong>1935<\/strong>, <strong>80<\/strong> e <strong>443<\/strong>. Voc&ecirc; pode usar ferramentas integradas do Linux, como <strong>o iptables<\/strong> ou <strong>UFW<\/strong>. Como alternativa, utilize a configura&ccedil;&atilde;o de firewall do hPanel seguindo estes passos:<\/p><ol class=\"wp-block-list\">\n<li><strong>No hPanel<\/strong>, selecione <strong>VPS<\/strong> e clique em <strong>Gerenciar<\/strong> no servidor de streaming de v&iacute;deo.<\/li>\n\n\n\n<li>Na barra lateral, navegue at&eacute; <strong>Configura&ccedil;&otilde;es<\/strong> &rarr; <strong>Seguran&ccedil;a<\/strong> &rarr; <strong>Firewall<\/strong>.<\/li>\n\n\n\n<li>Clique em <strong>Criar configura&ccedil;&atilde;o de firewall<\/strong> e digite um nome para ela. Clique em <strong>Criar<\/strong>.<\/li>\n\n\n\n<li>Clique no <strong>&iacute;cone de tr&ecirc;s pontos<\/strong> na nova regra e selecione <strong>Editar<\/strong>.<\/li>\n\n\n\n<li>Adicione uma regra que aceite conex&otilde;es de <strong>qualquer origem<\/strong>  via porta <strong>1935<\/strong>, semelhante &agrave; imagem abaixo.<\/li>\n<\/ol><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"69fa02eb6abd9\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-large wp-lightbox-container\"><img decoding=\"async\" width=\"1024\" height=\"134\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/rtmp-port-allowlist-setting-on-hpanel-firewall-configuration-menu.png\/public\" alt=\"Configura&ccedil;&atilde;o da lista de permiss&otilde;es de portas RTMP no menu de configura&ccedil;&atilde;o do firewall hPanel.\" class=\"wp-image-52232\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/rtmp-port-allowlist-setting-on-hpanel-firewall-configuration-menu.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/rtmp-port-allowlist-setting-on-hpanel-firewall-configuration-menu.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/rtmp-port-allowlist-setting-on-hpanel-firewall-configuration-menu.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/53\/2026\/01\/rtmp-port-allowlist-setting-on-hpanel-firewall-configuration-menu.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Ampliar\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><ol start=\"6\" class=\"wp-block-list\">\n<li>Clique em <strong>Adicionar regra<\/strong>. Retorne &agrave; p&aacute;gina principal de configura&ccedil;&atilde;o do firewall e <strong>ative<\/strong> sua regra RTMP.<\/li>\n<\/ol><p>Agora, volte ao VLC e tente reproduzir o v&iacute;deo para verificar se o problema foi resolvido.<\/p><h3 class=\"wp-block-heading\" id=\"h-8-secure-your-streaming-server\">8. Proteja seu servidor de streaming<\/h3><p>Assim que seu servidor de streaming estiver acess&iacute;vel aos usu&aacute;rios online, aplique as pr&aacute;ticas de seguran&ccedil;a adequadas para permitir a transmiss&atilde;o segura de dados e minimizar os poss&iacute;veis pontos de entrada para cibercriminosos.<\/p><p>Utilize credenciais fortes para todos os usu&aacute;rios, incluindo o usu&aacute;rio root e suas contas de hospedagem. Al&eacute;m disso, instale um certificado SSL (<a href=\"\/br\/tutoriais\/o-que-e-ssl\">Secure Sockets Layer<\/a> ) para criptografar a conex&atilde;o entre seu servidor e os clientes, permitindo a transmiss&atilde;o segura de v&iacute;deo.<\/p><p>O SSL mascara os dados transmitidos em caracteres indecifr&aacute;veis, impedindo que criminosos cibern&eacute;ticos obtenham informa&ccedil;&otilde;es pessoais brutas, como o endere&ccedil;o IP do usu&aacute;rio.<\/p><p>Os passos para configurar o SSL no seu VPS variam dependendo da entidade emissora do certificado. Para este tutorial, vamos configurar um plano gratuito da <strong>Certbot,<\/strong> que oferece o mesmo n&iacute;vel de seguran&ccedil;a que as vers&otilde;es pagas. Confira o passo a passo:<\/p><ol class=\"wp-block-list\">\n<li>Conecte-se ao seu VPS via SSH e alterne para uma conta de superusu&aacute;rio.<\/li>\n\n\n\n<li>Instale as depend&ecirc;ncias usando o comando abaixo. Se o seu sistema n&atilde;o utiliza <strong>apt<\/strong>, lembre-se de substituir pelo gerenciador de pacotes correspondente &agrave; sua distribui&ccedil;&atilde;o Linux:<\/li>\n<\/ol><pre class=\"wp-block-preformatted\">sudo apt install python3 python3-venv libaugeas0<\/pre><ol start=\"3\" class=\"wp-block-list\">\n<li>Configure um ambiente virtual Python executando os seguintes comandos:<\/li>\n<\/ol><pre class=\"wp-block-preformatted\">sudo python3 -m venv \/opt\/certbot\/<br><br>sudo \/opt\/certbot\/bin\/pip install --upgrade pip<\/pre><ol start=\"4\" class=\"wp-block-list\">\n<li>Instale <strong>o Certbot<\/strong> no NGINX usando este comando:<\/li>\n<\/ol><pre class=\"wp-block-preformatted\">sudo \/opt\/certbot\/bin\/pip install certbot certbot-nginx<\/pre><ol start=\"5\" class=\"wp-block-list\">\n<li>Agora, crie um link simb&oacute;lico, que &eacute; um atalho que permite executar o Certbot a partir de qualquer caminho:<\/li>\n<\/ol><pre class=\"wp-block-preformatted\">sudo ln -s \/opt\/certbot\/bin\/certbot \/usr\/bin\/certbot<\/pre><ol start=\"6\" class=\"wp-block-list\">\n<li>Instale e ative o certificado SSL seguindo os passos abaixo:<\/li>\n<\/ol><pre class=\"wp-block-preformatted\">sudo certbot --nginx<\/pre><p>Parab&eacute;ns, sua plataforma de transmiss&atilde;o ao vivo est&aacute; segura! Lembre-se de atualizar o certificado SSL a cada 90 dias ou ativar a renova&ccedil;&atilde;o autom&aacute;tica usando o seguinte comando:<\/p><pre class=\"wp-block-preformatted\">echo \"0 0,12 * * * root \/opt\/certbot\/bin\/python -c 'import random; import time; time.sleep(random.random() * 3600)' &amp;&amp; sudo certbot renew -q\" | sudo tee -a \/etc\/crontab &gt; \/dev\/null<\/pre><p>Al&eacute;m de configurar o SSL, &eacute; importante adicionar diretivas <strong>deny<\/strong> no arquivo <strong>nginx.conf<\/strong> para impedir que outros usu&aacute;rios fa&ccedil;am transmiss&otilde;es para o seu VPS. Sem essa prote&ccedil;&atilde;o, conex&otilde;es n&atilde;o autorizadas podem ser usadas por invasores para explorar falhas de seguran&ccedil;a.<\/p><p>Da mesma forma, configure corretamente as regras de firewall do seu VPS para permitir acesso apenas &agrave;s portas necess&aacute;rias e bloquear todas as demais. Manter portas abertas sem necessidade aumenta a superf&iacute;cie de ataque e deixa o servidor mais vulner&aacute;vel a tentativas de invas&atilde;o.<\/p><h2 class=\"wp-block-heading\" id=\"h-how-to-use-other-nginx-streaming-protocols\">Como usar outros protocolos de streaming do NGINX<\/h2><p>Al&eacute;m do RTMP, o servidor web NGINX oferece outros dois protocolos de streaming de v&iacute;deo que podem ser ativados diretamente no arquivo <strong>nginx.conf<\/strong>.<\/p><p>Um deles &eacute; o <strong>HTTP Live Streaming (HLS)<\/strong>, bastante indicado para transmiss&otilde;es em m&uacute;ltiplas plataformas. Ele &eacute; compat&iacute;vel com qualquer navegador moderno e com players de v&iacute;deo HTML5, o que facilita muito o acesso ao conte&uacute;do. Por outro lado, o HLS apresenta uma lat&ecirc;ncia mais alta, o que o torna pouco indicado para jogos ou transmiss&otilde;es interativas em tempo real.<\/p><p>Para ativar o HLS, adicione as diretivas abaixo dentro do bloco <strong>application live {}<\/strong> no arquivo de configura&ccedil;&atilde;o do seu servidor de streaming:<\/p><pre class=\"wp-block-preformatted\">hls on;<br><br>hls_path \/var\/www\/html\/stream\/hls;<br><br>hls_fragment 15;<\/pre><p>A diretiva <strong>hls on<\/strong> ativa o protocolo de streaming, enquanto hls_path define o diret&oacute;rio onde os fragmentos de v&iacute;deo transmitidos ser&atilde;o armazenados. J&aacute; <strong>hls_fragment<\/strong> determina a dura&ccedil;&atilde;o de cada segmento de v&iacute;deo enviado aos usu&aacute;rios.<\/p><p>Outro protocolo dispon&iacute;vel &eacute; o<strong> Dynamic Adaptive Streaming over HTTP (DASH)<\/strong>. Ele &eacute; de c&oacute;digo aberto e altamente personaliz&aacute;vel, permitindo o uso de bitrate adaptativo para manter a melhor qualidade de v&iacute;deo poss&iacute;vel mesmo em conex&otilde;es inst&aacute;veis.<\/p><p>Por outro lado, o DASH n&atilde;o &eacute; compat&iacute;vel com alguns players e navegadores. Al&eacute;m disso, trata-se de um protocolo considerado obsoleto, o que pode torn&aacute;-lo menos confi&aacute;vel para uso a longo prazo. Assim como no HLS, voc&ecirc; pode ativar o DASH adicionando as seguintes configura&ccedil;&otilde;es:<\/p><pre class=\"wp-block-preformatted\">dash on;<br><br>dash_path \/var\/www\/html\/tmp\/dash;<br><br>dash_fragment 15;<\/pre><p>Voc&ecirc; pode habilitar ambos os protocolos, e o cliente escolher&aacute; automaticamente um deles com base na compatibilidade do reprodutor de m&iacute;dia ou nos requisitos do cabe&ccedil;alho da solicita&ccedil;&atilde;o. Para isso, basta adicionar ambas as diretivas ao seu arquivo de configura&ccedil;&atilde;o.<\/p><h2 class=\"wp-block-heading\" id=\"h-make-streaming-server-accessible-via-web-browsers\">Como tornar o servidor de streaming acess&iacute;vel pelo navegador<\/h2><p>Como a maioria das pessoas prefere fazer lives sem depender de um player dedicado (como o VLC), vale a pena deixar a sua transmiss&atilde;o acess&iacute;vel diretamente pelo navegador. Antes disso, ative os protocolos HLS e DASH, j&aacute; que usar apenas RTMP pode causar problemas de compatibilidade em alguns dispositivos e plataformas.<\/p><p>Voc&ecirc; at&eacute; poderia adicionar essas configura&ccedil;&otilde;es no <strong>nginx.conf<\/strong>, mas aqui vamos usar um arquivo separado dentro de <strong>\/sites-available<\/strong>. Assim, o c&oacute;digo fica mais organizado, a manuten&ccedil;&atilde;o &eacute; mais simples e voc&ecirc; pode aplicar as regras apenas a um site espec&iacute;fico, deixando tudo mais isolado.<\/p><p>Para criar o arquivo de configura&ccedil;&atilde;o, execute o comando abaixo. Repare que ele pode ficar sem extens&atilde;o:<\/p><pre class=\"wp-block-preformatted\">sudo nano \/etc\/nginx\/sites-available\/rtmp<\/pre><p>No editor de texto <strong>nano<\/strong>, adicione as seguintes configura&ccedil;&otilde;es:<\/p><pre class=\"wp-block-preformatted\">server {<br><br>    listen 9000;<br><br>    location \/ {<br><br>        add_header Access-Control-Allow-Origin *;<br><br>        root \/var\/www\/html\/stream;<br><br>    }<br><br>}<br><br>types {<br><br>    application\/dash+xml mpd;<br><br>}<\/pre><p>Salve as altera&ccedil;&otilde;es e feche o nano. Em seguida, abra o menu <strong>Configura&ccedil;&otilde;es de Firewall<\/strong> do <strong>hPanel<\/strong> e permita conex&otilde;es na porta <strong>9000<\/strong> (de qualquer origem), que ser&aacute; usada para servir o v&iacute;deo. Voc&ecirc; pode escolher outra porta, desde que n&atilde;o esteja em uso por outros servi&ccedil;os &ndash; como <strong>80<\/strong> e <strong>443<\/strong>, que normalmente ficam reservadas para o NGINX.<\/p><p>Tamb&eacute;m ajuste o caminho de root de acordo com as diretivas de path dos protocolos que voc&ecirc; configurou. Se a pasta ainda n&atilde;o existir, crie-a com o comando <strong>mkdir<\/strong>, por exemplo:<\/p><pre class=\"wp-block-preformatted\">sudo mkdir \/var\/www\/html\/stream<\/pre><p>Reinicie o NGINX e voc&ecirc; dever&aacute; conseguir acessar o fluxo de v&iacute;deo atrav&eacute;s de um navegador web usando o URL. Note que, dependendo do protocolo, o endere&ccedil;o varia.<\/p><p>Acesse o fluxo HLS atrav&eacute;s de <strong>http:\/\/seu_dominio:9000\/hls\/stream.m3u8<\/strong>. Enquanto isso, use <strong>http:\/\/seu_dominio:9000\/dash\/stream.mdp<\/strong> para visualizar a transmiss&atilde;o DASH. Observe que talvez seja necess&aacute;rio incorporar o URL em HTML para permitir que os navegadores da web o exibam.<\/p><p>\n\n\n<div class=\"protip\">\n                    <h4 class=\"title\">Dica Profissional<\/h4>\n                    <p>Confira nosso <a href=\"\/br\/tutoriais\/como-ganhar-dinheiro-fazendo-live\">guia pr&aacute;tico sobre como ganhar dinheiro com streaming<\/a> para obter todos os detalhes.<\/p>\n                <\/div>\n\n\n\n<\/p><h2 class=\"wp-block-heading\" id=\"h-conclusion\">Conclus&atilde;o<\/h2><p>Criar seu pr&oacute;prio servidor traz muito mais flexibilidade e controle do que depender de plataformas de streaming de terceiros, como o YouTube. A forma mais simples de fazer isso &eacute; usar um VPS Linux com NGINX e o m&oacute;dulo RTMP instalados.<\/p><p>Para entender como criar um servidor de streaming, o primeiro passo &eacute; contratar um plano de VPS compat&iacute;vel com essas ferramentas, como os da Hostinger. Depois, conecte-se ao servidor via SSH, troque o usu&aacute;rio root por outro com privil&eacute;gios administrativos e atualize os reposit&oacute;rios do sistema usando o comando de <strong>upgrade<\/strong>.<\/p><p>Em seguida, instale o NGINX e o m&oacute;dulo RTMP diretamente pelos reposit&oacute;rios do sistema ou pelo GitHub, caso precise da vers&atilde;o mais recente. Com tudo instalado, abra o arquivo <strong>nginx.conf<\/strong> e adicione o bloco RTMP para definir as configura&ccedil;&otilde;es personalizadas do player de v&iacute;deo.<\/p><p>Para melhorar a estabilidade do seu servidor de streaming ao vivo, vale configurar uma CDN como a Cloudflare. Por fim, instale um software de transmiss&atilde;o no seu computador, informe a URL do servidor RTMP e inicie a live. Voc&ecirc; pode testar se tudo est&aacute; funcionando corretamente usando um player como o VLC.<\/p><h2 class=\"wp-block-heading\" id=\"h-how-to-set-up-a-video-streaming-server-faq\">Como criar um servidor de streaming: perguntas frequentes<\/h2><p>Nesta se&ccedil;&atilde;o, respondemos &agrave;s d&uacute;vidas mais comuns sobre como criar um servidor de streaming. Se a sua pergunta n&atilde;o aparecer aqui, fique &agrave; vontade para deix&aacute;-la nos coment&aacute;rios.<\/p><div id=\"rank-math-faq\" class=\"rank-math-block\">\n<div class=\"rank-math-list \">\n<div id=\"faq-question-1768231476771\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Por que criar seu pr&oacute;prio servidor de streaming ao vivo?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Criar seu pr&oacute;prio servidor de streaming oferece muito mais flexibilidade e controle do que usar plataformas como YouTube ou Twitch. Voc&ecirc; pode escolher livremente os protocolos de transmiss&atilde;o, como RTMP, HLS ou DASH, al&eacute;m de definir como o v&iacute;deo ser&aacute; codificado. Outra vantagem &eacute; poder transmitir qualquer tipo de conte&uacute;do e usar modelos de monetiza&ccedil;&atilde;o que, muitas vezes, s&atilde;o limitados ou bloqueados nessas plataformas.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1768231480474\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Quanto custa criar um servi&ccedil;o de streaming pr&oacute;prio?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>O custo de um servidor de streaming privado varia conforme o provedor de VPS escolhido. Em alguns casos, &eacute; poss&iacute;vel come&ccedil;ar com valores acess&iacute;veis &ndash; por exemplo, na Hostinger, os planos partem de R$ 29.99 por m&ecirc;s. Al&eacute;m disso, &eacute; importante considerar gastos extras, como servi&ccedil;os de CDN e o registro de um dom&iacute;nio.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1768231481099\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Quais recursos s&atilde;o essenciais em um servidor de streaming?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Ao escolher um VPS para streaming, verifique se ele oferece largura de banda suficiente e bom poder de processamento para garantir transmiss&otilde;es est&aacute;veis. Tamb&eacute;m &eacute; fundamental que o servidor seja compat&iacute;vel com o NGINX, permitindo o uso do m&oacute;dulo RTMP, e ofere&ccedil;a acesso root completo, evitando problemas de permiss&atilde;o durante a configura&ccedil;&atilde;o do software.<\/p>\n\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Um servi&ccedil;o de streaming de v&iacute;deo como o YouTube permite transmitir conte&uacute;do para audi&ecirc;ncias online com facilidade. No entanto, esse tipo de plataforma oferece poucas op&ccedil;&otilde;es de personaliza&ccedil;&atilde;o e imp&otilde;e regras que limitam como e onde voc&ecirc; pode distribuir seus v&iacute;deos. Se a ideia &eacute; ter controle total, o melhor caminho &eacute; criar sua pr&oacute;pria [&#8230;]<\/p>\n<p><a class=\"btn btn-secondary understrap-read-more-link\" href=\"\/br\/tutoriais\/como-criar-um-servidor-de-streaming\">Read More&#8230;<\/a><\/p>\n","protected":false},"author":356,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"rank_math_title":"","rank_math_description":"Veja como criar um servidor de streaming com VPS e NGINX, ter mais controle sobre suas lives e fugir das limita\u00e7\u00f5es das plataformas.","rank_math_focus_keyword":"como criar um servidor de streaming","footnotes":""},"categories":[4915],"tags":[7800],"class_list":["post-52235","post","type-post","status-publish","format-standard","hentry","category-vps","tag-como-criar-um-servidor-de-streaming"],"hreflangs":[],"acf":[],"_links":{"self":[{"href":"https:\/\/www.hostinger.com\/br\/tutoriais\/wp-json\/wp\/v2\/posts\/52235","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hostinger.com\/br\/tutoriais\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hostinger.com\/br\/tutoriais\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/br\/tutoriais\/wp-json\/wp\/v2\/users\/356"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/br\/tutoriais\/wp-json\/wp\/v2\/comments?post=52235"}],"version-history":[{"count":1,"href":"https:\/\/www.hostinger.com\/br\/tutoriais\/wp-json\/wp\/v2\/posts\/52235\/revisions"}],"predecessor-version":[{"id":52400,"href":"https:\/\/www.hostinger.com\/br\/tutoriais\/wp-json\/wp\/v2\/posts\/52235\/revisions\/52400"}],"wp:attachment":[{"href":"https:\/\/www.hostinger.com\/br\/tutoriais\/wp-json\/wp\/v2\/media?parent=52235"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hostinger.com\/br\/tutoriais\/wp-json\/wp\/v2\/categories?post=52235"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hostinger.com\/br\/tutoriais\/wp-json\/wp\/v2\/tags?post=52235"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}