最近做小程序服务器的配置,这一篇是服务器配置的记录,方便以后安装配置。
购买服务器
之所以选腾讯云的原因很简单,那就是便宜,选用成都区
,最低配置每月只需29¥。
服务器配置
启动服务后使用新用户(此步骤不是必须)。
新建用户
首先确认使用的是 root 用户登录如果不是使用以下命令切换
sudo su复制代码
使用 adduser
命令创建用户
adduser username # username替换为你自己的用户名复制代码
接下来的步骤会让你输入密码和个人信息,自己设置就好。
使用usermod
命令将新建的用户添加到 sudo
组。
usermod -aG sudo username复制代码
关闭ssh密码登录使用密钥登录
安装openssh
因为是新系统,先执行一下 apt-get update
sudo apt-get updatesudo apt-get install openssh-server复制代码
启动ssh服务
可以通过sudo su命令来临时切换到root权限(不是所有的账号都可以切换到root权限,只有在/etc/sudoers文件中符合规则的用户能切换root身份)
sudo su/etc/init.d/ssh start复制代码
使用密钥登录
- 服务器端生成密钥对:
cd /home/gs # 打开新建的用户目录mkdir .sshcd .sshssh-keygen -b 2048 -t rsa复制代码
ssh-keygen的基本用法:
-b后面是指定加密后的字符串长度-t后面是指定加密算法,常用的加密算法有rsa,dsa等
默认生成的文件如下:
id_rsa.pub # 公钥文件id_rsa # 私钥文件复制代码
- 新建 authorized_keys 文件
将本地机器的 id_rsa.pub 文件内容复制到 authorized_keys 文件
- 测试使用公钥是否可以登录
ssh name@host # name 是机器的用户名 host 是机器的地址复制代码
关闭ssh密码登录
确认可以通过私钥进行登录后,关闭ssh密码登录。
sudo suvim /etc/ssh/sshd_config复制代码
将 PasswordAuthentication yes修改成PasswordAuthentication no
重启系统
sudo sureboot复制代码
搭建开发环境
安装 zsh
在终端中输入下面命令进行安装:
sudo apt-get install zsh复制代码
输入下面命令进行替换zsh替换为你的默认shell:
chsh -s /bin/zsh复制代码
重启终端使用 zsh
安装oh-my-zsh
- 通过curl安装
curl -L https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh | sh复制代码
- 通过wget安装
wget https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O - | sh复制代码
安装 pip
sudo apt-get install python-pip # 安装 pippip install --upgrade pipsudo apt-get install python3-pip # 安装 pip3pip3 install --upgrade pip复制代码
安装 virtualenv
因为我使用 python3 作为开发环境,所以这里使用 pip3
sudo pip3 install virtualenvsudo pip3 install virtualenvwrapper复制代码
在 .zshrc 添加以下内容
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3export WORKON_HOME=$HOME/.virtualenvssource /usr/local/bin/virtualenvwrapper.sh复制代码
然后执行命令:
source .zshrc复制代码
现在可以输入 workon
测试 virtualenvwrapper 是否已经安装成功。
创建虚拟环境
mkvirtualenv py3 -p python3 # -p 参数指定 python 版本复制代码
测试虚拟环境
workon py3复制代码
安装 ipython
首先进入 py3 虚拟环境
workon py3复制代码
使用 pip 安装 ipython
pip install ipython # 安装 ipython复制代码
配置 vim
python vim 配置使用的是
需要先安装 ctags和 cmake
sudo apt-get install ctagssudo apt-get install cmake复制代码
然后将 py-vim clone 到服务器
git clone https://github.com/gusibi/py-vimcd py-vimsh setup.sh复制代码
使用 Caddy 配置 https
Caddy是一种新的Web服务器,由 go 编写,默认使用 https 协议。caddy 配置简单,容易上手。
安装 caddy 二进制文件
Caddy项目提供了一个安装脚本,可以检索和安装Caddy服务器的二进制文件。 可以执行以下命令直接安装:
curl -s https://getcaddy.com | bash复制代码
在安装过程中,脚本将使用sudo获取管理权限,以便将Caddy文件放在系统范围的目录中,因此可能会提示您输入密码。
配置 caddy 必要的目录
Caddy的自动TLS支持和unit文件需要特定的目录和文件权限。 我们将在这一步中创建它们。
首先,创建一个目录,该目录将容纳主要的配置文件Caddyfile 。
# 创建一个目录,该目录将容纳主要的配置文件Caddyfilesudo mkdir /etc/caddy# 将此目录的所有者更改为root用户及其组到www-data ,以便Caddy可以读取它sudo chown -R root:www-data /etc/caddy# 创建一个空的Caddyfilesudo touch /etc/caddy/Caddyfile# 在/etc/ssl创建另一个目录用来存储自动获得的SSL私钥和证书sudo mkdir /etc/ssl/caddy# 将此目录的所有者更改为root用户及其组到www-datasudo chown -R www-data:root /etc/ssl/caddy# 确保没有人可以通过删除其他人的所有访问权限来读取这些文件。sudo chmod 0770 /etc/ssl/caddy# 创建的最终目录是网站的发布目录sudo mkdir /var/www# 该目录应由www-data完全拥有。sudo chown www-data:www-data /var/www# 创建日志目录sudo mkdir /var/log/caddy# 将此目录的所有者更改为root用户及其组到www-datasudo chown -R www-data:root /var/log/caddy复制代码
将 caddy 配置为系统服务
从官方的Caddy存储库下载文件。 curl命令的附加-o参数会将该文件保存在/etc/systemd/system/目录中,并使其对systemd可见。
sudo curl -s https://raw.githubusercontent.com/mholt/caddy/master/dist/init/linux-systemd/caddy.service -o /etc/systemd/system/caddy.service复制代码
reload 系统服务
sudo systemctl daemon-reload复制代码
将caddy 设置为开机启动
sudo systemctl enable caddy.service复制代码
检查 caddy 服务是否已正式加载
sudo systemctl status caddy.service复制代码
允许HTTP和HTTPS连接
Caddy使用HTTP和HTTPS协议提供网站,因此我们需要允许访问相应的端口,以便使网路可以从网路获取
sudo ufw allow httpsudo ufw allow https复制代码
现在修改caddy 配置 /etc/caddy/Caddyfile
https://your.domain { # 启用 https gzip log /var/log/caddy/access.log # 指定日志目录 proxy / http://127.0.0.1:8888 { header_upstream Host {host} header_upstream X-Real-IP {remote} header_upstream X-Forwarded-For {remote} header_upstream X-Forwarded-Proto {scheme} }}复制代码
保存文件,启动 caddy
sudo systemctl start caddy # 启动 caddysudo systemctl restart caddy # 重启 caddysudo systemctl stop caddy # 关闭 caddy复制代码
现在启动服务,访问 https://your.domain
应该就能看到数据。
/var/log/caddy/
目录下。 总结
小程序开发需要 https,这里我们使用了 caddy 作为 web 服务器。服务器配置好后可以直接存储为镜像,以后可以直接从镜像开启服务,就不再需要配置环境。
参考链接
最后,感谢女朋友支持。
欢迎关注(April_Louisa) | 请我喝芬达 |
---|---|