{"id":36280,"date":"2019-10-31T22:10:39","date_gmt":"2019-10-31T19:10:39","guid":{"rendered":"https:\/\/prohoster.info\/blog\/rukovodstvo-dlya-nachinayushhih-po-selinux\/"},"modified":"2019-10-31T22:10:39","modified_gmt":"2019-10-31T19:10:39","slug":"rukovodstvo-dlya-nachinayushhih-po-selinux","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/rukovodstvo-dlya-nachinayushhih-po-selinux","title":{"rendered":"Guia para iniciantes sobre SELinux","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Guia para iniciantes sobre SELinux\" src=\"\/wp-content\/uploads\/2019\/07\/4e1443c8b79a8dfa1b28fb6b6d0666bb.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p><em>A tradu\u00e7\u00e3o do artigo foi preparada para os alunos do curso <noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/31Eb\/\">\u00abSeguran\u00e7a do Linux\u00bb<\/a><\/noindex><\/em><\/p>\n<p>SELinux ou Security Enhanced Linux \u00e9 um mecanismo de controle de acesso aprimorado, desenvolvido pela Ag\u00eancia de Seguran\u00e7a Nacional dos EUA (NSA) para prevenir invas\u00f5es maliciosas. Ele implementa um modelo de controle de acesso mandat\u00e1rio (Mandatory Access Control, MAC) sobre o modelo de controle de acesso discricion\u00e1rio (Discretionary Access Control, DAC), ou seja, permiss\u00f5es de leitura, grava\u00e7\u00e3o e execu\u00e7\u00e3o.<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p><\/p>\n<p>O SELinux possui tr\u00eas modos:<\/p>\n<p><\/p>\n<ol>\n<li><strong>Enforcing<\/strong> \u2014 nega\u00e7\u00e3o de acesso com base em regras de pol\u00edtica.<\/li>\n<li><strong>Permissive<\/strong> \u2014 registro de a\u00e7\u00f5es que violariam a pol\u00edtica, as quais seriam proibidas no modo enforcing.<\/li>\n<li><strong>Disabled<\/strong> \u2014 desativa\u00e7\u00e3o completa do SELinux.<\/li>\n<\/ol>\n<p><\/p>\n<p>Por padr\u00e3o, as configura\u00e7\u00f5es est\u00e3o em <code>\/etc\/selinux\/config<\/code><\/p>\n<p><\/p>\n<h1 id=\"izmenenie-rezhimov-selinux\">Mudan\u00e7a dos modos do SELinux<\/h1>\n<p><\/p>\n<p>Para descobrir o modo atual, execute <\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">$ getenforce<\/code><\/pre>\n<p><\/p>\n<p>Para alterar o modo para permissive, execute o seguinte comando <\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">$ setenforce 0<\/code><\/pre>\n<p><\/p>\n<p>ou, para mudar do modo <strong>permissive<\/strong> para <strong>para<\/strong>enforcing <\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">, execute<\/code><\/pre>\n<p><\/p>\n<p>$ setenforce 1 <\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">Se voc\u00ea precisar desativar completamente o SELinux, isso pode ser feito apenas atrav\u00e9s do arquivo de configura\u00e7\u00e3o<\/code><\/pre>\n<p><\/p>\n<p>$ vi \/etc\/selinux\/config<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">Para desativ\u00e1-lo, altere a configura\u00e7\u00e3o SELINUX da seguinte forma:<\/code><\/pre>\n<p><\/p>\n<h1 id=\"nastroyka-selinux\">SELINUX=disabled<\/h1>\n<p><\/p>\n<p>Configura\u00e7\u00e3o do SELinux <strong>permissive<\/strong>.<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">Cada arquivo e processo \u00e9 marcado com um contexto SELinux, que cont\u00e9m informa\u00e7\u00f5es adicionais, como usu\u00e1rio, fun\u00e7\u00e3o, tipo, etc. Se voc\u00ea estiver ativando o SELinux pela primeira vez, precisar\u00e1 configurar o contexto e as etiquetas. O processo de atribui\u00e7\u00e3o de etiquetas e contextos \u00e9 conhecido como marca\u00e7\u00e3o. Para iniciar a marca\u00e7\u00e3o, no arquivo de configura\u00e7\u00e3o, alteramos o modo para<\/code><\/pre>\n<p><\/p>\n<p>$ vi \/etc\/selinux\/config\nSELINUX=permissive <strong>permissive<\/strong>Ap\u00f3s definir o modo <code>, crie um arquivo oculto vazio chamado<\/code><\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">autorelabel<\/code><\/pre>\n<p><\/p>\n<p>$ touch \/.autorelabel<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">e reinicie o computador<\/code><\/pre>\n<p><\/p>\n<p>$ init 6 <strong>permissive<\/strong> Nota: estamos usando o modo <strong>para<\/strong> para marca\u00e7\u00e3o, pois usar o modo<\/p>\n<p><\/p>\n<p>pode fazer o sistema falhar durante a reinicializa\u00e7\u00e3o. <strong>para<\/strong>N\u00e3o se preocupe se a inicializa\u00e7\u00e3o travar em algum arquivo, a marca\u00e7\u00e3o leva um tempo. Ap\u00f3s a conclus\u00e3o da marca\u00e7\u00e3o e a inicializa\u00e7\u00e3o do seu sistema, voc\u00ea pode voltar ao arquivo de configura\u00e7\u00e3o e definir o modo<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">, execute<\/code><\/pre>\n<p><\/p>\n<p>, al\u00e9m de executar: <\/p>\n<p><\/p>\n<h1 id=\"monitorim-logi\">Agora voc\u00ea ativou o SELinux com sucesso no seu computador. Monitorando os logs.<\/h1>\n<p><\/p>\n<p>Pode haver ocorrido algum erro durante a marca\u00e7\u00e3o ou durante o funcionamento do sistema. Para verificar se o seu SELinux est\u00e1 funcionando corretamente e se n\u00e3o est\u00e1 bloqueando o acesso a alguma porta, aplicativo, etc., \u00e9 necess\u00e1rio observar os logs. O log do SELinux est\u00e1 em <code>\/var\/log\/audit\/audit.log<\/code>, mas voc\u00ea n\u00e3o precisa l\u00ea-lo completamente para encontrar erros. Pode-se usar a ferramenta audit2why para buscar erros. Execute o seguinte comando:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">$ audit2why &lt; \/var\/log\/audit\/audit.log<\/code><\/pre>\n<p><\/p>\n<p>Como resultado, voc\u00ea receber\u00e1 uma lista de erros. Se n\u00e3o houver erros no log, nenhuma mensagem ser\u00e1 exibida.<\/p>\n<p><\/p>\n<h1 id=\"nastroyka-politiki-selinux\">Configura\u00e7\u00e3o da pol\u00edtica SELinux<\/h1>\n<p><\/p>\n<p>A pol\u00edtica SELinux \u00e9 um conjunto de regras que orientam o mecanismo de seguran\u00e7a SELinux. A pol\u00edtica define um conjunto de regras para um ambiente espec\u00edfico. Agora, vamos aprender como configurar pol\u00edticas para permitir acesso a servi\u00e7os proibidos.<\/p>\n<p><\/p>\n<h4 id=\"1-logicheskie-znacheniya-pereklyuchateli\">1. Valores l\u00f3gicos (switches)<\/h4>\n<p><\/p>\n<p>Os switches (booleanos) permitem modificar partes da pol\u00edtica em tempo de execu\u00e7\u00e3o, sem a necessidade de criar novas pol\u00edticas. Eles permitem fazer altera\u00e7\u00f5es sem reiniciar ou recompilar pol\u00edticas SELinux.<\/p>\n<p><\/p>\n<p><strong>Exemplo<\/strong><br \/>\nSuponha que queremos permitir o acesso ao diret\u00f3rio pessoal do usu\u00e1rio via FTP para leitura e grava\u00e7\u00e3o, e j\u00e1 o compartilhamos, mas ao tentar acessar, n\u00e3o vemos nada. Isso ocorre porque a pol\u00edtica SELinux pro\u00edbe o servidor FTP de ler e gravar no diret\u00f3rio pessoal do usu\u00e1rio. Precisamos alterar a pol\u00edtica para que o servidor FTP possa acessar os diret\u00f3rios pessoais. Vamos verificar se existem alguns switches para isso, executando<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">$ semanage boolean -l<\/code><\/pre>\n<p><\/p>\n<p>Este comando vai listar os switches dispon\u00edveis com seu estado atual (habilitado\/on ou desabilitado\/off) e uma descri\u00e7\u00e3o. Voc\u00ea pode restringir a pesquisa adicionando grep para encontrar resultados relacionados apenas ao ftp:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">$ semanage boolean -l | grep ftp<\/code><\/pre>\n<p><\/p>\n<p>e voc\u00ea encontrar\u00e1 o seguinte<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">ftp_home_dir        -&gt; off       Permitir que o ftp leia e escreva arquivos no diret\u00f3rio pessoal do usu\u00e1rio<\/code><\/pre>\n<p><\/p>\n<p>Este switch est\u00e1 desabilitado, ent\u00e3o n\u00f3s o habilitaremos com <code>setsebool ftp_home_dir on<\/code><\/p>\n<p><\/p>\n<p>Agora nosso daemon ftp poder\u00e1 acessar o diret\u00f3rio pessoal do usu\u00e1rio.<br \/>\nNota: voc\u00ea tamb\u00e9m pode obter uma lista de switches dispon\u00edveis sem descri\u00e7\u00e3o, executando <code>getsebool -a<\/code><\/p>\n<p><\/p>\n<h4 id=\"2-metki-i-kontekst\">2. R\u00f3tulos e contexto<\/h4>\n<p><\/p>\n<p>Esta \u00e9 a maneira mais comum de implementar a pol\u00edtica SELinux. Cada arquivo, pasta, processo e porta \u00e9 rotulado com um contexto SELinux:<\/p>\n<p><\/p>\n<ul>\n<li>Para arquivos e pastas, as etiquetas s\u00e3o armazenadas como atributos estendidos no sistema de arquivos e podem ser visualizadas pelo seguinte comando:\n<pre><code class=\"plaintext\">$ ls -Z \/etc\/httpd<\/code><\/pre>\n<\/li>\n<li>Para processos e portas, a rotulagem \u00e9 gerida pelo n\u00facleo, e essas etiquetas podem ser vistas da seguinte forma:<\/li>\n<\/ul>\n<p><\/p>\n<p>processo<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">$ ps \u2013auxZ | grep httpd<\/code><\/pre>\n<p><\/p>\n<p>porto<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">$ netstat -anpZ | grep httpd<\/code><\/pre>\n<p><\/p>\n<p><strong>Exemplo<\/strong><br \/>\nAgora, vamos considerar um exemplo para entender melhor as etiquetas e o contexto. Suponha que temos <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/pt\/server\/\"   title=\"servidor web\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"1142\">servidor web<\/a>, que em vez de um diret\u00f3rio <code>\/var\/www\/html\/ \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \/home\/dan\/html\/<\/code>. O SELinux considerar\u00e1 isso uma viola\u00e7\u00e3o da pol\u00edtica e voc\u00ea n\u00e3o poder\u00e1 acessar suas p\u00e1ginas web. Isso ocorre porque n\u00e3o configuramos o contexto de seguran\u00e7a relacionado aos arquivos HTML. Para visualizar o contexto de seguran\u00e7a por padr\u00e3o, utilize o seguinte comando:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">$ ls \u2013lz \/var\/www\/html\n -rw-r\u2014r\u2014. root root unconfined_u:object_r:httpd_sys_content_t:s0 \/var\/www\/html\/<\/code><\/pre>\n<p><\/p>\n<p>Aqui, recebemos <code>httpd_sys_content_t<\/code> como o contexto para arquivos HTML. Precisamos definir esse contexto de seguran\u00e7a para o nosso diret\u00f3rio atual, que agora tem o seguinte contexto:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">-rw-r\u2014r\u2014. dan dan system_u:object_r:user_home_t:s0 \/home\/dan\/html\/<\/code><\/pre>\n<p><\/p>\n<p>Um comando alternativo para verificar o contexto de seguran\u00e7a de um arquivo ou diret\u00f3rio:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">$ semanage fcontext -l | grep '\/var\/www'<\/code><\/pre>\n<p><\/p>\n<p>Tamb\u00e9m usaremos o semanage para alterar o contexto, ap\u00f3s encontrarmos o contexto de seguran\u00e7a correto. Para mudar o contexto de \/home\/dan\/html, execute os seguintes comandos:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">$ semanage fcontext -a -t httpd_sys_content_t '\/home\/dan\/html(\\\/.*)?'\n$ semanage fcontext -l | grep '\/home\/dan\/html'\n\/home\/dan\/html(\\\/.*)? all files system_u:object_r:httpd_sys_content_t:s0\n$ restorecon -Rv \/home\/dan\/html<\/code><\/pre>\n<p><\/p>\n<p>Ap\u00f3s a altera\u00e7\u00e3o do contexto usando o semanage, o comando restorecon ir\u00e1 aplicar o contexto padr\u00e3o para arquivos e diret\u00f3rios. Nosso servidor web agora poder\u00e1 ler arquivos da pasta <code>\/home\/dan\/html<\/code>, uma vez que o contexto de seguran\u00e7a para essa pasta foi alterado para <code>httpd_sys_content_t<\/code>.<\/p>\n<p><\/p>\n<h4 id=\"3-sozdanie-lokalnyh-politik\">3. Criando Pol\u00edticas Locais<\/h4>\n<p><\/p>\n<p>Podem surgir situa\u00e7\u00f5es em que os m\u00e9todos acima n\u00e3o funcionam para voc\u00ea, e voc\u00ea recebe erros (avc\/denial) no audit.log. Quando isso acontece, \u00e9 necess\u00e1rio criar uma pol\u00edtica local (Local policy). Todos os erros podem ser encontrados usando audit2why, conforme descrito acima.<\/p>\n<p><\/p>\n<p>Para corrigir erros, pode-se criar uma pol\u00edtica local. Por exemplo, se estivermos recebendo um erro relacionado ao httpd (apache) ou ao smbd (samba), usamos grep para filtrar os erros e criamos uma pol\u00edtica para eles:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">apache\n$ grep httpd_t \/var\/log\/audit\/audit.log | audit2allow -M http_policy\nsamba\n$ grep smbd_t \/var\/log\/audit\/audit.log | audit2allow -M smb_policy<\/code><\/pre>\n<p><\/p>\n<p>Aqui <code>http_policy<\/code> e <code>smb_policy<\/code> \u2014 s\u00e3o os nomes das pol\u00edticas locais que criamos. Agora precisamos carregar essas pol\u00edticas locais criadas na pol\u00edtica SELinux atual. Isso pode ser feito da seguinte forma:<\/p>\n<p><\/p>\n<pre><code class=\"plaintext\">$ semodule \u2013I http_policy.pp\n$ semodule \u2013I smb_policy.pp<\/code><\/pre>\n<p><\/p>\n<p>Nossas pol\u00edticas locais foram carregadas, e n\u00e3o devemos mais receber nenhum avc ou denial no audit.log.<\/p>\n<p><em>Essa foi a minha tentativa de ajud\u00e1-lo a entender o SELinux. Espero que ap\u00f3s ler este artigo voc\u00ea se sinta mais \u00e0 vontade com o SELinux.<\/em><\/p>\n<p>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/otus\/blog\/460387\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0430\u0442\u044c\u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d \u0434\u043b\u044f \u0441\u0442\u0443\u0434\u0435\u043d\u0442\u043e\u0432 \u043a\u0443\u0440\u0441\u0430 \u00ab\u0411\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c Linux\u00bb SELinux \u0438\u043b\u0438 Security Enhanced Linux \u2014 \u044d\u0442\u043e \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u043d\u044b\u0439 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u043e\u043c, \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u0439 \u0410\u0433\u0435\u043d\u0442\u0441\u0442\u0432\u043e\u043c \u043d\u0430\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0439 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u0421\u0428\u0410 (\u0410\u041d\u0411 \u0421\u0428\u0410) \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u0437\u043b\u043e\u043d\u0430\u043c\u0435\u0440\u0435\u043d\u043d\u044b\u0445 \u0432\u0442\u043e\u0440\u0436\u0435\u043d\u0438\u0439. \u041e\u043d \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u0435\u0442 \u043f\u0440\u0438\u043d\u0443\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e (\u0438\u043b\u0438 \u043c\u0430\u043d\u0434\u0430\u0442\u043d\u0443\u044e) \u043c\u043e\u0434\u0435\u043b\u044c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u043e\u043c (\u0430\u043d\u0433\u043b. Mandatory Access Control, MAC) \u043f\u043e\u0432\u0435\u0440\u0445 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0439 \u0434\u0438\u0441\u043a\u0440\u0435\u0446\u0438\u043e\u043d\u043d\u043e\u0439 (\u0438\u043b\u0438 \u0438\u0437\u0431\u0438\u0440\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0439) \u043c\u043e\u0434\u0435\u043b\u0438 (\u0430\u043d\u0433\u043b. Discretionary Access Control, DAC), \u0442\u043e [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":27140,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-36280","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0430\u0442\u044c\u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d \u0434\u043b\u044f \u0441\u0442\u0443\u0434\u0435\u043d\u0442\u043e\u0432.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/rukovodstvo-dlya-nachinayushhih-po-selinux\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"pt_PT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0420\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u0434\u043b\u044f \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0449\u0438\u0445 \u043f\u043e SELinux | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0430\u0442\u044c\u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d \u0434\u043b\u044f \u0441\u0442\u0443\u0434\u0435\u043d\u0442\u043e\u0432.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/rukovodstvo-dlya-nachinayushhih-po-selinux\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:10:39+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:10:39+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Guia para iniciantes sobre SELinux | ProHoster","description":"A tradu\u00e7\u00e3o do artigo foi preparada para estudantes.","canonical_url":"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/rukovodstvo-dlya-nachinayushhih-po-selinux","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pt_PT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0420\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u0434\u043b\u044f \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0449\u0438\u0445 \u043f\u043e SELinux | ProHoster","og:description":"\u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0430\u0442\u044c\u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d \u0434\u043b\u044f \u0441\u0442\u0443\u0434\u0435\u043d\u0442\u043e\u0432.","og:url":"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/rukovodstvo-dlya-nachinayushhih-po-selinux","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:10:39+00:00","article:modified_time":"2019-10-31T19:10:39+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"36280","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-02-09 15:05:39","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:47:35","updated":"2026-02-09 15:05:39","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/36280","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/comments?post=36280"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/36280\/revisions"}],"predecessor-version":[{"id":158345,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/36280\/revisions\/158345"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media\/27140"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media?parent=36280"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/categories?post=36280"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/tags?post=36280"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}