0%

Linux VPS配置

本文记录了VPS下的基础配置过程,包括科学上网、安全等方面的内容

用户组管理

在root用户下,使用如下的指令,创建新用户,并添加用户到sudoers

1
2
useradd -m username (-m stand for create home) -s /bin/bash (指定用户登入后所使用的shell,默认值为/bin/bash。最好手动指定)
adduser <username> sudo (add user to the sudoers)

以后使用username(你的用户名)登录就OK了,需要使用root权限时利用sudo就行了

更改当前用户密码:

1
$ passwd

更改某个用户的密码,此时需要登录到root用户,

1
$ passwd username

关于如何删除用户,可以参考:Deleting/Removing a User Account with His/Her Home Directory

配置公钥和私钥

Windows

  • 下载并运行PUTTYGEN.EXE
    运行
  • 选择默认的 RSA 加密即可,并点击Generate,此时需要鼠标在空白处随机移动
    Generate
  • 生成好后,分别保存公钥和私钥,这里可以选择使用密码,如果选择使用密码,则在验证key的时候需要输入密码,增强的安全性
  • 注意公钥的保存格式如下,其中 ssh-rsa 为加密类型, showfom-rsa-key-20130701 为说明,可以是任意文本,如 showfom-notebook
    1
    ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAna/D52fTZ1YNjxnwAJAUhxRdPCwar8ZfWLdwHEmT64Zqtxrz65KRxesHFRVND8Xn1GKtuQIQMu/d5fFhEajFbjoSw/n+Mz58irzUXDbE34Y/nxy1/iWc6aJz6lX6wT7nnDcVoqX8Be8j/8sjS7cMFarn3Iy+0bSQNON3681+hEFM7mpoYyqrCVBpARfiiEZb8tNkfzrKJFrciZ87yaKkncPeDCIbYKjuJY2hciK+Y+IptLdoMj5kQkSXStJFQUfFg+s3FQJ9Istu4C7BF3ZafD4mEupA7P90RRUjLj95mUW/P/ebWGsMVbnxz/Xmq3OL/TOuo85umbSN44DmSB3NEQ== showfom-rsa-key-20130701
  • 上传至服务器。编辑~/.ssh/authorized_keys文件,粘贴public key的内容。

在mac或者Linux可以直接采用ssh-copy-id将public key传输到远端VPS。

1
ssh-copy-id username@remote_host (copy the public keys to the remote server)
  • 使用ssh key登录
  1. PUTTY中在Connection-ssh-Auth中设置使用的私钥,如下图:
    putty设置

winscp的设置和putty类似,两者可以使用相同的私钥
2. Linux, Mac可以直接使用ssh指令登录

1
ssh username@remote_host

也可以在本机.ssh目录下的config中配置VPS的别名,以后就可以直接使用ssh + 别名进行登录

  • 确保能够通过ssh key登录后,关闭ssh密码登录
    使用命令vim /etc/ssh/sshd_config,找到如下行进行设置

    1
    2
    3
    4
    5
    port 12345 #修改默认端口
    PermitRootLogin no #禁止root登录
    PermitEmptyPasswords no #禁止空密码
    PasswordAuthentication no #禁止密码登录
    AllowUsers username ##允许你自己的用户登录
  • 重启SSH使配置生效

1
service ssh restart

此部分主要介绍了windows下配置ssh key的方法,如果不想配置,可以通过修改端口号到22333等五位数的端口和禁止root用户登录来增加安全性,不过为了最大程度上确保安全,还是使用ssh key的方式登录。注意保管好自己的ssh私钥

Linux/Mac

可以参考Connect to a server by using SSH on Linux or Mac OS X 进行配置。

Shadowsocks科学上网

  • Ubuntu下安装shadowsocks
    1
    2
    apt-get install python-pip
    pip install shadowsocks
  • 修改配置文件vi /etc/shadowsocks.json,配置文件范例如下:
    Shadowsocks
    图中只需要修改server以及port_password两项,上面是一个多端口的配置文件,可以为不同的端口分配不同的密码
  • 后台运行shadowsocks,使用如下指令
    1
    2
    ssserver -c /etc/shadowsocks.json -d start
    ssserver -c /etc/shadowsocks.json -d stop

    如果启动报错,可以参考这里替换function name即可,Shadows启动报错undefined symbol EVP_CIPHER_CTX_cleanup

Shadowsocks利用KCPTun加速, 可以参考如下的博客:

scp上传下载文件

如果在Mac/Linux下配置好ssh config之后,可以直接采用如下的指令来下载VPS上的文件到本地。其中vps为你的VPS的Host,这在.ssh目录下的config文件中可以进行配置。

1
scp vps:/path/foo /home/user/Desktop   # copy to local

其他的scp操作可以参考manual。