{"id":1224,"date":"2018-04-06T09:37:58","date_gmt":"2018-04-06T16:37:58","guid":{"rendered":"http:\/\/emresaglam.com\/blog\/?p=1224"},"modified":"2018-04-06T09:37:58","modified_gmt":"2018-04-06T16:37:58","slug":"shadowsocks-auto-deploy","status":"publish","type":"post","link":"https:\/\/emresaglam.com\/blog\/blog\/2018\/04\/06\/shadowsocks-auto-deploy\/","title":{"rendered":"shadowsocks auto deploy"},"content":{"rendered":"<p>I wrote a <a href=\"http:\/\/cloudinit.readthedocs.io\/en\/latest\/index.html\">cloud-init<\/a> script to automate the deployment of a <a href=\"https:\/\/en.wikipedia.org\/wiki\/Shadowsocks\">shadowsocks server<\/a>. I shared it<a href=\"https:\/\/gist.github.com\/emresaglam\/e1e442791cd5b3841b3159c0b9f071e4\"> in a gist here<\/a>.<\/p>\n<p><strong>Features:<\/strong><\/p>\n<ul>\n<li>Creates a non-privileged user\n<ul>\n<li>Uploads your ssh public key to the user<\/li>\n<li>Adds this user to the sudoers group<\/li>\n<\/ul>\n<\/li>\n<li>Disables ssh login for the root user<\/li>\n<li>Downloads and installs libraries required for <a href=\"https:\/\/en.wikipedia.org\/wiki\/Salsa20#ChaCha20_adoption\">chacha20<\/a><\/li>\n<li>Creates a &#8220;random&#8221; password and writes it in the config.json file<\/li>\n<li>config.json file is in the \/root directory. (You will need the password in this config file to be able to connect to your shadowsocks server.)<\/li>\n<li>Starts the shadowsocks server.<\/li>\n<\/ul>\n<p>You have to fill out the _YOURUSERNAMEHERE_, _YOURSSHPUBLICKEYHERE_ and _YOURFULLNAMEHERE_ with your data.<\/p>\n<p>You can use this script in DigitalOcean easily following<a href=\"https:\/\/www.digitalocean.com\/community\/tutorials\/how-to-use-cloud-config-for-your-initial-server-setup\"> this document<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I wrote a cloud-init script to automate the deployment of a shadowsocks server. I shared it in a gist here. Features: Creates a non-privileged user Uploads your ssh public key to the user Adds this user to the sudoers group Disables ssh login for the root user Downloads and installs libraries required for chacha20 Creates &hellip; <a href=\"https:\/\/emresaglam.com\/blog\/blog\/2018\/04\/06\/shadowsocks-auto-deploy\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">shadowsocks auto deploy<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[11,26],"_links":{"self":[{"href":"https:\/\/emresaglam.com\/blog\/wp-json\/wp\/v2\/posts\/1224"}],"collection":[{"href":"https:\/\/emresaglam.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/emresaglam.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/emresaglam.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/emresaglam.com\/blog\/wp-json\/wp\/v2\/comments?post=1224"}],"version-history":[{"count":1,"href":"https:\/\/emresaglam.com\/blog\/wp-json\/wp\/v2\/posts\/1224\/revisions"}],"predecessor-version":[{"id":1225,"href":"https:\/\/emresaglam.com\/blog\/wp-json\/wp\/v2\/posts\/1224\/revisions\/1225"}],"wp:attachment":[{"href":"https:\/\/emresaglam.com\/blog\/wp-json\/wp\/v2\/media?parent=1224"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/emresaglam.com\/blog\/wp-json\/wp\/v2\/categories?post=1224"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/emresaglam.com\/blog\/wp-json\/wp\/v2\/tags?post=1224"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}