{"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":"Permessi dei file in Linux","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><i>Ciao a tutti. Ci stiamo immergendo attivamente nel lavoro e gi\u00e0 a gennaio stiamo preparando molti importanti lanci. Tra gli altri, \u00e8 stato annunciato l'apertura di una nuova edizione del corso che tutti amano. <noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/rbVT\/\">\u00abAmministratore Linux\u00bb<\/a><\/noindex>. In vista del lancio, condividiamo tradizionalmente la traduzione di materiali utili.<\/i><\/p>\n<p><img decoding=\"async\" alt=\"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 noi sappiamo che i file binari <noindex><a rel=\"nofollow\" href=\"http:\/\/en.wikipedia.org\/wiki\/Setuid#Security\">SUID<\/a><\/noindex> i termini \"primary\/secondary\". <noindex><a rel=\"nofollow\" href=\"http:\/\/en.wikipedia.org\/wiki\/Setuid#Security\">sono una cattiva soluzione dal punto di vista della sicurezza.<\/a><\/noindex>Per fortuna, se la tua applicazione richiede alcune privilegiate limitate, c'\u00e8 un modo pi\u00f9 efficiente, noto come <noindex><a rel=\"nofollow\" href=\"http:\/\/www.linuxjournal.com\/article\/5737\">autorizzazioni dei file.<\/a><\/noindex>.<\/p>\n<p>Ti far\u00f2 risparmiare tempo se desideri evitare di leggere attentamente l'articolo sopra: essenzialmente, le autorizzazioni dei file consentono ai processi che vengono eseguiti con i diritti dell'utente root e, quindi, hanno il diritto di fare qualsiasi cosa, di mantenere determinate capacit\u00e0 limitate, delimitate <noindex><a rel=\"nofollow\" href=\"http:\/\/www.kernel.org\/doc\/man-pages\/online\/pages\/man7\/capabilities.7.html\">da questo elenco<\/a><\/noindex>, quando rilasciano privilegi e vengono eseguiti come utente non privilegiato. Ci\u00f2 significa che se un attaccante riesce a compromettere un processo attraverso un attacco di buffer overflow o un altro exploit, non sar\u00e0 in grado di utilizzare altro se non le determinate minime autorizzazioni necessarie al processo.<\/p>\n<p>Le autorizzazioni sono ottime per servizi che di solito vengono sempre eseguiti con i diritti dell'utente root, ma che dire degli strumenti da riga di comando? Fortunatamente, questo \u00e8 altrettanto supportato a condizione che tu abbia gli strumenti appropriati installati. Se stai usando Ubuntu, ti servir\u00e0 ad esempio il pacchetto <code>libcap2-bin<\/code>. Avrai anche bisogno di eseguire un kernel non obsoleto (a partire dalla versione<b> 2.6.24<\/b>).<\/p>\n<p>). Queste funzionalit\u00e0 consentono di collegare autorizzazioni ai file eseguibili in modo simile alla configurazione del bit SUID, ma solo per un insieme specifico di autorizzazioni. L'utilit\u00e0 <code>setcap<\/code> viene utilizzata per aggiungere e rimuovere autorizzazioni da un file.<\/p>\n<p>Il primo passo \u00e8 scegliere le autorizzazioni di cui hai bisogno. Per questo articolo, presumo che ci sia uno strumento di diagnosi di rete denominato <code>tracewalk<\/code>, che dovrebbe essere in grado di utilizzare <noindex><a rel=\"nofollow\" href=\"http:\/\/man7.org\/linux\/man-pages\/man7\/raw.7.html\">socket raw.<\/a><\/noindex>Di solito, per questo \u00e8 necessario che l'applicazione venga eseguita con i diritti dell'utente root, ma durante la revisione <noindex><a rel=\"nofollow\" href=\"http:\/\/www.kernel.org\/doc\/man-pages\/online\/pages\/man7\/capabilities.7.html\">un elenco <\/a><\/noindex>si scopre che \u00e8 solo necessaria l'autorizzazione <code>CAP_NET_RAW.<\/code>.<\/p>\n<p>Assumendo 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 fra un paio di secondi. Nota che il nome dell'autorizzazione \u00e8 in minuscolo. Ora puoi controllare se hai configurato 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 riferimento, puoi anche rimuovere tutte le autorizzazioni dal 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 socket raw, ma senza alcun altro privilegio di cui dispone 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, ereditabili e disponibili (effective, inheritable e permitted)<\/i>:<\/p>\n<ul>\n<li><b>Effettive (Effective)<\/b> autorizzazioni sono quelle che definiscono cosa pu\u00f2 effettivamente fare il processo. Ad esempio, non pu\u00f2 gestire socket raw se <code>CAP_NET_RAW.<\/code> non \u00e8 nel set efficace.<\/li>\n<li><b>Disponibili (Permitted)<\/b> autorizzazioni sono quelle che \u00e8 consentito avere al processo, se le richiede con la chiamata appropriata. Non consentono al processo di fare effettivamente nulla, a meno che non sia stato specificamente scritto per richiedere l'autorizzazione specificata. Questo consente di scrivere processi per aggiungere autorizzazioni particolarmente importanti al set efficace solo per il periodo in cui sono effettivamente necessarie.<\/li>\n<li><b>Ereditabili (Inheritable)<\/b> autorizzazioni sono quelle che possono essere ereditate nel set disponibile dal processo figlio creato. Durante l'operazione <code>fork()<\/code> o <code>clone()<\/code> il processo figlio riceve sempre una copia delle autorizzazioni del processo padre, poich\u00e9 in quel momento sta ancora eseguendo lo stesso file eseguibile. Il set ereditabile viene utilizzato quando <code>exec()<\/code> (o simile) viene chiamato per sostituire il file eseguibile con un altro. A questo punto, il set disponibile del processo \u00e8 mascherato dal set ereditabile per ottenere il set disponibile che sar\u00e0 utilizzato per il nuovo processo.<\/li>\n<\/ul>\n<p>\nPertanto, l'utilit\u00e0 <code>setcap<\/code> ci consente di aggiungere i permessi di questi tre set in modo indipendente per questo file eseguibile. Si noti che il valore dei gruppi \u00e8 interpretato in modo leggermente diverso per i diritti di accesso ai file:<\/p>\n<ul>\n<li><b>Linee di alimentazione doppie disponibili 2\u00d7220 V <\/b>i permessi dei file sono quelli sempre accessibili per il file eseguibile, anche se il processo genitore che lo ha chiamato non ne aveva. Una volta venivano chiamati \"permessi forzati\".<\/li>\n<li><b>Ereditari <\/b>i permessi dei file definiscono una maschera aggiuntiva, che pu\u00f2 essere usata anche per rimuovere permessi dal set del processo chiamante. Si applicano in aggiunta al set ereditario del processo chiamante, quindi il permesso \u00e8 ereditato solo se esiste in entrambi i set.<\/li>\n<li><b>Effettivi <\/b>i permessi dei file rappresentano in realt\u00e0 solo un bit, e se \u00e8 impostato, significa che l'intero set disponibile \u00e8 copiato nel set effettivo del nuovo processo. Questo pu\u00f2 essere utilizzato per aggiungere permessi a processi che non sono stati specificamente scritti per richiederli. Poich\u00e9 \u00e8 un singolo bit, se lo imposti per un qualsiasi permesso, deve essere impostato per tutti i permessi. Puoi pensarlo come a un bit legacy, perch\u00e9 \u00e8 utilizzato per consentire l'uso dei permessi per applicazioni che non li supportano.<\/li>\n<\/ul>\n<p>\nImpostando i permessi tramite <code>setcap<\/code> tre lettere <code>e<\/code>, <code>i<\/code> e <code>p<\/code> riguardano <i>effettivo, ereditario e accessibile<\/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 un permesso <code>CAP_NET_RAW.<\/code> deve essere aggiunto ai set disponibili e ereditari e che deve essere impostato anche il bit effettivo. Questo sostituir\u00e0 eventuali permessi precedentemente impostati nel file. Per impostare immediatamente pi\u00f9 permessi, usa un elenco separato da virgole:<\/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 ai permessi<\/a><\/noindex> discute tutto ci\u00f2 pi\u00f9 in dettaglio, ma spero che questo post abbia un po' demistificato ci\u00f2 che accade. Rimane solo da menzionare alcune avvertenze e trucchi.<\/p>\n<p>Per prima cosa, 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 vuoi assegnare un permesso, devi assegnarlo all'interprete Python stesso. Ovviamente, questo \u00e8 un potenziale problema di sicurezza, perch\u00e9 allora tutti gli script eseguiti con questo interprete avranno il permesso specificato, anche se \u00e8 comunque significativamente meglio che fare SUID. Il workaround pi\u00f9 comune sembra essere quello di scrivere un file eseguibile separato in C o in un linguaggio simile, 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 eseguire 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, i permessi dei file vengono disabilitati se si utilizza una variabile di 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 aggressore pu\u00f2 ovviamente sostituire una delle librerie standard e utilizzare <code>LD_LIBRARY_PATH<\/code>, per forzare la propria libreria a essere chiamata preferibilmente rispetto a quella di sistema, e quindi eseguire il proprio codice arbitrario con gli stessi privilegi dell'applicazione chiamante. <br \/>\n<\/i><\/p>\n<p><i><b>E con questo \u00e8 tutto. Per dettagli sul programma del corso, sar\u00e0 possibile informarsi durante <noindex><a rel=\"nofollow\" href=\"https:\/\/otus.pw\/rbVT\/\">il 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.1.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.1.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\udd47 Permessi dei file in Linux | ProHoster","description":"Ciao a tutti. Ci stiamo attivamente inserendo 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}]}}