{"id":55251,"date":"2020-01-16T00:00:00","date_gmt":"2020-01-15T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/fajlovye-razresheniya-v-linux"},"modified":"2020-02-18T14:03:21","modified_gmt":"2020-02-18T11:03:21","slug":"fajlovye-razresheniya-v-linux","status":"publish","type":"post","link":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/fajlovye-razresheniya-v-linux","title":{"rendered":"Permisos de archivos en Linux","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><i>Hola a todos. Nos estamos integrando activamente en el trabajo y ya en enero estamos preparando muchos lanzamientos potentes. Entre otros, se ha anunciado una nueva convocatoria para la querida curso. <noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/rbVT\/\">\u00abAdministrador de Linux\u00bb<\/a><\/noindex>. Antes del lanzamiento, tradicionalmente compartimos la traducci\u00f3n de material \u00fatil.<\/i><\/p>\n<p><img decoding=\"async\" alt=\"Permisos de archivos en Linux\" src=\"\/wp-content\/uploads\/2020\/01\/451acace5e0a9088355acb800d789db9.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<blockquote><p><i>Los permisos de archivos ofrecen una alternativa segura a los archivos ejecutables SUID, pero pueden parecer un poco confusos a primera vista.<\/i><\/p><\/blockquote>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nTodos sabemos que los archivos binarios <noindex><a rel=\"nofollow\" href=\"http:\/\/en.wikipedia.org\/wiki\/Setuid#Security\">SUID<\/a><\/noindex> son <noindex><a rel=\"nofollow\" href=\"http:\/\/en.wikipedia.org\/wiki\/Setuid#Security\">una mala soluci\u00f3n desde el punto de vista de la seguridad<\/a><\/noindex>. Afortunadamente, si su aplicaci\u00f3n requiere ciertos privilegios limitados, existe una forma m\u00e1s eficaz, denominada <noindex><a rel=\"nofollow\" href=\"http:\/\/www.linuxjournal.com\/article\/5737\">permisos de archivo<\/a><\/noindex>.<\/p>\n<p>Te ahorrar\u00e9 tiempo si deseas evitar una lectura detallada del art\u00edculo anterior: en esencia, los permisos de archivos permiten a los procesos que se ejecutan en nombre del usuario root y, por lo tanto, tienen el derecho de hacer cualquier cosa, conservar ciertas capacidades, restringidas a <noindex><a rel=\"nofollow\" href=\"http:\/\/www.kernel.org\/doc\/man-pages\/online\/pages\/man7\/capabilities.7.html\">esta lista<\/a><\/noindex>, cuando despojan privilegios y se ejecutan como un usuario no privilegiado. Esto significa que si un atacante logra comprometer un proceso mediante un desbordamiento de b\u00fafer u otra explotaci\u00f3n, no podr\u00e1 aprovecharse de nada m\u00e1s que de ciertos privilegios m\u00ednimos, que realmente necesita el proceso.<\/p>\n<p>Los permisos son excelentes para servicios que generalmente siempre se ejecutan en nombre del usuario root, pero \u00bfqu\u00e9 pasa con las utilidades de l\u00ednea de comandos? Afortunadamente, esto tambi\u00e9n se admite, siempre que tengas las utilidades adecuadas instaladas. Si usas Ubuntu, por ejemplo, necesitar\u00e1s el paquete <code>libcap2-bin<\/code>. Tambi\u00e9n necesitar\u00e1s ejecutar un kernel no arcaico (a partir de la versi\u00f3n<b> 2.6.24<\/b>).<\/p>\n<p>Estas funciones permiten vincular permisos con archivos ejecutables de manera similar a la configuraci\u00f3n del bit SUID, pero solo para un conjunto espec\u00edfico de permisos. La utilidad <code>setcap<\/code> se utiliza para agregar y eliminar permisos de un archivo.<\/p>\n<p>El primer paso es seleccionar los permisos que necesitas. Para este art\u00edculo, supongo que hay una herramienta de diagn\u00f3stico de red llamada <code>tracewalk<\/code>, que deber\u00eda poder usar <noindex><a rel=\"nofollow\" href=\"http:\/\/man7.org\/linux\/man-pages\/man7\/raw.7.html\">sockets en crudo<\/a><\/noindex>. Normalmente se requiere que la aplicaci\u00f3n se ejecute en nombre del usuario root, pero al revisar <noindex><a rel=\"nofollow\" href=\"http:\/\/www.kernel.org\/doc\/man-pages\/online\/pages\/man7\/capabilities.7.html\">la lista <\/a><\/noindex>se revela que solo se requiere un permiso <code>CAP_NET_RAW<\/code>.<\/p>\n<p>Suponiendo que est\u00e1 en el directorio donde se encuentra el archivo binario <code>tracewalk<\/code>, puede agregar este permiso de la siguiente manera:<\/p>\n<pre><code class=\"bash\">sudo setcap cap_net_raw=eip tracewalk<\/code><\/pre>\n<p>\nPor ahora, ignore el sufijo <code>=eip<\/code> para el permiso, les hablar\u00e9 de esto en un par de segundos. Tenga en cuenta que el nombre del permiso est\u00e1 en min\u00fasculas. Ahora puede verificar si ha configurado correctamente los permisos con:<\/p>\n<pre><code class=\"bash\">setcap -v cap_new_raw=eip tracewalk<\/code><\/pre>\n<p>\nO puede listar todos los permisos establecidos para el archivo ejecutable:<\/p>\n<pre><code class=\"bash\">getcap tracewalk\n<\/code><\/pre>\n<p>\nPara su informaci\u00f3n, tambi\u00e9n puede eliminar todos los permisos del archivo ejecutable con:<\/p>\n<pre><code class=\"bash\">setcap -r tracewalk<\/code><\/pre>\n<p>\nEn este punto, deber\u00eda poder ejecutar el archivo ejecutable como un usuario no privilegiado, y deber\u00eda poder trabajar con sockets sin procesar, pero no tendr\u00e1 ning\u00fan otro privilegio que posee el usuario root.<\/p>\n<p>Entonces, \u00bfqu\u00e9 significa este extra\u00f1o sufijo <code>=eip<\/code>? \u0417\u0434\u0435\u0441\u044c \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u0438\u043a\u0430 \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u043f\u0440\u0438\u0440\u043e\u0434\u044b \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0439. \u041a\u0430\u0436\u0434\u044b\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0438\u043c\u0435\u0435\u0442 \u0442\u0440\u0438 \u043d\u0430\u0431\u043e\u0440\u0430 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0439 \u2014 <i>efectivos, heredados y permitidos (effective, inheritable y permitted)<\/i>:<\/p>\n<ul>\n<li><b>Efectivos (Effective)<\/b> los permisos son aquellos que determinan lo que el proceso puede realmente hacer. Por ejemplo, no puede interactuar con sockets sin procesar si <code>CAP_NET_RAW<\/code> no est\u00e1 en el conjunto efectivo.<\/li>\n<li><b>Permitidos (Permitted)<\/b> los permisos son aquellos que el proceso puede tener, si los solicita con la llamada correspondiente. No permiten que el proceso haga realmente nada, a menos que haya sido programado espec\u00edficamente para solicitar el permiso indicado. Esto permite escribir procesos para agregar permisos especialmente importantes al conjunto efectivo solo por el tiempo que realmente se requieran.<\/li>\n<li><b>Heredados (Inheritable)<\/b> los permisos son aquellos que pueden ser heredados en el conjunto disponible de un proceso hijo. Durante la operaci\u00f3n <code>fork()<\/code> o <code>clone()<\/code> al proceso hijo siempre se le da una copia de los permisos del proceso padre, ya que en este momento a\u00fan est\u00e1 ejecutando el mismo archivo ejecutable. El conjunto heredado se utiliza cuando <code>exec()<\/code> (o an\u00e1logo) se llama para reemplazar el archivo ejecutable por otro. En este punto, el conjunto disponible del proceso se enmascara por el conjunto heredado para obtener el conjunto disponible que se utilizar\u00e1 para el nuevo proceso.<\/li>\n<\/ul>\n<p>\nPor lo tanto, la utilidad <code>setcap<\/code> nos permite agregar permisos de estos tres conjuntos de forma independiente para este archivo ejecutable. Tenga en cuenta que el valor de los grupos se interpreta de manera un poco diferente para los permisos de archivo:<\/p>\n<ul>\n<li><b>L\u00edneas de alimentaci\u00f3n duales disponibles 2\u00d7220 V <\/b>los permisos de archivo son aquellos que siempre est\u00e1n disponibles para el archivo ejecutable, incluso si el proceso padre que lo invoc\u00f3 no los ten\u00eda. Anteriormente se les llamaba \"permisos obligatorios\".<\/li>\n<li><b>Hereditarios <\/b>los permisos de archivo definen una m\u00e1scara adicional que tambi\u00e9n se puede utilizar para eliminar permisos del conjunto del proceso que llama. Se aplican adem\u00e1s del conjunto heredado del proceso que llama, por lo que el permiso se hereda solo si existe en ambos conjuntos.<\/li>\n<li><b>Efectivos <\/b>los permisos de archivo son en realidad solo un bit, no un conjunto, y si se establece, significa que todo el conjunto de permisos disponible tambi\u00e9n se copia al conjunto efectivo del nuevo proceso. Esto puede ser usado para agregar permisos a los procesos que no fueron escritos espec\u00edficamente para solicitarlos. Dado que es un solo bit, si lo establece para alg\u00fan permiso, debe establecerse para todos los permisos. Puede pensar en \u00e9l como un bit de legado, porque se usa para permitir el uso de permisos para aplicaciones que no los soportan.<\/li>\n<\/ul>\n<p>\nAl especificar permisos a trav\u00e9s de <code>setcap<\/code> tres letras <code>e<\/code>, <code>i<\/code> y <code>p<\/code> se refieren a <i>efectivo, heredado y disponible<\/i> conjuntos, respectivamente. Entonces, la especificaci\u00f3n anterior:<\/p>\n<pre><code class=\"bash\">sudo setcap cap_net_raw=eip tracewalk<\/code><\/pre>\n<p>\n\u2026 indica que el permiso <code>CAP_NET_RAW<\/code> debe a\u00f1adirse a los conjuntos disponibles y heredados y que tambi\u00e9n debe establecerse el bit efectivo. Esto reemplazar\u00e1 cualquier permiso previamente establecido en el archivo. Para establecer varios permisos a la vez, use una lista separada por comas:<\/p>\n<pre><code class=\"bash\">sudo setcap cap_net_admin,cap_net_raw=eip tracewalk<\/code><\/pre>\n<p>\n<noindex><a rel=\"nofollow\" href=\"http:\/\/www.kernel.org\/doc\/man-pages\/online\/pages\/man7\/capabilities.7.html\">La gu\u00eda sobre permisos<\/a><\/noindex> discute todo esto con m\u00e1s detalle, pero espero que esta publicaci\u00f3n haya desmitificado un poco lo que est\u00e1 sucediendo. Solo queda mencionar algunas advertencias y trucos.<\/p>\n<p>Primero, las capacidades de archivo no funcionan con enlaces simb\u00f3licos: debe aplicarlas al propio archivo binario (es decir, al destino del enlace simb\u00f3lico).<\/p>\n<p>En segundo lugar, no funcionan con scripts interpretados. Por ejemplo, si tienes un script de Python al que deseas asignar permisos, debes asignarlos al propio int\u00e9rprete de Python. Esto es evidentemente un problema potencial de seguridad, ya que todos los scripts que se ejecuten con ese int\u00e9rprete tendr\u00e1n los permisos establecidos, aunque sigue siendo considerablemente mejor que usar SUID. La soluci\u00f3n m\u00e1s com\u00fan parece ser escribir un archivo ejecutable separado en C o un equivalente que pueda realizar las operaciones necesarias y llamarlo desde el script. Este enfoque es similar al utilizado por Wireshark, que emplea un archivo binario. <code>\/usr\/bin\/dumpcap<\/code> para realizar operaciones privilegiadas:<\/p>\n<pre><code class=\"bash\">$ getcap \/usr\/bin\/dumpcap \n\/usr\/bin\/dumpcap = cap_net_admin,cap_net_raw+eip<\/code><\/pre>\n<p>\nEn tercer lugar, los permisos de archivos se desactivan si utilizas la variable de entorno <code>LD_LIBRARY_PATH<\/code> por razones evidentes de seguridad<i>(1)<\/i>. Lo mismo se aplica a <code>LD_PRELOAD<\/code>, hasta donde s\u00e9.<\/p>\n<p><i>1. Dado que un atacante evidentemente puede sustituir una de las bibliotecas est\u00e1ndar y usar <code>LD_LIBRARY_PATH<\/code>, para hacer que su biblioteca se llame preferiblemente antes que la del sistema, y, por lo tanto, tener su propio c\u00f3digo arbitrario ejecut\u00e1ndose con los mismos privilegios que la aplicaci\u00f3n que lo invoca. <br \/>\n<\/i><\/p>\n<p><i><b>Eso es todo. Puedes obtener m\u00e1s informaci\u00f3n sobre el programa del curso en <noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/rbVT\/\">el webinar que se llevar\u00e1 a cabo el 24 de enero.<\/a><\/noindex><\/b><\/i><br \/>\n<br \/>Fuente: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/otus\/blog\/483934\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442. \u041c\u044b \u0430\u043a\u0442\u0438\u0432\u043d\u043e \u0432\u043b\u0438\u0432\u0430\u0435\u043c\u0441\u044f \u0432 \u0440\u0430\u0431\u043e\u0442\u0443 \u0438 \u0443\u0436\u0435 \u0432 \u044f\u043d\u0432\u0430\u0440\u0435 \u0433\u043e\u0442\u043e\u0432\u0438\u043c \u043c\u043d\u043e\u0433\u043e \u043c\u043e\u0449\u043d\u044b\u0445 \u0437\u0430\u043f\u0443\u0441\u043a\u043e\u0432. \u0421\u0440\u0435\u0434\u0438 \u043f\u0440\u043e\u0447\u0438\u0445, \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d \u043d\u0430\u0431\u043e\u0440 \u043d\u0430 \u043d\u043e\u0432\u044b\u0439 \u043f\u043e\u0442\u043e\u043a \u043f\u043e\u043b\u044e\u0431\u0438\u0432\u0448\u0435\u0433\u043e\u0441\u044f \u0432\u0441\u0435\u043c \u043a\u0443\u0440\u0441\u0430 \u00ab\u0410\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 Linux\u00bb. \u0412 \u043f\u0440\u0435\u0434\u0434\u0432\u0435\u0440\u0438\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u043e\u043d\u043d\u043e \u0434\u0435\u043b\u0438\u043c\u0441\u044f \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u043e\u043c \u043f\u043e\u043b\u0435\u0437\u043d\u043e\u0433\u043e \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0430. \u0424\u0430\u0439\u043b\u043e\u0432\u044b\u0435 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e\u0442 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u0443\u044e \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u0443 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u043c \u0444\u0430\u0439\u043b\u0430\u043c SUID, \u043d\u043e \u043c\u043e\u0433\u0443\u0442 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0437\u0430\u043f\u0443\u0442\u0430\u043d\u043d\u044b\u043c\u0438 \u043d\u0430 \u043f\u0435\u0440\u0432\u044b\u0439 \u0432\u0437\u0433\u043b\u044f\u0434. \u0412\u0441\u0435 \u043c\u044b \u0437\u043d\u0430\u0435\u043c, \u0447\u0442\u043e [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":55252,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-55251","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.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442. \u041c\u044b \u0430\u043a\u0442\u0438\u0432\u043d\u043e \u0432\u043b\u0438\u0432\u0430\u0435\u043c\u0441\u044f \u0432 \u0440\u0430\u0431\u043e\u0442\u0443 \u0438 \u0443\u0436\u0435 \u0432 \u044f\u043d\u0432\u0430\u0440\u0435 \u0433\u043e\u0442\u043e\u0432\u0438\u043c \u043c\u043d\u043e\u0433\u043e \u043c\u043e\u0449\u043d\u044b\u0445 \u0437\u0430\u043f\u0443\u0441\u043a\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\/es\/blog\/administrirovanie\/fajlovye-razresheniya-v-linux\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"es_ES\" \/>\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\u0424\u0430\u0439\u043b\u043e\u0432\u044b\u0435 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0432 Linux | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442. \u041c\u044b \u0430\u043a\u0442\u0438\u0432\u043d\u043e \u0432\u043b\u0438\u0432\u0430\u0435\u043c\u0441\u044f \u0432 \u0440\u0430\u0431\u043e\u0442\u0443 \u0438 \u0443\u0436\u0435 \u0432 \u044f\u043d\u0432\u0430\u0440\u0435 \u0433\u043e\u0442\u043e\u0432\u0438\u043c \u043c\u043d\u043e\u0433\u043e \u043c\u043e\u0449\u043d\u044b\u0445 \u0437\u0430\u043f\u0443\u0441\u043a\u043e\u0432.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/fajlovye-razresheniya-v-linux\" \/>\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=\"2020-01-15T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:03:21+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\udd47Permisos de archivos en Linux | ProHoster","description":"Hola a todos. Nos estamos integrando activamente en el trabajo y ya en enero tenemos muchas lanzamientos potentes preparados.","canonical_url":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/fajlovye-razresheniya-v-linux","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"es_ES","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\u0424\u0430\u0439\u043b\u043e\u0432\u044b\u0435 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0432 Linux | ProHoster","og:description":"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442. \u041c\u044b \u0430\u043a\u0442\u0438\u0432\u043d\u043e \u0432\u043b\u0438\u0432\u0430\u0435\u043c\u0441\u044f \u0432 \u0440\u0430\u0431\u043e\u0442\u0443 \u0438 \u0443\u0436\u0435 \u0432 \u044f\u043d\u0432\u0430\u0440\u0435 \u0433\u043e\u0442\u043e\u0432\u0438\u043c \u043c\u043d\u043e\u0433\u043e \u043c\u043e\u0449\u043d\u044b\u0445 \u0437\u0430\u043f\u0443\u0441\u043a\u043e\u0432.","og:url":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/fajlovye-razresheniya-v-linux","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":"2020-01-15T21:00:00+00:00","article:modified_time":"2020-02-18T11:03:21+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"55251","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":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 19:47:37","updated":"2022-09-30 13:42:26","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/55251","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/comments?post=55251"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/55251\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media\/55252"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=55251"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=55251"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=55251"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}