{"id":35,"date":"2016-12-28T08:58:55","date_gmt":"2016-12-28T00:58:55","guid":{"rendered":"https:\/\/wp.yaanren.xin\/?p=6"},"modified":"2016-12-28T08:58:55","modified_gmt":"2016-12-28T00:58:55","slug":"ubuntu%e4%b8%8bshadowsocks%e5%a4%9a%e7%94%a8%e6%88%b7%e5%90%8e%e7%ab%afmanyuser%e5%89%8d%e7%ab%afsspanel%e6%90%ad%e5%bb%ba%e6%95%99%e7%a8%8b","status":"publish","type":"post","link":"https:\/\/wp.625300.xyz\/?p=35","title":{"rendered":"Ubuntu\u4e0bshadowsocks\u591a\u7528\u6237\u540e\u7aefmanyuser+\u524d\u7aefsspanel\u642d\u5efa\u6559\u7a0b"},"content":{"rendered":"<div class=\"blog-heading\">\n<div class=\"title\">\u8f6c\u8f7d\u81ea\uff1ahttps:\/\/my.oschina.net\/u\/1382365\/blog\/492997?p=1<\/div>\n<div class=\"title\"><\/div>\n<\/div>\n<div class=\"blog-abstract\">\u6458\u8981: Ubuntu\u4e0bshadowsocks\u591a\u7528\u6237\u540e\u7aefmanyuser+\u524d\u7aefsspanel\u642d\u5efa\u6559\u7a0b<\/div>\n<div id=\"blogBody\" class=\"blog-body\">\n<div class=\"BlogContent\">\n<p>\u597d\u5427\uff0c\u5f88\u591a\u4e1c\u897f\u8fd8\u662f\u6709\u4e2a\u524d\u7aef\u7ba1\u7406\u8d77\u6765\u6bd4\u8f83\u65b9\u4fbf\uff0c\u5976\u725b\u4eca\u5929\u4e5f\u914d\u4e86\u4e2a\uff0c\u5199\u4e0b\u8fc7\u7a0b\u8bb0\u5f55\u4e0b\u3002<\/p>\n<p>\u5b89\u88c5shadowsocks\u652f\u6301<\/p>\n<pre class=\"hljs sql\"><code class=\"hljs sql\">apt-get\u00a0<span class=\"hljs-keyword\">install<\/span>\u00a0python-pip\u00a0python-m2crypto\u00a0\npip\u00a0<span class=\"hljs-keyword\">install<\/span>\u00a0cymysql<\/code><\/pre>\n<p>\u5b89\u88c5LNMP<\/p>\n<pre class=\"hljs tcl\"><code class=\"hljs tcl\">wget\u00a0-c\u00a0<span class=\"hljs-keyword\">http<\/span>:\/\/soft.vpser.net\/lnmp\/lnmp1<span class=\"hljs-number\">.2<\/span>-full.tar.gz\u00a0&amp;&amp;\u00a0tar\u00a0zxf\u00a0lnmp1<span class=\"hljs-number\">.2<\/span>-full.tar.gz\u00a0&amp;&amp;\u00a0<span class=\"hljs-keyword\">cd<\/span>\u00a0lnmp1<span class=\"hljs-number\">.2<\/span>-full\u00a0&amp;&amp;\u00a0.\/install.sh\u00a0lnmp<\/code><\/pre>\n<p>\u540e\u7aef\u5b89\u88c5\u914d\u7f6e<\/p>\n<pre class=\"hljs bash\"><code class=\"hljs bash\">git\u00a0<span class=\"hljs-built_in\">clone<\/span>\u00a0-b\u00a0manyuser\u00a0https:\/\/github.com\/mengskysama\/shadowsocks.git\u00a0\u00a0\n<span class=\"hljs-built_in\">cd<\/span>\u00a0.\/shadowsocks\/shadowsocks\u00a0\u00a0\nvim\u00a0Config.py\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\n<span class=\"hljs-comment\">#Config\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/span>\nMYSQL_HOST\u00a0=\u00a0<span class=\"hljs-string\">'localhost'<\/span>\u00a0<span class=\"hljs-comment\">#\u8fd9\u4e00\u884c\u662f\u670d\u52a1\u5668IP\uff0c127.0.0.1\u8868\u793a\u672c\u673a\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/span>\nMYSQL_PORT\u00a0=\u00a03306\u00a0<span class=\"hljs-comment\">#\u6570\u636e\u5e93\u7aef\u53e3\u53f7\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/span>\nMYSQL_USER\u00a0=\u00a0<span class=\"hljs-string\">'nenew'<\/span>\u00a0<span class=\"hljs-comment\">#\u6570\u636e\u5e93\u7528\u6237\u540d\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/span>\nMYSQL_PASS\u00a0=\u00a0<span class=\"hljs-string\">'nenew'<\/span>\u00a0<span class=\"hljs-comment\">#\u6570\u636e\u5e93\u5bc6\u7801\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/span>\nMYSQL_DB\u00a0=\u00a0<span class=\"hljs-string\">'shadowsocks'<\/span>\u00a0<span class=\"hljs-comment\">#\u6570\u636e\u5e93\u540d\u79f0\u00a0\u00a0<\/span>\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\nMANAGE_PASS\u00a0=\u00a0<span class=\"hljs-string\">'ss233333333'<\/span>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\n<span class=\"hljs-comment\">#if\u00a0you\u00a0want\u00a0manage\u00a0in\u00a0other\u00a0server\u00a0you\u00a0should\u00a0set\u00a0this\u00a0value\u00a0to\u00a0global\u00a0ip\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/span>\nMANAGE_BIND_IP\u00a0=\u00a0<span class=\"hljs-string\">'127.0.0.1'<\/span>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\n<span class=\"hljs-comment\">#make\u00a0sure\u00a0this\u00a0port\u00a0is\u00a0idle\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<\/span>\nMANAGE_PORT\u00a0=\u00a023333\u00a0\u00a0\u00a0\u00a0\n\npython\u00a0server.py<\/code><\/pre>\n<p>\u5728mysql\u6570\u636e\u5e93\u4e2d\u65b0\u5efa\u6570\u636e\u5e93shadowsocks\uff0c\u5e76\u6dfb\u52a0\u7528\u6237nenew\uff0c\u5bfc\u5165manyuser\u4e2d\u7684sql\u6587\u4ef6\uff0c\u7136\u540e\u6267\u884cpython server.py\u3002\u5982\u679c\u6ca1\u6709\u5f02\u5e38\uff0c\u5219\u8868\u793a\u5df2\u7ecf\u5b89\u88c5\u6210\u529f\u540e\u7aef\u3002<\/p>\n<p>\u524d\u7aef\u5b89\u88c5\uff1a<\/p>\n<pre class=\"hljs nginx\"><code class=\"hljs nginx\"><span class=\"hljs-attribute\">lnmp<\/span>\u00a0vhost\u00a0add<\/code><\/pre>\n<p>\u6dfb\u52a0\u865a\u62df\u4e3b\u673a\uff0c\u7136\u540e\u8fdb\u5165\u865a\u62df\u4e3b\u673a\u76ee\u5f55<\/p>\n<pre class=\"hljs swift\"><code class=\"hljs swift\">wget\u00a0https:<span class=\"hljs-comment\">\/\/github.com\/orvice\/ss-panel\/archive\/master.zip\u00a0\u00a0<\/span>\nunzip\u00a0master.<span class=\"hljs-built_in\">zip<\/span>\u00a0\u00a0\nrm\u00a0master.<span class=\"hljs-built_in\">zip<\/span>\u00a0\u00a0\nmv\u00a0-f\u00a0ss-panel-master<span class=\"hljs-comment\">\/*\u00a0.\/\u00a0\u00a0\nmv\u00a0lib\/config-simple.php\u00a0lib\/config.php\u00a0\u00a0\nvim\u00a0lib\/config.php<\/span><\/code><\/pre>\n<p>\u7f16\u8f91\u914d\u7f6e\u4fe1\u606f\uff0c\u7136\u540e\u5c06lib\u6587\u4ef6\u5939\u4e0b\u7684sql\u6587\u4ef6\u90fd\u5bfc\u5165\u5230nenew\u6570\u636e\u5e93\u4e2d\u3002<\/p>\n<p>\u6dfb\u52a0\u5b88\u62a4\u8fdb\u7a0bsupervisor\uff1a<\/p>\n<pre class=\"hljs groovy\"><code class=\"hljs groovy\">apt-get\u00a0install\u00a0supervisor\u00a0\u00a0\necho_supervisord_conf\u00a0&gt;\u00a0<span class=\"hljs-regexp\">\/etc\/<\/span>supervisor\/supervisord.conf\u00a0\u00a0\nvim\u00a0<span class=\"hljs-regexp\">\/etc\/<\/span>supervisor\/supervisord.conf<\/code><\/pre>\n<p>\u5c06\u6587\u4ef6\u6700\u540e\u6dfb\u52a0<\/p>\n<pre class=\"hljs ini\"><code class=\"hljs ini\"><span class=\"hljs-section\">[program:shadowsocks]<\/span>\u00a0\u00a0\n<span class=\"hljs-attr\">command<\/span>=python\u00a0\/root\/shadowsocks\/shadowsocks\/server.py\u00a0-c\u00a0\/root\/shadowsocks\/shadowsocks\/config.json\u00a0\u00a0\n<span class=\"hljs-attr\">autorestart<\/span>=<span class=\"hljs-literal\">true<\/span>\u00a0\u00a0\n<span class=\"hljs-attr\">user<\/span>=root<\/code><\/pre>\n<p>\u5176\u4e2d\u7684\u76ee\u5f55\u81ea\u5df1\u6839\u636e\u5b9e\u9645\u60c5\u51b5\u8bbe\u7f6e\uff0c\u91cd\u542f\u5373\u53ef\u3002<\/p>\n<p>\u4e3a\u4e86\u4e0d\u6bcf\u6b21\u542f\u52a8\u90fd\u9700\u624b\u52a8\u8f93\u5165\u4e00\u904d\uff0c\u8bbe\u7f6e\u4e3a\u5f00\u673a\u542f\u52a8\u3002\u5728\/etc\/rc.local\u4e2d\u6dfb\u52a0\u5982\u4e0b\u547d\u4ee4\uff0c\u6ce8\u610f\u5728exit 0\u4e4b\u524d\uff1a<\/p>\n<pre class=\"hljs nginx\"><code class=\"hljs nginx\"><span class=\"hljs-attribute\">python \/root\/shadowsocks\/shadowsocks\/server.py -c \/root\/shadowsocks\/shadowsocks\/config.json<\/span><\/code><\/pre>\n<p>\u524d\u7aefgithub\uff1ahttps:\/\/github.com\/orvice\/ss-panel<\/p>\n<p>\u540e\u7aefgithub\uff1a<a href=\"https:\/\/github.com\/mengskysama\/shadowsocks\" rel=\"nofollow\">https:\/\/github.com\/mengskysama\/shadowsocks<\/a><\/p>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u8f6c\u8f7d\u81ea\uff1ahttps:\/\/my.oschina.net\/u\/1382365\/blog\/492997?p=1 \u6458\u8981&#8230;<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"aside","meta":{"footnotes":""},"categories":[24,32],"tags":[],"class_list":["post-35","post","type-post","status-publish","format-aside","hentry","category-shadowsocks","category-32","post_format-post-format-aside"],"_links":{"self":[{"href":"https:\/\/wp.625300.xyz\/index.php?rest_route=\/wp\/v2\/posts\/35","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wp.625300.xyz\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wp.625300.xyz\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wp.625300.xyz\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/wp.625300.xyz\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=35"}],"version-history":[{"count":0,"href":"https:\/\/wp.625300.xyz\/index.php?rest_route=\/wp\/v2\/posts\/35\/revisions"}],"wp:attachment":[{"href":"https:\/\/wp.625300.xyz\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=35"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wp.625300.xyz\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=35"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wp.625300.xyz\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=35"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}