ubuntu初始化并搭建Shadowsocks攻略

之前在用的VPS上周末到期了,于是继续买了个digital ocean(以下简称DO)的乞丐版。简单介绍下DO,DO是VPS供应商界的后起之秀,在这之前,linode一直处理霸主地位,死贵死贵的。但DO可以按小时计费,相当于月费除以30天,一点没抬价。这对于只想试验某个功能的人来说,简直是福利,试验完了,把VPS删了就不再计费了。不过我这拿来当梯子其实是有点浪费的囧,后续考虑换回搬瓦工~
对了,搬瓦工可以一键安装shadowsocks和openVPN,不过咱还是热衷于折腾不是~

好了,进入正题。
由于这是我第四个VPS了,每次初始化一个ubuntu并搭建梯子服务,总要花点时间找命令,想想还是整理一下比较好,方便下次使用。
刚刚建立VPS后,root用户ssh登录,然后开始命令行之旅~
注:本攻略需具备一丢丢vi操作基础- -

初始化ubuntu

1. apt-get是ubuntu的包管理工具,第一步当然是更新镜像:

1
apt-get update

2. 设置locale, 此时执行:

1
locale

会有两个警告:

1
2
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory

先安装一个工具包:

1
apt-get -y install language-pack-zh-hans

然后再检查一下:

1
locale

就没有警告了

3. 通常linux不使用root用户进行日常操作,以免权限太高,导致一些不可逆的误操作,所以新建一个相对低权限的用户, 以stone为例:

1
adduser stone

然后按照提示,一步步填写信息
注:以下提到的stone用户,你要需要替换为自己的用户名~

4. 给刚新建的用户设置权限,否则无法使用sudo, 用vi编辑权限sudoer文件:

1
sudo vi /etc/sudoers

找到 root ALL=(ALL:ALL) ALL
在下面添加一行:stone ALL=(ALL) ALL
保存,这样stone这个用户就可以sudo了

5. 切换到新用户:

1
su stone

6. 安装git和zsh:

1
sudo apt-get -y install git zsh

7. zsh是最好用的shell,通过安装oh-my-zsh来配置zsh:

1
sudo sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

这里可能curl命令会不存在,需要安装一下:

1
sudo apt-get install curl

然后,再继续安装oh-my-zsh.
执行完毕后,如果你发现一个大大的logo:

1
2
3
4
5
6
__ __
____ / /_ ____ ___ __ __ ____ _____/ /_
/ __ \/ __ \ / __ `__ \/ / / / /_ / / ___/ __ \
/ /_/ / / / / / / / / / / /_/ / / /_(__ ) / / /
\____/_/ /_/ /_/ /_/ /_/\__, / /___/____/_/ /_/
/____/ ....is now installed!

同时,命令行提示符变成一个右箭头和一条波浪线了,就说明安装成功了!

8. 设置zsh为stone用户的默认shell:

这里最好先看一下zsh在哪里:

1
which zsh

如果得到的是/usr/bin/zsh, 那么接下来就执行 chsh -s /usr/bin/zsh
如果得到的是/bin/zsh, 那么接下来就执行 chsh -s /bin/zsh
这里我也奇怪,之前一直用池建强老师给出的chsh -s /bin/zsh都没问题的,后来在搬瓦工的ubuntu14.04上居然变了

9. 设置stone用户免密登陆,创建.ssh/authorized_keys 文件并编辑:

1
mkdir ~/.ssh && vi ~/.ssh/authorized_keys

把你本机的公钥粘贴进去,保存退出。
本地 重新使用ssh登录:

1
ssh stone@<你的VP IP>

如果不需要密码直接登录进去,就说明成功了!
ps: 本机 生成秘钥命令: ssh-keygen -t rsa -C "<your_email@youremail.com>" 一路回车,然后本机通过cat .ssh/id_rsa.pub 查看公钥。

10. 创建远程主机别名,以快速登录, 在 本机 创建文件并编辑:

1
vi .ssh/config

写入:

1
2
3
Host do
Hostname xx.xx.xx.xx
User stone

注: Host字段的值,就是个别名,可以自定义奥
保存,本地 重新使用ssh登录:

1
ssh do

如果不需要密码,自动登录进去,就说明免密快捷登录成功了~

以上,按照我的初始化服务器惯例,创建了新用户,安装了git,zsh, 创建了免密快捷登录,至此初始化ubuntu完毕

安装shadowsocks

1. 安装shadowsocks服务端

1
sudo apt-get install -y python-pip && sudo pip install shadowsocks

2. 创建shadow socks配置文件:

1
sudo vi /etc/shadowsocks.json

写入:

1
2
3
4
5
6
7
8
9
10
{
"server":"<你的VPS IP>",
"server_port": <自定义shadowsocks服务端口>,
"local_address": "127.0.0.1",
"local_port":1080,
"password":"<自定义密码>",
"timeout":300,
"method":"aes-256-cfb",
"fast_open": false
}

3. 启动shadowsocks:

1
sudo ssserver -c /etc/shadowsocks.json -d start

打开你的shadowsocks客户端,配置上相应的ip,端口和密码,就可以出墙啦~~~