{"id":55823,"date":"2020-01-29T00:00:00","date_gmt":"2020-01-28T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/uskoryaem-openvpn-na-routere-openwrt-alternativnaya-versiya-bez-payalnika-i-hardvarnogo-ekstremizma"},"modified":"2020-02-18T14:03:58","modified_gmt":"2020-02-18T11:03:58","slug":"uskoryaem-openvpn-na-routere-openwrt-alternativnaya-versiya-bez-payalnika-i-hardvarnogo-ekstremizma","status":"publish","type":"post","link":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/uskoryaem-openvpn-na-routere-openwrt-alternativnaya-versiya-bez-payalnika-i-hardvarnogo-ekstremizma","title":{"rendered":"Acceleriamo OpenVPN sul router Openwrt. Versione alternativa senza saldatore e un estremo hardware.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Acceleriamo OpenVPN sul router Openwrt. Versione alternativa senza saldatore e un estremo hardware.\" src=\"\/wp-content\/uploads\/2020\/01\/41eccab7acd03770306db78f510a201f.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nCiao a tutti, recentemente ho letto <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/368735\/\">un vecchio articolo<\/a><\/noindex> su come accelerare OpenVPN sul router, trasferendo la crittografia su un hardware separato, che \u00e8 saldamente integrato all'interno del router stesso. Ho un caso simile a quello dell'autore: TP-Link WDR3500 con 128 megabyte di RAM e un processore modesto, che non riesce affatto a gestire la crittografia dei tunnel. Tuttavia, non volevo assolutamente attraversare il router con il saldatore. Qui di seguito il mio esperienza di esternalizzazione di OpenVPN su un hardware separato con riserva sul router nel caso di emergenza. <br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3>Compito<\/h3>\n<p>\nHo un router TP-Link WDR3500 e un Orange Pi Zero H2. Vogliamo che la crittografia dei tunnel venga gestita dall'Orange Pi, mentre se succede qualcosa a quest'ultimo, l'elaborazione <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/it\/vpn\/\"   title=\"VPN\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"92\">VPN<\/a> ritorner\u00e0 nuovamente sul router. Tutte le impostazioni del firewall sul router devono continuare a funzionare come prima. E in generale, l'aggiunta di un ulteriore hardware deve avvenire in modo trasparente e invisibile per tutti. OpenVPN funziona su TCP, l'adattatore TAP in modalit\u00e0 bridge (server-bridge).<\/p>\n<h3>Soluzione<\/h3>\n<p>\nInvece di collegarmi via USB, ho deciso di utilizzare una porta del router e instradare attraverso di essa tutte le sottoreti in cui \u00e8 presente il bridge VPN. Di conseguenza, l'hardware sar\u00e0 fisicamente connesso alle stesse reti dei server VPN sul router. Dopo di che, alziamo i medesimi server su Orange Pi, e sul router configuriamo un proxy in modo che gestisca tutte le connessioni in arrivo verso il server esterno, e se Orange Pi \u00e8 morto o non disponibile, allora verso un server interno di fallback. Ho scelto HAProxy.<\/p>\n<p>Ecco come funziona:<\/p>\n<ol>\n<li>Arriva un cliente<\/li>\n<li>Se il server esterno non \u00e8 disponibile, la connessione continua a essere reindirizzata verso il server interno<\/li>\n<li>Se \u00e8 disponibile, il cliente viene gestito dall'Orange Pi<\/li>\n<li>VPN su Orange Pi decripta i pacchetti e li rimanda indietro al router<\/li>\n<li>Il router li instrada altrove<\/li>\n<\/ol>\n<p><\/p>\n<h3>Esempio di implementazione<\/h3>\n<p>\nQuindi, supponiamo di avere sul router due reti \u2014 main(1) e guest(2), per ciascuna di esse abbiamo un server OpenVPN per le connessioni esterne.<\/p>\n<h4>Configurazione della rete<\/h4>\n<p>\nDobbiamo far passare entrambe le reti attraverso una porta, quindi creiamo 2 VLAN. <\/p>\n<p>Sul router nella sezione Network\/Switch creiamo le VLAN (per esempio 1 e 2) e le attiviamo in modalit\u00e0 tagged sulla porta desiderata, aggiungendo le nuove eth0.1 e eth0.2 alle reti corrispondenti (per esempio, aggiungendole al bridge). <\/p>\n<p>Su Orange Pi creiamo due interfacce VLAN (ho Archlinux ARM + netctl):<\/p>\n<p><b class=\"spoiler_title\">\/etc\/netctl\/vlan-main<\/b><\/p>\n<pre><code class=\"plaintext\">Descrizione='VLAN principale su eth0'\nInterfaccia=vlan-main\nConnessione=vlan\nAssociatoInterfacce=eth0\nVLANID=1\nIP=no\n<\/code><\/pre>\n<p>\n<b class=\"spoiler_title\">\/etc\/netctl\/vlan-guest<\/b><\/p>\n<pre><code class=\"plaintext\">Descrizione='VLAN ospite su eth0'\nInterfaccia=vlan-guest\nConnessione=vlan\nAssociatoInterfacce=eth0\nVLANID=2\nIP=no\n<\/code><\/pre>\n<p>\nE subito creiamo due bridge per loro:<\/p>\n<p><b class=\"spoiler_title\">\/etc\/netctl\/br-main<\/b><\/p>\n<pre><code class=\"plaintext\">Description=\"Collegamento principale del bridge\"\nInterface=br-main\nConnection=bridge\nBindsToInterfaces=(vlan-main)\nIP=dhcp\n<\/code><\/pre>\n<p>\n<b class=\"spoiler_title\">\/etc\/netctl\/br-guest<\/b><\/p>\n<pre><code class=\"plaintext\">Description=\"Collegamento del bridge ospiti\"\nInterface=br-guest\nConnection=bridge\nBindsToInterfaces=(vlan-guest)\nIP=dhcp\n<\/code><\/pre>\n<p>\nAttiviamo l'avvio automatico su tutti e 4 i profili (netctl enable). Ora, dopo il riavvio, l'Orange Pi sar\u00e0 connesso a entrambe le reti richieste. Configuriamo gli indirizzi delle interfacce sull'Orange Pi in Static Leases nel router. <\/p>\n<p><b class=\"spoiler_title\">ip addr show<\/b><\/p>\n<pre><code class=\"plaintext\">4: vlan-main@eth0:  mtu 1500 qdisc noqueue master br-main state UP group default qlen 1000\n    link\/ether 02:42:f0:f8:23:c8 brd ff:ff:ff:ff:ff:ff\n    inet6 fe80::42:f0ff:fef8:23c8\/64 scope link \n       valid_lft forever preferred_lft forever\n\n5: vlan-guest@eth0:  mtu 1500 qdisc noqueue master br-guest state UP group default qlen 1000\n    link\/ether 02:42:f0:f8:23:c8 brd ff:ff:ff:ff:ff:ff\n    inet6 fe80::42:f0ff:fef8:23c8\/64 scope link \n       valid_lft forever preferred_lft forever\n\n6: br-main:  mtu 1500 qdisc noqueue state UP group default qlen 1000\n    link\/ether 52:c7:0f:89:71:6e brd ff:ff:ff:ff:ff:ff\n    inet 192.168.1.3\/24 brd 192.168.1.255 scope global dynamic noprefixroute br-main\n       valid_lft 29379sec preferred_lft 21439sec\n    inet6 fe80::50c7:fff:fe89:716e\/64 scope link \n       valid_lft forever preferred_lft forever\n\n7: br-guest:  mtu 1500 qdisc noqueue state UP group default qlen 1000\n    link\/ether ee:ea:19:31:34:32 brd ff:ff:ff:ff:ff:ff\n    inet 192.168.2.3\/24 brd 192.168.2.255 scope global br-guest\n       valid_lft forever preferred_lft forever\n    inet6 fe80::ecea:19ff:fe31:3432\/64 scope link \n       valid_lft forever preferred_lft forever\n<\/code><\/pre>\n<p><\/p>\n<h4>Configurazione VPN<\/h4>\n<p>\nSuccessivamente copiamo le impostazioni da router per OpenVPN e le chiavi. Le impostazioni possono solitamente essere prelevate da <i>\/tmp\/etc\/openvpn*.conf<\/i><\/p>\n<p>Per impostazione predefinita openvpn, eseguito in modalit\u00e0 TAP e server-bridge, mantiene la propria interfaccia inattiva. Affinch\u00e9 tutto funzioni, \u00e8 necessario aggiungere uno script che venga eseguito durante l'attivazione della connessione. <\/p>\n<p><b class=\"spoiler_title\">\/etc\/openvpn\/main.conf<\/b><\/p>\n<pre><code class=\"plaintext\">dev vpn-main\ndev-type tap\n\nclient-to-client\npersist-key\npersist-tun\nca \/etc\/openvpn\/main\/ca.crt\ncert \/etc\/openvpn\/main\/main.crt\ncipher AES-256-CBC\ncomp-lzo yes\ndh \/etc\/openvpn\/main\/dh2048.pem\nifconfig-pool-persist \/etc\/openvpn\/ipp_main.txt\nkeepalive 10 60\nkey \/etc\/openvpn\/main\/main.key\nport 443\nproto tcp\npush \"redirect-gateway\"\npush \"dhcp-option DNS 192.168.1.1\"\nserver-bridge 192.168.1.3 255.255.255.0 192.168.1.200 192.168.1.229\nstatus \/tmp\/openvpn.main.status\nverb 3\n\nsetenv profile_name main\nscript-security 2\nup \/etc\/openvpn\/vpn-up.sh\n<\/code><\/pre>\n<p>\n<b class=\"spoiler_title\">\/etc\/openvpn\/vpn-up.sh<\/b><\/p>\n<pre><code class=\"bash\">#!\/bin\/sh\n\nifconfig vpn-${profile_name} up\nbrctl addif br-${profile_name} vpn-${profile_name}\n<\/code><\/pre>\n<p>\nDi conseguenza, non appena si connette, l'interfaccia vpn-main sar\u00e0 aggiunta a br-main. Per la rete guest \u2014 in modo analogo, tenendo conto del nome dell'interfaccia e dell'indirizzo nel server-bridge.<\/p>\n<h4>Routing delle richieste esterne e proxying<\/h4>\n<p>\nA questo punto, l'Orange Pi \u00e8 gi\u00e0 in grado di accettare connessioni e inoltrare i clienti alle reti desiderate. Resta da configurare il proxy per le connessioni in ingresso sul router. <\/p>\n<p>Trasferiamo i server VPN del router su altre porte, installiamo HAProxy sul router e configuriamo:<\/p>\n<p><b class=\"spoiler_title\">\/etc\/haproxy.cfg<\/b><\/p>\n<pre><code class=\"plaintext\">global\n        maxconn 256\n        uid 0\n        gid 0\n        daemon\n\ndefaults\n        retries 1\n        contimeout 1000\n        option splice-auto\n\nlisten guest_vpn\n        bind :444\n        mode tcp\n        server 0-orange 192.168.2.3:444 check\n        server 1-local  127.0.0.1:4444 check backup\n\nlisten main_vpn\n        bind :443\n        mode tcp\n        server 0-orange 192.168.1.3:443 check\n        server 1-local  127.0.0.1:4443 check backup\n<\/code><\/pre>\n<p><\/p>\n<h4>Godiamo<\/h4>\n<p>\nSe tutto \u00e8 andato secondo i piani, i clienti passeranno a Orange Pi e il processore del router non si surriscalder\u00e0 pi\u00f9, mentre la velocit\u00e0 della VPN aumenter\u00e0 sensibilmente. Allo stesso tempo, tutte le regole di rete impostate sul router rimarranno valide. In caso di guasto su Orange Pi, si disconnetter\u00e0 e HAProxy reindirizzer\u00e0 i clienti ai server locali. <\/p>\n<p>Grazie per l'attenzione, suggerimenti e correzioni sono benvenuti.<br \/>\n<br \/>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/485876\/\">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, \u043d\u0435\u0434\u0430\u0432\u043d\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u043b \u0434\u0430\u0432\u043d\u044e\u044e \u0441\u0442\u0430\u0442\u044c\u044e \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u043c\u043e\u0436\u043d\u043e \u0443\u0441\u043a\u043e\u0440\u0438\u0442\u044c OpenVPN \u043d\u0430 \u0440\u043e\u0443\u0442\u0435\u0440\u0435, \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u044f \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043d\u0430 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u0443\u044e \u0436\u0435\u043b\u0435\u0437\u043a\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u0440\u0438\u043f\u0430\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0432\u043d\u0443\u0442\u0440\u0438 \u0441\u0430\u043c\u043e\u0433\u043e \u0440\u043e\u0443\u0442\u0435\u0440\u0430. \u0423 \u043c\u0435\u043d\u044f \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u044b\u0439 \u0441 \u0430\u0432\u0442\u043e\u0440\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0439 \u2014 TP-Link WDR3500 \u0441 128 \u043c\u0435\u0433\u0430\u0431\u0430\u0439\u0442\u0430\u043c\u0438 \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043a\u0438 \u0438 \u0431\u0435\u0434\u043d\u044b\u043c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043e\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0430\u043f\u0440\u043e\u0447\u044c \u043d\u0435 \u0441\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0442\u0443\u043d\u043d\u0435\u043b\u0435\u0439. \u041e\u0434\u043d\u0430\u043a\u043e, \u043b\u0435\u0437\u0442\u044c \u0432 \u0440\u043e\u0443\u0442\u0435\u0440 \u0441 \u043f\u0430\u044f\u043b\u044c\u043d\u0438\u043a\u043e\u043c \u043c\u043d\u0435 \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":55824,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-55823","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=\"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\/uskoryaem-openvpn-na-routere-openwrt-alternativnaya-versiya-bez-payalnika-i-hardvarnogo-ekstremizma\" \/>\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\u0423\u0441\u043a\u043e\u0440\u044f\u0435\u043c OpenVPN \u043d\u0430 \u0440\u043e\u0443\u0442\u0435\u0440\u0435 Openwrt. \u0410\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0431\u0435\u0437 \u043f\u0430\u044f\u043b\u044c\u043d\u0438\u043a\u0430 \u0438 \u0445\u0430\u0440\u0434\u0432\u0430\u0440\u043d\u043e\u0433\u043e \u044d\u043a\u0441\u0442\u0440\u0435\u043c\u0438\u0437\u043c\u0430 | ProHoster\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/uskoryaem-openvpn-na-routere-openwrt-alternativnaya-versiya-bez-payalnika-i-hardvarnogo-ekstremizma\" \/>\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-28T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:03:58+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\udd47Acceleriamo OpenVPN sul router Openwrt. Versione alternata senza saldatore e estremismo hardware | ProHoster","description":"","canonical_url":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/uskoryaem-openvpn-na-routere-openwrt-alternativnaya-versiya-bez-payalnika-i-hardvarnogo-ekstremizma","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\u0423\u0441\u043a\u043e\u0440\u044f\u0435\u043c OpenVPN \u043d\u0430 \u0440\u043e\u0443\u0442\u0435\u0440\u0435 Openwrt. \u0410\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0431\u0435\u0437 \u043f\u0430\u044f\u043b\u044c\u043d\u0438\u043a\u0430 \u0438 \u0445\u0430\u0440\u0434\u0432\u0430\u0440\u043d\u043e\u0433\u043e \u044d\u043a\u0441\u0442\u0440\u0435\u043c\u0438\u0437\u043c\u0430 | ProHoster","og:url":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/uskoryaem-openvpn-na-routere-openwrt-alternativnaya-versiya-bez-payalnika-i-hardvarnogo-ekstremizma","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-28T21:00:00+00:00","article:modified_time":"2020-02-18T11:03:58+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"55823","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:36:29","updated":"2026-02-04 14:42:02","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\/55823","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=55823"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/55823\/revisions"}],"predecessor-version":[{"id":156721,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/55823\/revisions\/156721"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media\/55824"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=55823"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=55823"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=55823"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}