HP EliteDesk 800G2 DM M2.SSDとHDD 8GBメモリ構成の物を入手したので、新たにサーバー構成することにした。HDDはexfatとし、sambaで共有できるようにした。Linuxフォーマットだと、データを抜きだすのが面倒だ。
Serverは基本的にはコマンドラインから操作する、USBメモリのマウントなど簡単に行えるようにするために、ubuntu-mate-desktopを使えるようにした。またダイナミックDNSを使いサーバーを公開可能にした。そのためにSoftEther VPN Serverを導入することにした。基本的にコマンドラインで手打ちする気はないので、WindowsのターミナルソフトとWinSCPを使ってシステムを構成していった。以下に手順を示す。
①Ubuntu20.04LTSサーバーをM.2SSDにインストールする。ifconfig、telnetを使うために、apt install telnetd、apt install net-toolsをインストールした。sshはsshd_configのPermitRootLogin without-passwordを PermitRootLogin yesに変更し保存してWinSCPでrootでログインできるようにした。移行は下記メモを元にWindowsからコピー&ペーストで作業を進めていった。
1.ビルド環境を整える。
apt-get install build-essential
2.phpのインストールと設定
①phpのインストール
apt-get install php(php7.4がインストールされる。)
②モジュールの設定
# MySQL連携のために必要
apt-get install php-mysql
apt-get install php-curl
apt-get install mcrypt
apt-get install php-intl
phpmyadminで扱えるデータサイズを拡大するために/etc/php5/apache2/php.iniの以下の値を変更する。
memory_limit = 600M
post_max_size = 500M
upload_max_filesize = 500M
max_input_time = 60
3.MySQLのインストール
apt install -y mariadb-server
mysql -u root
SQLのターミナルに入れるがサーバーが起動していないので別のターミナルでSQLサーバーを起動し以下のコマンドを実行
特権ユーザ(ユーザ作成権限はDBの管理権限等を持つユーザ)を追加するには下記コマンドを実行します。
(rootユーザのみでも対応可能であるため、追加しなくても良い)
GRANT ALL PRIVILEGES ON . TO user@localhost IDENTIFIED BY 'passwd' WITH GRANT OPTION;
③管理ツールのインストールPHPMyAdmin
apt-get install phpmyadmin
webサーバの選択画面が表示されるので、apache2を選択します。
dbconfig-commonの設定をするか?と聞かれるが「はい」を選択します。
MySQL管理ツールの設定
以下のコマンドを実行して、PHPMyAdminとApache2を連携をします。
ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf-available/phpmyadmin
/etc/apache2/sites-available/000-default.confにInclude /etc/apache2/conf-available/phpmyadminを追加する。
apacheの再起動
service apache2 restart
3.apache2追加モジュールセットアップ
※apacheのフォルダーのアクセス権をwww-dataに変更する。
※実行ユーザー・グループは/etc/apache2/envvarsで指定されているのでフォルダーの所有権をこのグループに設定すると
0700のアクセス権で問題無く動作可能になる
chown www-data /var/www (所有者を変更)
chown www-data:www-data /var/www (グループを変更
CGIを有効にする
sudo a2enmod cgi
/etc/apache2/mods-enabled/mime.conf でAddHandler cgi-script .cgiを有効にする。
mode_rewriteを有効化(.htaccess)
a2enmod rewrite
④SSLの有効化 a2enmod ssl 無効にするには a2dismod ssl
4.デスクトップ環境のインストール apt install ubuntu-mate-desktop
5.SSLを使えるようにするためにLet's Encrypt クライアントを導入する。
sudo apt-get install letsencrypt python-letsencrypt-apache
softether vpn serverをインストールし、インターネットに公開できるようにした後、証明書を取得しSSLを有効化する。