{"id":2357,"date":"2024-11-18T14:12:59","date_gmt":"2024-11-18T13:12:59","guid":{"rendered":"https:\/\/alessandromasciadri.com\/?p=2357"},"modified":"2024-11-18T20:48:52","modified_gmt":"2024-11-18T19:48:52","slug":"come-utilizzare-shadowsocks-con-visual-studio-code","status":"publish","type":"post","link":"https:\/\/alessandromasciadri.com\/come-utilizzare-shadowsocks-con-visual-studio-code\/","title":{"rendered":"Come utilizzare Shadowsocks con Visual Studio Code"},"content":{"rendered":"\t\t<div data-akihiro-type=\"ama-post\" data-akihiro-id=\"2357\" class=\"akihiro akihiro-2357\" data-akihiro-post-type=\"post\">\n\t\t\t\t<div class=\"akihiro-element akihiro-element-1800a1f e-flex e-con-boxed e-con e-parent\" data-id=\"1800a1f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"akihiro-element akihiro-element-582815a akihiro-widget akihiro-widget-text-editor\" data-id=\"582815a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>In questo <a href=\"https:\/\/alessandromasciadri.com\/come-configurare-un-server-shadowsocks-con-docker\/\">precedente articolo<\/a> abbiamo visto come configurare uno Shadowsocks server e facilmente usarlo per instradare il nostro traffico internet attraverso di esso. Quando per\u00f2 si parla di instradare il traffico prodotto da Visual Studio Code, allora c&#8217;\u00e8 bisogno di qualche accorgimento in pi\u00f9, in quanto Visual Studio Code non supporta nativamente SOCKS5. Vediamo quindi come ovviare a questo problema nella seguente guida.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-92c7fa3 akihiro-widget akihiro-widget-heading\" data-id=\"92c7fa3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t<h3 class=\"akihiro-heading-title akihiro-size-default\">Installazione e configurazione di Privoxy<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-30db994 akihiro-widget akihiro-widget-text-editor\" data-id=\"30db994\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Per poter utilizzare Shadowsocks con Visual Studio Code dobbiamo preventivamente installare sulla nostra macchina locale Privoxy, un HTTP Proxy che utilizzeremo come bridge per convertire il traffico SOCKS5 in traffico HTTP\/HTTPS. <\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-6eda2f5 akihiro-widget akihiro-widget-text-editor\" data-id=\"6eda2f5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Come prima cosa procediamo all&#8217;installazione di Privoxy<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-f4804d3 akihiro-widget akihiro-widget-code-highlight\" data-id=\"f4804d3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t<div class=\"prismjs-tomorrow copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-bash \">\n\t\t\t\t<code readonly=\"true\" class=\"language-bash\">\n\t\t\t\t\t<xmp>sudo apt install privoxy<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-cbaa5ac akihiro-widget akihiro-widget-text-editor\" data-id=\"cbaa5ac\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Ora apriamo il file di configurazione di Privoxy<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-f1d69de akihiro-widget akihiro-widget-code-highlight\" data-id=\"f1d69de\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t<div class=\"prismjs-tomorrow copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-bash \">\n\t\t\t\t<code readonly=\"true\" class=\"language-bash\">\n\t\t\t\t\t<xmp>sudo vi \/etc\/privoxy\/config<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-00d051a akihiro-widget akihiro-widget-text-editor\" data-id=\"00d051a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>ed aggiungiamo questa riga di configurazione<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-bd48980 akihiro-widget akihiro-widget-code-highlight\" data-id=\"bd48980\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"code-highlight.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t<div class=\"prismjs-tomorrow copy-to-clipboard \">\n\t\t\t<pre data-line=\"\" class=\"highlight-height language-bash \">\n\t\t\t\t<code readonly=\"true\" class=\"language-bash\">\n\t\t\t\t\t<xmp>forward-socks5 \/ 127.0.0.1:1080 .<\/xmp>\n\t\t\t\t<\/code>\n\t\t\t<\/pre>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-db823eb akihiro-widget akihiro-widget-heading\" data-id=\"db823eb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t<h3 class=\"akihiro-heading-title akihiro-size-default\">Configurazione di Visual Studio Code<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-1165eac akihiro-widget akihiro-widget-text-editor\" data-id=\"1165eac\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Grazie a quanto fatto nel punto precedente, siamo ora in grado di configurare Visual Studio Code per utilizzare il nostro nuovo HTTP Proxy, il quale si occuper\u00e0 di instradare il traffico generato da Visual Studio Code verso il nostro server Shadowsocks.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-dfe54c8 akihiro-widget akihiro-widget-text-editor\" data-id=\"dfe54c8\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Apriamo quindi le impostazioni di Visual Studio Code <strong>File -&gt; Preferences -&gt; Settings<\/strong> oppure mediante lo shortcut da tastiera <strong>CTRL + ,<\/strong><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-400d090 akihiro-widget akihiro-widget-text-editor\" data-id=\"400d090\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Individuiamo nell&#8217;albero delle configurazioni la voce Proxy ed impostiamo l&#8217;indirizzo del Proxy a <strong>http:\/\/localhost:8118<\/strong> e impostiamo la voce Proxy Support (for extensions) ad <strong>on<\/strong>. La seguente screenshot da un&#8217;idea delle impostazioni necessarie.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-1ae3872 akihiro-widget akihiro-widget-image\" data-id=\"1ae3872\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"800\" height=\"581\" src=\"https:\/\/alessandromasciadri.com\/ama-uploads\/2024\/11\/shadowsocks-visual-studio-code-01-1024x744.png\" class=\"attachment-large size-large ama-image-2359\" alt=\"\" srcset=\"https:\/\/alessandromasciadri.com\/ama-uploads\/2024\/11\/shadowsocks-visual-studio-code-01-1024x744.png 1024w, https:\/\/alessandromasciadri.com\/ama-uploads\/2024\/11\/shadowsocks-visual-studio-code-01-300x218.png 300w, https:\/\/alessandromasciadri.com\/ama-uploads\/2024\/11\/shadowsocks-visual-studio-code-01-768x558.png 768w, https:\/\/alessandromasciadri.com\/ama-uploads\/2024\/11\/shadowsocks-visual-studio-code-01.png 1159w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"akihiro-element akihiro-element-377c8ff akihiro-widget akihiro-widget-text-editor\" data-id=\"377c8ff\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"akihiro-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Ora anche il nostro Visual Studio Code \u00e8 in grado di bypassare qualsiasi firewall instradando il traffico verso il nostro Shadowsocks server.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>In questo precedente articolo abbiamo visto come configurare uno Shadowsocks server e facilmente usarlo per instradare il nostro traffico internet attraverso di esso. Quando per\u00f2 si parla di instradare il traffico prodotto da Visual Studio Code, allora c&#8217;\u00e8 bisogno di qualche accorgimento in pi\u00f9, in quanto Visual Studio Code non supporta nativamente SOCKS5. Vediamo quindi [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[2,20,57],"class_list":["post-2357","post","type-post","status-publish","format-standard","hentry","category-sistemistica","tag-code","tag-linux","tag-shadowsocks"],"_links":{"self":[{"href":"https:\/\/alessandromasciadri.com\/ama-json\/wp\/v2\/posts\/2357","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/alessandromasciadri.com\/ama-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/alessandromasciadri.com\/ama-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/alessandromasciadri.com\/ama-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/alessandromasciadri.com\/ama-json\/wp\/v2\/comments?post=2357"}],"version-history":[{"count":4,"href":"https:\/\/alessandromasciadri.com\/ama-json\/wp\/v2\/posts\/2357\/revisions"}],"predecessor-version":[{"id":2362,"href":"https:\/\/alessandromasciadri.com\/ama-json\/wp\/v2\/posts\/2357\/revisions\/2362"}],"wp:attachment":[{"href":"https:\/\/alessandromasciadri.com\/ama-json\/wp\/v2\/media?parent=2357"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/alessandromasciadri.com\/ama-json\/wp\/v2\/categories?post=2357"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/alessandromasciadri.com\/ama-json\/wp\/v2\/tags?post=2357"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}