最近、アプレットサーバーの構成を作成しましたが、この記事は、将来のインストールと構成に便利なサーバー構成の記録です。
サーバーを購入
Tencent Cloudを選択する理由は非常に単純です。つまり、安価で选用成都区
あり、最小構成は1か月あたりわずか29元です。
ではテンセント雲の登録サーバーを購入することができ、公式ウェブサイトをご覧ください。
私が選んだサーバーシステムはubuntuです。
サーバー構成
サービスの開始後、新しいユーザーを使用します(この手順は必要ありません)。
新しいユーザー
最初に、rootユーザーがログインに使用されていることを確認します。そうでない場合は、次のコマンドを使用して切り替えます
sudo su
使用するadduser
ユーザーを作成するコマンドを
adduser username # username替换为你自己的用户名
次のステップでは、パスワードと個人情報を入力できます。自分で設定するだけです。
使用usermod
に新しいユーザーを追加するには、コマンドをsudo
グループ。
usermod -aG sudo username
ログインするには、sshパスワードログイン使用キーを閉じてください
opensshをインストールする
新しいシステムなので、最初にapt-get updateを実行します
sudo apt-get update
sudo apt-get install openssh-server
sshサービスを開始する
sudo suコマンドを使用して一時的にroot権限に切り替えることができます(すべてのアカウントをroot権限に切り替えることができるわけではありません。/etc / sudoersファイルのルールを満たすユーザーのみがroot IDに切り替えることができます)。
sudo su
/etc/init.d/ssh start
キーでログイン
- サーバーはキーペアを生成します:
cd /home/gs # 打开新建的用户目录
mkdir .ssh
cd .ssh
ssh-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 su
vim /etc/ssh/sshd_config
PasswordAuthentication yesをPasswordAuthentication noに変更します
システムを再起動します
sudo su
reboot
開発環境を構築する
zshをインストールする
ターミナルで次のコマンドを入力してインストールします。
sudo apt-get install zsh
次のコマンドを入力して、zshをデフォルトのシェルに置き換えます。
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 # 安装 pip
pip install --upgrade pip
sudo apt-get install python3-pip # 安装 pip3
pip3 install --upgrade pip
virtualenvをインストールする
開発環境としてpython3を使用しているので、こちらを使用 pip3
sudo pip3 install virtualenv
sudo pip3 install virtualenvwrapper
以下を.zshrcに追加します
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
export WORKON_HOME=$HOME/.virtualenvs
source /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構成はpy-vimを使用します
ctagsとcmakeをインストールする必要があります
sudo apt-get install ctags
sudo apt-get install cmake
次に、py-vimをサーバーに複製します。
git clone https://github.com/gusibi/py-vim
cd py-vim
sh setup.sh
Caddyでhttpsを構成する
Caddyは、goによって記述された新しいWebサーバーであり、デフォルトでhttpsプロトコルを使用します。キャディは設定が簡単で使いやすいです。
キャディバイナリをインストールする
Caddyプロジェクトは、Caddyサーバーのバイナリファイルを取得してインストールできるインストールスクリプトを提供します。次のコマンドを実行して直接インストールできます。
curl -s https://getcaddy.com | bash
インストールプロセス中、スクリプトはsudoを使用して管理者権限を取得し、システム全体のディレクトリにCaddyファイルを配置するため、パスワードの入力を求められる場合があります。
キャディに必要なディレクトリを構成する
Caddyの自動TLSサポートとユニットファイルには、特定のディレクトリとファイル権限が必要です。このステップで作成します。
最初に、メイン構成ファイルCaddyfileを保持するディレクトリを作成します。
# 创建一个目录,该目录将容纳主要的配置文件Caddyfile
sudo mkdir /etc/caddy
# 将此目录的所有者更改为root用户及其组到www-data ,以便Caddy可以读取它
sudo chown -R root:www-data /etc/caddy
# 创建一个空的Caddyfile
sudo touch /etc/caddy/Caddyfile
# 在/etc/ssl创建另一个目录用来存储自动获得的SSL私钥和证书
sudo mkdir /etc/ssl/caddy
# 将此目录的所有者更改为root用户及其组到www-data
sudo 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-data
sudo chown -R www-data:root /var/log/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
システムサービスの再読み込み
sudo systemctl daemon-reload
キャディを起動するように設定する
sudo systemctl enable caddy.service
キャディサービスが正式に読み込まれているかどうかを確認する
sudo systemctl status caddy.service
HTTPおよびHTTPS接続を許可する
CaddyはHTTPおよびHTTPSプロトコルを使用してWebサイトを提供するため、ネットワークからネットワークを取得できるように、対応するポートへのアクセスを許可する必要があります
sudo ufw allow http
sudo ufw allow https
次に、キャディ設定/ 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}
}
}
ファイルを保存して、キャディを起動します
sudo systemctl start caddy # 启动 caddy
sudo systemctl restart caddy # 重启 caddy
sudo systemctl stop caddy # 关闭 caddy
今すぐサービスを開始し、アクセスがhttps://your.domain
データを見ることができるはずです。
ログは、内のファイル/var/log/caddy/
のディレクトリ。
まとめ
小さなプログラムの開発にはhttpsが必要であり、ここではキャディーをWebサーバーとして使用します。サーバーを構成した後は、サーバーをミラーとして直接保存でき、将来、サービスをミラーから直接開始できるため、環境を構成する必要はありません。
参照リンク
- UbuntuでSudoユーザーを作成する方法
- zshのインストールと構成
- virtualenvwrapper
- py-vim
- UbuntuにMongoDB Community Editionをインストールする
- Nginxの代わりにCaddyを使用し、サイト全体をhttpsにアップグレードします。構成はより簡単です
- how-to-host-a-website-with-caddy-on-ubuntu-16-04
最後に、ガールフレンドのサポートに感謝します。
フォローへようこそ(April_Louisa) | ファンタを飲むように招待して |
---|---|