缘起
由于美区应用商店买错了礼品卡要怎么办?的缘故,还没能用上HyperApp。于是先钻研一下手工要如何做。
选取虚拟主机
首先是在虚拟主机列表中选择64位的Ubuntu 16.04。我其实是Debian的拥护者。我自己使用的虚拟主机,一般都会用Debian。但是由于我之后会用到Swift。而官方支持的是Ubuntu,所以我这次就选它了。另外,HyperApp的文档建议的是64位。
配置用户
主机选择好之后。等待安装完成,就可以进入系统了。
进入系统之后,我们首先要创建一个普通用户。今后我们就用它登入,然后禁用root用户通过密码登录。因为有很多无聊的菜鸟黑客,会尝试使用破解root密码的方式来入侵你的电脑。
创建新用户
# adduser sammy
#
是root账户的提示符,sammy是演示用的用户名。你只需要输入密码,其它按照默认就可以。
sudo
权限
为新用户添加# usermod -aG sudo sammy
为新用户添加远程登录的证书
生成生成证书
这个证书是在本地机器生成的。不是在服务器。
$ ssh-keygen
生成后,查看公开密钥。
$ cat ~/.ssh/id_rsa.pub
配置服务器端
将内容复制。在服务器,输入
# su - sammy
$ mkdir ~/.ssh
$ chmod 700 ~/.ssh
$ nano ~/.ssh/authorized_keys
粘贴之前复制的公开密钥,按ctrl+x退出,按y保存,按回车确认。之后输入
$ chmod 600 ~/.ssh/authorized_keys
$ exit
回到本机,你现在可以通过证书访问服务器了。
禁用密码登录
$ sudo nano /etc/ssh/sshd_config
找到PasswordAuthentication
,取消它的注释,将它的内容改成PasswordAuthentication no
。
另外,文件中有这两行。
PubkeyAuthentication yes
ChallengeResponseAuthentication no
保存退出后,执行
$ sudo systemctl reload sshd
这样通过密码登录的方式就被禁用了。
开启防火墙
$ sudo ufw allow OpenSSH
$ sudo ufw enable