程序员

搭建自己的vps需要做足的安全措施,以及配置shadowsocks服务器端(各种系统)

1.vps安全防护措施(不要让自己的vps沦为肉鸡)

由于一台vps就相当于一台拥有独立IP的,直接暴露于互联网之上的电脑,这在为你带来便利的同时也直接让你的vps与危险画上了等号,密码穷举、DDOS攻击、各种各样你想到的想不到的攻击方法都在等待着你,不要相信你那惊悚的创意能想出多么强大的密码,统计学告诉我们——还是相信RSA吧!

使用RSA密钥对登陆SSH

         ssh分为基于密码验证,和基于密匙验证两种方式,基于密匙的验证方式是一种对称加密方式。

          不需要密码是一种选择,推荐各位还是在此基础上依旧使用一个密码,这样即使有人得到了你的私钥备份,也不太容易免密码登录你的vps了。我的vps仅仅用来作为中国伟大的墙的代理,所以设置的免密码登入。

 推荐给一个非root用户生成ssh密匙对,以后使用ssh密匙的方式登入服务器,并禁用使用密码登入,这样就算你的私匙就算不小心泄露,也不会有太大危险。

第一步:使用命令 ssh-keygen 生成私公匙对。

xxx:~$  ssh-­keygen   ­b  2048  ­t rsa

//-b bits指定密钥长度。对于RSA密钥,最小要求768位,默认是2048位。DSA密钥必须恰好是1024位(FIPS 186-2 标准的要求) ,-t type 指定要创建的//密钥类型。可以使用:”rsa1″(SSH-1) “rsa”(SSH-2) “dsa”(SSH-2)

Generating public/private rsa key pair.

//提示正在生成密钥对

Enter file in which to save the key (/Users/r0uter/.ssh/id_rsa):

//接下来输入两次你的密码; 留空按回车则为免密码登录啦!

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

//下边一路回车选择默认就好,主要是指定密匙对保存路径
Your identification has been saved in /home/username/.ssh/id_rsa.

Your public key has been saved in /home/username/.ssh/id_rsa.pub.

The key fingerprint is://你的key指纹

e0:e0:f0:40:8d:0f:c0:e0:00:12:c8:00:1e:fc:1d:4f r0uter@logcg.com

The key’s randomart image is:

//这儿是一幅图

附上 :ssh-keygen命令详解(中文) 

第二步:使用scp命令,将自己本地生成好的公钥拷贝到服务器上去:

:~$ scp -P port_of_ssh  ~/.ssh/id_rsa.pub  username@server_ip:/home/username/.ssh/authorized_keys

//-p指定服务器上配置的ssh端口,默认22. 保存的文件名应该为 authorized_keys(也可以到配置文件中修改为其他名字)

为了安全性,最好修改文件读取权限

~:$ chmod 700 ~/.ssh

~:$ chmod 600 ~/.ssh/authorized_keys

附上:维基百科scp 命令详解

第三步:关闭ssh的密码登录

修改配置文件

vim  /etc/ssh/sshd_config

//找到下边这一行

#PasswordAuthentication yes

//修改为如下内容:

PasswordAuthentication  no

重启ssh服务,使配置文件生效

/etc/init.d/sshd  restart

注:配置文件中还有几个选项比较有用。比如,(少数人遇到)为了避免Write failed: Broken pipe错误,你也可以顺便在这个文档末尾加上下面一条命令,然后再重启 ssh 服务。

//这个配置项是修改通过ssh命令连接的终端在 3600(单位秒)没操作时,客户端连接失效

ClientAliveInterval  3600

//这个配置项修改允许的最大连接终端数目

ClientAliveCountMax 3

//port指定ssh的连接的端口,默认20,安全性考虑建议修改为1024-65535之间的其他端口号

Port 12345

这样,你的vps很大程度上就比较安全了,不过,如果你的vps用来做网站了,开启了httpd之类的服务,那可能你还需要安装反入侵防火墙,关闭所有不常用端口……这样,理论上你的vps至少跳出了容易被抓的肉鸡行列,后续的安全配置,就可以根据需求大家各自定制啦!

2.配置shadowsocks


配置服务器端环境

安装:

Debian / Ubuntu:

apt-get install python-pip pip install shadowsocks

CentOS:

yum install python-setuptools && easy_install pip pip install shadowsocks

使用:

a . 命令方式启动服务:

ssserver -p 443 -k password -m rc4-md5

如果要后台运行:

sudo ssserver -p 443 -k password -m rc4-md5 –user nobody -d start

b .配置文件方式运行:

vim /etc/shadowsocks.json

{

    “server”:”my ip”,

    “server_port”:myport,

    “local_port”:1080,

    “password”:”my password”,

    “timeout”:600,

    “method”:”aes-256-cfb”

}

ssserver -c /etc/shadowsocks.json

这样你的shadowsocks就畅快的跑起来了

如果要停止:

sudo ssserver -d stop

如果要检查日志:

sudo less /var/log/shadowsocks.log

用 -h 查看所有参数。你也可以使用配置文件进行配置。

客户端配置:

可以从github上下载源码自行编译,也可以下载已有的安装包

下载或编译shadowsocks客户端

IOS系统

ANDROID系统 

OSX 

Windows

Linux

附上参考文章:

vps配置科学上网shadowsocks服务端配置

购买了VPS之后你应该做足的安全措施

如有错误或不准确的地方,欢迎指正!