{"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\/it\/blog\/administrirovanie\/fajlovye-razresheniya-v-linux","title":{"rendered":"I permessi dei file in Linux","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><i>Ciao a tutti. Ci stiamo attivamente impegnando nel lavoro e gi\u00e0 a gennaio prepariamo molti lanci potenti. Tra le altre cose, \u00e8 stato annunciato l'avvio di un nuovo ciclo del corso che tutti amano. <noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/rbVT\/\">\u00abAmministratore Linux\u00bb<\/a><\/noindex>In previsione del lancio, condividiamo tradizionalmente la traduzione di materiale utile.<\/i><\/p>\n<p><img decoding=\"async\" alt=\"I permessi dei file in Linux\" src=\"\/wp-content\/uploads\/2020\/01\/451acace5e0a9088355acb800d789db9.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<blockquote><p><i>Le autorizzazioni dei file offrono un'alternativa sicura ai file eseguibili SUID, ma possono sembrare un po' complicate a prima vista.<\/i><\/p><\/blockquote>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nTutti sappiamo che i file binari <noindex><a rel=\"nofollow\" href=\"http:\/\/en.wikipedia.org\/wiki\/Setuid#Security\">SUID<\/a><\/noindex> sono <noindex><a rel=\"nofollow\" href=\"http:\/\/en.wikipedia.org\/wiki\/Setuid#Security\">sono una cattiva soluzione in termini di sicurezza.<\/a><\/noindex>Fortunatamente, se la tua applicazione richiede alcune limitate privilegi, esiste un modo pi\u00f9 efficace chiamato <noindex><a rel=\"nofollow\" href=\"http:\/\/www.linuxjournal.com\/article\/5737\">autorizzazioni dei file.<\/a><\/noindex>.<\/p>\n<p>Ti risparmier\u00f2 tempo se vuoi evitare una lettura dettagliata dell'articolo sopra: in sostanza, le autorizzazioni dei file consentono ai processi che vengono avviati con i privilegi dell'utente root e che, quindi, hanno il diritto di fare qualsiasi cosa, di mantenere determinate capacit\u00e0 limitate <noindex><a rel=\"nofollow\" href=\"http:\/\/www.kernel.org\/doc\/man-pages\/online\/pages\/man7\/capabilities.7.html\">da questo elenco<\/a><\/noindex>, quando riducono i privilegi e vengono eseguiti come utente non privilegiato. Ci\u00f2 significa che se un malintenzionato riesce a compromettere un processo tramite un overflow del buffer o un'altra vulnerabilit\u00e0, non potr\u00e0 sfruttare nulla se non le minime autorizzazioni necessarie al processo.<\/p>\n<p>Le autorizzazioni sono ottime per i servizi che di solito vengono sempre eseguiti come utente root, ma cosa possiamo dire delle utility da riga di comando? Fortunatamente, ci\u00f2 \u00e8 supportato a patto che tu disponga degli strumenti giusti. Se stai usando Ubuntu, ad esempio, avrai bisogno del pacchetto <code>libcap2-bin.<\/code>Dovrai anche eseguire un kernel non obsoleto (a partire dalla versione<b> 2.6.24<\/b>).<\/p>\n<p>. Queste funzionalit\u00e0 permettono di collegare le autorizzazioni ai file eseguibili in modo simile all'impostazione del bit SUID, ma solo per un determinato set di autorizzazioni. L'utilit\u00e0 <code>setcap<\/code> \u00e8 utilizzata per aggiungere e rimuovere autorizzazioni da un file.<\/p>\n<p>Il primo passo \u00e8 scegliere le autorizzazioni necessarie. Per questo articolo, suppongo che ci sia uno strumento di diagnostica di rete chiamato <code>tracewalk<\/code>, che dovrebbe essere in grado di usare <noindex><a rel=\"nofollow\" href=\"http:\/\/man7.org\/linux\/man-pages\/man7\/raw.7.html\">sockets RAW.<\/a><\/noindex>Di solito, ci\u00f2 richiede che l'applicazione venga eseguita come utente root, ma esaminando <noindex><a rel=\"nofollow\" href=\"http:\/\/www.kernel.org\/doc\/man-pages\/online\/pages\/man7\/capabilities.7.html\">l'elenco <\/a><\/noindex>si scopre che \u00e8 necessaria solo l'autorizzazione <code>CAP_NET_RAW.<\/code>.<\/p>\n<p>Supponendo che tu sia nella directory in cui si trova il file binario <code>tracewalk<\/code>, puoi aggiungere questa autorizzazione nel seguente modo:<\/p>\n<pre><code class=\"bash\">sudo setcap cap_net_raw=eip tracewalk.<\/code><\/pre>\n<p>\nPer ora, ignora il suffisso <code>=eip<\/code> per l'autorizzazione, ne parler\u00f2 tra un paio di secondi. Tieni presente che il nome dell'autorizzazione \u00e8 in minuscolo. Ora puoi controllare se hai impostato correttamente le autorizzazioni con:<\/p>\n<pre><code class=\"bash\">setcap -v cap_new_raw=eip tracewalk.<\/code><\/pre>\n<p>\nOppure puoi elencare tutte le autorizzazioni impostate per il file eseguibile:<\/p>\n<pre><code class=\"bash\">getcap tracewalk.\n<\/code><\/pre>\n<p>\nPer tua informazione, puoi anche rimuovere tutte le autorizzazioni da un file eseguibile con:<\/p>\n<pre><code class=\"bash\">setcap -r tracewalk.<\/code><\/pre>\n<p>\nA questo punto dovresti essere in grado di eseguire il file eseguibile come utente non privilegiato, e dovrebbe essere in grado di lavorare con sockets RAW, ma non avere altri privilegi che possiede l'utente root.<\/p>\n<p>Quindi, cosa significa questo strano suffisso? <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>effettive, ereditate e disponibili (effective, inheritable e permitted).<\/i>:<\/p>\n<ul>\n<li><b>Le autorizzazioni effettive (Effective)<\/b> sono quelle che determinano cosa un processo pu\u00f2 effettivamente fare. Ad esempio, non pu\u00f2 gestire sockets RAW se <code>CAP_NET_RAW.<\/code> non \u00e8 nel set effettivo.<\/li>\n<li><b>Le autorizzazioni disponibili (Permitted)<\/b> sono quelle che \u00e8 consentito avere a un processo, se le richiede tramite la chiamata appropriata. Non consentono a un processo di fare effettivamente nulla, a meno che non sia stato specificamente scritto per richiedere quella particolare autorizzazione. Questo consente di scrivere processi per aggiungere autorizzazioni particolarmente importanti al set effettivo solo per il periodo in cui sono realmente necessarie.<\/li>\n<li><b>Le autorizzazioni ereditate (Inheritable)<\/b> sono quelle che possono essere ereditate nel set disponibile di un processo figlio. Durante l'operazione <code>fork()<\/code> o <code>clone()<\/code> al processo figlio vengono sempre dati una copia delle autorizzazioni del processo genitore, poich\u00e9 in quel momento sta ancora eseguendo lo stesso file eseguibile. Il set ereditato viene utilizzato quando <code>exec()<\/code> (o simile) viene invocato per sostituire il file eseguibile con un altro. A questo punto, il set disponibile del processo \u00e8 mascherato dal set ereditato per ottenere il set disponibile che sar\u00e0 utilizzato per il nuovo processo.<\/li>\n<\/ul>\n<p>\nCos\u00ec, l'utilit\u00e0 <code>setcap<\/code> ci permette di aggiungere le autorizzazioni di questi tre set in modo indipendente per il file eseguibile. Nota che il valore dei gruppi viene interpretato in modo leggermente diverso per i diritti di accesso ai file:<\/p>\n<ul>\n<li><b>Disponibile <\/b>le autorizzazioni dei file sono quelle sempre disponibili per il file eseguibile, anche se il processo genitore che lo ha richiamato non le aveva. In passato venivano chiamate \"autorizzazioni forzate\".<\/li>\n<li><b>Ereditate <\/b>le autorizzazioni dei file definiscono una maschera aggiuntiva, che pu\u00f2 essere utilizzata anche per rimuovere autorizzazioni dal set del processo chiamante. Si applicano in aggiunta al set ereditato dal processo chiamante, quindi un'autorizzazione \u00e8 ereditata solo se esiste in entrambi i set.<\/li>\n<li><b>Effettive <\/b>le autorizzazioni dei file rappresentano in realt\u00e0 solo un singolo bit e non un set, e se \u00e8 impostato, ci\u00f2 significa che l'intero set disponibile viene anche copiato nel set effettivo del nuovo processo. Questo pu\u00f2 essere utilizzato per aggiungere autorizzazioni a processi che non sono stati specificamente scritti per richiederle. Poich\u00e9 \u00e8 un singolo bit, se lo imposti per un'autorizzazione, deve essere impostato per tutte le autorizzazioni. Puoi pensarlo come a un bit legacy, perch\u00e9 viene utilizzato per consentire l'uso delle autorizzazioni per applicazioni che non le supportano.<\/li>\n<\/ul>\n<p>\nQuando si specificano le autorizzazioni tramite <code>setcap<\/code> tre lettere <code>e<\/code>, <code>i<\/code> e <code>p<\/code> si riferiscono a <i>effettive, ereditate e disponibili<\/i> set rispettivamente. Quindi, la specifica precedente:<\/p>\n<pre><code class=\"bash\">sudo setcap cap_net_raw=eip tracewalk.<\/code><\/pre>\n<p>\n\u2026 indica che l'autorizzazione <code>CAP_NET_RAW.<\/code> deve essere aggiunta ai set disponibili e ereditati e che deve essere impostato anche il bit effettivo. Questo sostituir\u00e0 eventuali autorizzazioni impostate in precedenza nel file. Per impostare pi\u00f9 autorizzazioni contemporaneamente, utilizzare un elenco separato da virgola:<\/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\">Guida alle autorizzazioni<\/a><\/noindex> discute tutto questo in dettaglio, ma spero che questo post abbia un po' demistificato ci\u00f2 che sta accadendo. Rimane solo da menzionare alcune avvertenze e accorgimenti.<\/p>\n<p>In primo luogo, le capacit\u00e0 dei file non funzionano con i symlink: devi applicarle al file binario stesso (cio\u00e8 all'obiettivo del symlink).<\/p>\n<p>In secondo luogo, non funzionano con script interpretati. Ad esempio, se hai uno script Python a cui desideri assegnare un'autorizzazione, devi assegnarla all'interprete Python stesso. \u00c8 ovvio che questo rappresenta un potenziale problema di sicurezza, poich\u00e9 quindi tutti gli script eseguiti con questo interprete avranno l'autorizzazione specificata, anche se \u00e8 comunque significativamente migliore rispetto a fare uno SUID. La soluzione pi\u00f9 comune sembrerebbe essere quella di scrivere un programma eseguibile separato in C o simili, che pu\u00f2 eseguire le operazioni necessarie e richiamarlo dallo script. Questo \u00e8 simile all'approccio utilizzato da Wireshark, che utilizza un file binario <code>\/usr\/bin\/dumpcap<\/code> per svolgere operazioni privilegiate:<\/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>\nIn terzo luogo, le autorizzazioni dei file vengono disabilitate se si utilizza la variabile d'ambiente <code>LD_LIBRARY_PATH<\/code> per ovvi motivi di sicurezza<i>(1)<\/i>. Lo stesso vale per <code>LD_PRELOAD<\/code>, per quanto ne so.<\/p>\n<p><i>1. Poich\u00e9 un attaccante pu\u00f2 evidentemente sostituire una delle librerie standard e utilizzare <code>LD_LIBRARY_PATH<\/code>, per forzare la propria libreria ad essere chiamata in priorit\u00e0 rispetto a quella di sistema, e quindi avere il proprio codice arbitrario eseguito con le stesse autorizzazioni dell'applicazione chiamante. <br \/>\n<\/i><\/p>\n<p><i><b>Questo \u00e8 tutto. Maggiori dettagli sul corso verranno forniti nel <noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/rbVT\/\">webinar che si terr\u00e0 il 24 gennaio.<\/a><\/noindex><\/b><\/i><br \/>\n<br \/>Fonte: <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.0.1 - 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\/it\/blog\/administrirovanie\/fajlovye-razresheniya-v-linux\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.0.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"it_IT\" \/>\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\/it\/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\udd47Autorizzazioni dei file in Linux | ProHoster","description":"Ciao a tutti. Stiamo attivamente entrando nel lavoro e gi\u00e0 a gennaio stiamo preparando molti lanci potenti.","canonical_url":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/fajlovye-razresheniya-v-linux","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"it_IT","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\/it\/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\/it\/wp-json\/wp\/v2\/posts\/55251","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=55251"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/55251\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media\/55252"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=55251"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=55251"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=55251"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}