拥有新的VPS要做的几件事
以下操作仅在 ubuntu 系统上试验
写在前面
首先声明,我一般购买 VPS 都是用来构建自部署的应用的,所以这套配置并不一定适用于所有人,大家可以按需查看。
配置 ssh 登录选项
我喜欢同时用密钥登录和密码登录,一般个人电脑都是密钥登录,如果是公用的电脑就用密码登录。首先先通过密码连接 VPS
ssh <user>@<host> -p 22 |
按照提示输入密码,进入控制台,然后执行
passwd |
修改成强密码,如果在购买 VPS 的时候就可以自定义密码,可以设置成强密码然后忽略这一步。
本地电脑如果没有 ssh 密钥,可以生成一对并将公钥上传到 VPS 上
ssh-keygen -t ed25519 |
然后按需输入密码,最后修改 sshd 的配置文件,我的建议是在/etc/ssh/sshd_config.d
文件夹中创建一个self.conf
,然后写入以下内容
Port 22 |
如果你不希望 root 用户远程登录,请将PermitRootLogin
设置为no
。
之后执行下面的命令即可
systemctl restart ssh |
关闭外部安全组
有许多厂商有自己的安全组保护 VPS,但是对于个人来说,遭受攻击的可能性很小,可以只使用原生的ufw
功能。此外,我喜欢通过系统 Terminal 或者其他终端模拟器远程连接 VPS,执行各种操作也比较方便。如果使用外部安全组,制定规则的时候还需要去厂商的网页上操作,很麻烦。
在关闭了外部安全组以后,就需要启动ufw
了,平常我用不到 ipv6 功能,所以直接关闭 ipv6 连接,编辑/etc/default/ufw
文件,设置ipv6=no
。
最后执行下面的命令即可
ufw allow 22 comment ssh |
修改 hostname
对于强迫症来说,是不能接受终端命令提示符的旁边有一串巨长的乱码的,我喜欢改成自己能辨识的,简洁的名字。命令也很简单
hostnamectl set-hostname <new-hostname> |
再编辑etc/hosts
文件,修改为以下样式即可
127.0.1.1 <new-hostname> |
如果你有多台在同一局域网下载机器的话,还是谨慎修改 hostname 吧。
调整时区
调整到正确的时区能让各种日志显示的时间变得已读,中国用户可以用一条命令解决。
timedatectl set-timezone Asia/Shanghai |
下载 docker
因为我的 VPS 主要是用来搭建应用的,所以 docker 必不可少,这部分建议参考官方文档,我只是把官方文档的命令粘了过来。
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done |
给 VPS 取名便于连接
本人最喜欢用的终端模拟器是 MacOS 系统下的 Warp,所以一般 ssh 连接的时候也用 Warp,没有用专门的 ssh 软件(Termius 当作备用)。但是每次都要输入ssh <user>@<host>
不是很方便,host 用 IP 的话记不住,还得去 1Password 中复制,用域名的话也显得冗长,所以可以把常用的 ssh 连接起一个别名,输入别名就简单多了,比如我只有一台常用的香港服务器,就可以编辑~/.ssh/config
文件,并添加以下内容
Host hk |
以后每次在命令行输入下面的内容即可
ssh hk |