Quantcast
Channel: Node.jsタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 9140

Sakura VPSサーバにCentOS Stream9を突っ込んでApache(Let's encrypt)、MariaDB、NodeJSあたりをサクッと準備する方法

$
0
0
ただのインストールメモです。 仮にtmu.acというポスト名を割り当てるという事で説明します。 OS初期化設定 SakuraのコンソールでOS再インストールを選び、以下の設定でCentOS Stream9をインストールする。 項目 選択 OSインストール形式 標準OS インストールOS CentOS Stream9 X86_64 新しい管理ユーザーのパスワード 内緒💛 スタートアップスクリプト利用 Setup and update 初回起動時にパッケージ更新する 更新する 日本語環境 ja_JP.UTF-8 に変更する ja_JP.UTF-8 に変更する ホスト名を設定する tmu.ac SSHポートを変更する 22 ログインユーザ名 内緒💛 github.com に登録済みの公開鍵を設定 内緒💛 キーボード配列 変更しない VM内部のファイアウォール 有効化する ウェブ管理インタフェース Cockpit インストールする IPv6 有効化する スワップ(swapfile) 作成しない パッケージ管理システム Snappy(snap) インストールする SELinux 有効化しない カーネルクラッシュダンプ 有効化しない タイムゾーン 変更しない パケットフィルター設定 利用しない サーバーへのSSHキー登録 登録する SSHキー 内緒💛 パスワードを利用したログイン 無効にする インストール作業 Apache+PHP+PostgreSQL+MariaDB+VIMのインストール sudo dnf install -y httpd mod_ssl httpd-tools httpd-devel httpd-manual php php-cli php-gd php-pdo php-mbstring mariadb mariadb-server vim Apaceh起動 sudo sh -c "echo \"ServerName hogehoge.com:80\" >> /etc/httpd/conf.d/my.conf" sudo systemctl enable --now httpd Firewallでhttpとhttpsを許可 sudo firewall-cmd --zone=public --add-service=http --permanent sudo firewall-cmd --zone=public --add-service=https --permanent sudo firewall-cmd --reload Snapdのインストール(Let's Encryptに必要) sudo dnf -y install epel-release sudo dnf --enablerepo=epel -y install snapd sudo systemctl enable --now snapd.service snapd.socket sudo ln -s /var/lib/snapd/snap /snap もしかしたら端末立ち上げなおす必要があるような情報があったので、そうしてみましたが、source ~/.bachrcで十分かもしれない。あるいは、そのままでも行けるかもしれない。(未調査) sudo snap install core sudo snap refresh core Let's Encryptのインストールと証明書取得 sudo snap install --classic certbot sudo ln -s /snap/bin/certbot /usr/bin/certbot udo certbot --apache # 本来なら上のコマンドで行けるはずだが、エラーがでる sudo certbot certonly --webroot -w /var/www/html -d tmu.ac 成功すれば証明書のパスが表示される。 Successfully received certificate. Certificate is saved at: /etc/letsencrypt/live/tmu.ac/fullchain.pem Key is saved at: /etc/letsencrypt/live/tmu.ac/privkey.pem This certificate expires on 2022-06-11. このパスをApacheの設定ファイルを突っ込む。 sudo sh -c "echo \" <VirtualHost *:443> SSLEngine on SSLCertificateFile /etc/letsencrypt/live/tmu.ac/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/tmu.ac/privkey.pem </VirtualHost>\" >> /etc/httpd/conf.d/my.conf" Apache再起動(この時点で https://tmu.ac/ でSSL接続できるはず) sudo systemctl restart httpd ついでに、Cockpictへ証明書のインストール。.cert形式じゃないとダメみたいなのでfullchainとprivkeyくっつけて.certを作る。 sudo sh -c "cat /etc/letsencrypt/live/tmu.ac/fullchain.pem /etc/letsencrypt/live/tmu.ac/privkey.pem > /etc/letsencrypt/live/tmu.ac/ssl.cert" sudo ln -s /etc/letsencrypt/live/tmu.ac/ssl.cert /etc/cockpit/ws-certs.d/ssl.cert Cockpit再起動(https://tmu.ac:9090/でCockpitにセキュアに接続できるはず) sudo systemctl restart cockpit.socket 証明書更新のcrontab組み込み(pemからcert作成も含む) sudo sh -c "echo \" SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin 23 03 * * 1 sudo certbot renew --deploy-hook \\\"sudo sh -c \\\\\"cat /etc/letsencrypt/live/tmu.ac/fullchain.pem /etc/letsencrypt/live/tmu.ac/privkey.pem > /etc/letsencrypt/live/tmu.ac/ssl.cert\\\\\";sudo systemctl restart httpd\\\"\" >>/etc/cron.d/0SSLUpdate" MariaDB (MySQL)の初期設定 MariaDBの起動 sudo systemctl enable -now mariadb mysql_secure_installation MariaDB データベース&ユーザ作成 mysql -u root -p CREATE DATABASE *dbname*; CREATE user *username*; GRANT ALL ON dbname.* TO username@localhost IDENTIFIED BY '*password*'; exit ログイン方法 mysql -u username -D dbname -p passwordを入れる NodeJSのインストール Volta: https://docs.volta.sh/guide/ Voltaというバージョン管理システムが良さげ。 Voltaをインストール curl https://get.volta.sh | bash ん? Installing latest version of Volta (1.0.5) Checking for existing Volta installation Fetching archive for Linux, version 1.0.5 curl: (22) The requested URL returned error: 404 Error: Could not download Volta version '1.0.5'. See https://github.com/volta-cli/volta/releases for a list of available releases うーん、できない。 たぶん、CentOS Stream9のopensslが3.0なのが悪さをしている模様。 『volta-1.0.5-linux-openssl-1.1.tar.gz』のようにopensslのバージョン別にファイルが用意されている。opebnssl-3.0.tar.gzはまだない。やむを得ず、時間が解決するのを待つ事にする。 と言う訳で気を取り直して、MVNをインストールしnode最新版をインストール。 curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash source ~/.bashrc nvm install node めでたしめでたし。

Viewing all articles
Browse latest Browse all 9140

Trending Articles