科学上网

这篇文件简单讲述有志青年如何从村通网跨越重重障碍到科学上网的经历

前提条件:需要一个国外的vps 本地设SSH Key

在某人的忽悠下购买了DigitalOceanUbuntu服务器(此处不是广告

通过 ssh 连上服务器

1
2
3
4
# 假设服务器 公网IP 127.0.0.1
ssh root@127.0.0.1

# 输入密码后就连上了服务器

搭建shadowsocks

安装环境

1
2
3
4
# Ubuntu:
apt-get install python-pip

pip install shadowsocks

注:这里遇到了几个坑

  • 在安装pip时遇到ImportError:cannot import name main的报错

解决方法

  • pip install 时遇到locale.Error: unsupported locale setting报错

解决办法

配置文件

vim /etc/shadowsocks.json

1
2
3
4
5
6
7
8
9
{
"server":"0.0.0.0"
"server_post":9898,
"local_address":"127.0.0.1",
"local_port":1080,
"password":"password",
"timeout":300,
"method":"aes-256-cfb"
}

启动服务

1
2
3
4
5
# start
ssserver -c /etc/shadowsocks.json -d start

# stop
ssserver -c /etc/shadowsocks.json -d stop

打开服务相应端口

1
2
3
firewall-cmd --zone=public --add-port=9898/tcp --permanent

systemctl restart firewalld.service

到此就可以连接使用了

设置定时任务脚本

可参考:
Shadowsocks定时任务脚本 Shadowsocks bbr脚本

简化操作

为了方便操作,可以添加一些配置

1
2
3
4
5
6
vim ~/.ssh/config

# config 中添加
Host alias # 别名,可修改
HostName 127.0.0.1 # 公网IP
User root # 登录用户

添加配置之后, 就可以直接ssh alias 输入密码就登上服务器了

每次登录都要输入密码,为了更方便,可以免密登录,将本地的公钥上传到服务器

1
scp ~/.ssh/id_rsa.pub  root@127.0.0.1:~

登上服务器, 将公钥写入authorized_keys文件中,就可以免密登录啦

1
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys