新建主机

新建 Ubuntu 主机(VPS)后的一些事项。

新建用户


useradd [-d home] [-s shell] [-c comment] [-m [-k template]] [-f inactive] [-e expire ] [-p passwd] [-r] name



useradd USER -m -s /bin/zsh # -m 创建主目录 -s 更改默认shell



usermod -G sudo 用户名 # 添加到 sudo 用户组, 使用户能够使用sudo



select-editor # 选择 vim 为默认编辑器

# 或者在 .zshrc 中指定export EDITOR=vi



su 用户 # 切换到用户

zsh


sudo apt-get install zsh



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





# 把~/.zshrc替换为如下

export ZSH=/home/louisun/.oh-my-zsh

ZSH_THEME="robbyrussell"



plugins=(

git

)



source $ZSH/oh-my-zsh.sh

alias vz="vim ~/.zshrc"

alias sz="source ~/.zshrc"

Python 环境

pyenv


sudo apt-get update

sudo apt-get install make build-essential libssl-dev zlib1g-dev

sudo apt-get install libbz2-dev libreadline-dev libsqlite3-dev wget curl

sudo apt-get install llvm libncurses5-dev libncursesw5-dev







curl -L https://raw.githubusercontent.com/yyuu/pyenv-installer/master/bin/pyenv-installer | bash





#添加到 zsh

export PYENV_ROOT="$HOME/.pyenv"

export PATH="$PYENV_ROOT/bin:$PATH"

eval "$(pyenv init -)"

eval "$(pyenv virtualenv-init -)"





# 安装



pyenv install --list

pyenv install 3.6.5

pyenv versions

pyenv global 3.6.5

pyenv global system

pyenv rehash



# 创建虚拟环境

# 位于 ~/.pyenv/versions/

pyenv virtualenv 3.6.4 env1

# 激活虚拟环境

pyenv activate env1

pyenv deactivate

ssh 配置


# 本地生成秘钥

ssh-keygen -t rsa



# 拷贝公钥到vps

scp ~/.ssh/id_rsa.pub 用户@IP:/主目录/.ssh/authorized_keys

ssh config


vim ~/.ssh/config



# 编辑文件

Host vps

HostName www.xxx.com

Port 22

User louisun



# 然后可以使用别名登录

ssh vps

启用 TCP BBR 算法

Linux kernel 4.9 已支持 tcp_bbr


su root # 切換到root



uname -r # 查看内核版本



echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf

echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf



sysctl -p # 保存生效



# 执行

sysctl net.ipv4.tcp_available_congestion_control

sysctl net.ipv4.tcp_congestion_control

# 返回结果都有 bbr 说明内核已经开启 bbr 算法

# net.ipv4.tcp_available_congestion_control = bbr cubic reno

# net.ipv4.tcp_congestion_control = bbr



lsmod | grep bbr

# 返回结果有 tcp_bbr 模块说明 bbr 已经启动

# tcp_bbr 20480 0

SSR

SSR一键安装


wget --no-check-certificate https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocksR.sh



chmod +x shadowsocksR.sh



./shadowsocksR.sh 2>&1 | tee shadowsocksR.log

安装完成后,脚本提示如下:


Congratulations, ShadowsocksR server install completed!

Your Server IP : x.x.x.x

Your Server Port : xxxx

Your Password : x

Your Protocol : origin

Your obfs : plain

Your Encryption Method: aes-256-cfb



Your Encryption Method:your_encryption_method



Welcome to visit:https://shadowsocks.be/9.html

Enjoy it!



# 脚本安装完成后,已将 ShadowsocksR 自动加入开机自启动



# 查看后台运行状态

/etc/init.d/shadowsocks status



启动:/etc/init.d/shadowsocks start

停止:/etc/init.d/shadowsocks stop

重启:/etc/init.d/shadowsocks restart

状态:/etc/init.d/shadowsocks status



配置文件路径:/etc/shadowsocks.json

日志文件路径:/var/log/shadowsocks.log

代码安装目录:/usr/local/shadowsocks

多用户配置示例:




{

"server":"0.0.0.0",

"server_ipv6": "[::]",

"local_address":"127.0.0.1",

"local_port":1080,

"port_password":{

"8989":"password1",

"8990":"password2",

"8991":"password3"

},

"timeout":300,

"method":"aes-256-cfb",

"protocol": "origin",

"protocol_param": "",

"obfs": "plain",

"obfs_param": "",

"redirect": "",

"dns_ipv6": false,

"fast_open": false,

"workers": 1

}

卸载方法:


sudo ./shadowsocksR.sh uninstall

客户端安装


wget http://www.djangoz.com/ssr

sudo mv ssr /usr/local/bin

sudo chmod 766 /usr/local/bin/ssr

ssr install

ssr config

Kcptun 加速 ss


wget --no-check-certificate https://github.com/kuoruan/shell-scripts/raw/master/kcptun/kcptun.sh

chmod +x ./kcptun.sh

./kcptun.sh

Kcptun 安装目录: /usr/share/kcptun

Kcptun 日志文件目录: /var/log/kcptun/

请将以上的提示信息复制保存下来,后面配置客户端会用到这些提示信息。

注意:服务端的 sndwnd 对应的是客户端的 recwnd,所以请不要问我为什么输出的客户端参数和你配置的服务端参数是反的。

安装之后,Kcptun 服务交由 Supervisor 管理。

Supervisor 相关命令:


service supervisord {start|stop|restart|status}

Kcptun 相关命令:


supervisorctl {start|stop|restart|status} kcptun

Supervisor 启动的时候会同时启动 Kcptun,运行 kcptun 相关命令时先确保 Supervisor 已启动。

更新时间


sudo tzselect



sudo cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime



sudo apt-get install ntpdate



sudo ntpdate time.windows.com



sudo hwclock --systohc //修改硬件CMOS的时间, 如果没有这一步的话,后面时间还是不准