#author("2022-09-15T15:52:03+09:00","default:regex","regex")
#author("2022-09-15T18:25:18+09:00","default:regex","regex")
*wpserver(Web+TimeServer)をUbuntu22.04LTSへ [#l41eed76]
*古い方(UBUNTU20.04LTS)のWord Pressのバックアップを作成 [#bdfbed66]

 各Word Pressのバックアップを取ります。(DBのため)。~
 WebrootはUSBHDDで引き継ぎます。~
**古い方(UBUNTU20.04LTS)のLet's encryptの止め方(解除の仕方)・・・ [#b424008b]

 # certbot revoke --cert-path /etc/letsencrypt/live/mifmif.mydns.jp/cert.pem
 Saving debug log to /var/log/letsencrypt/letsencrypt.log
 Starting new HTTPS connection (1): acme-v01.api.letsencrypt.org
 
 ---------- service chronyd restart
 ---------------------------------------------------------------------
 Would you like to delete the cert(s) you just revoked?
 -------------------------------------------------------------------------------
 (Y)es (recommended)/(N)o: y
~
*Install [#yc3ca88f]
DBがあるので、~
 /var=50GB
 /=70GB
 (EFI:128MB)
でUBUNTU22.04LTSをインストールしました。~
 SetUpPackとして、20.04LTSの設定ファイルをとっておき、ext4のUSBメモリに入れて、最初にホームにコピーし、ここから、適宜コピーして設定をしていきました。~

*IP固定 [#f55ea26f]
 IP固定は、ルータの方から、MACアドレスを入れて行います。(もうできていました)~
**ノートPCで蓋を閉じてもサスペンドを防止 [#s9efb08f]
〇/etc/systemd/logind.conf ファイルを編集し下記の行を変更。~
~
 $ sudo nano /etc/systemd/logind.conf
~
 - #HandleLidSwitch=suspend
 + HandleLidSwitch=ignore
~
〇設定を反映
~
 $ sudo systemctl restart systemd-logind
~
*リモートデスクトップ関係 [#kcab60bb]
一番面倒なところです。~
RDP接続になりました(VNCはデバック中のようでRealVNCからはつながりませんでした)~
mRemoteNGが使いやすい(ただし、IPアドレス・フルカラーで接続ないとうまくいかない)~
Password and Keys application -> Right-click on Login keyring -> change the password to blank.~
をしないと、RDPのパスワードが自動的に変更されてしまう。~
**暗転すると接続が切れるのでxscreensaverをつかう。 [#ofa146b9]
 sudo apt install xscreensaver xscreensaver-data-extra xscreensaver-gl-extra
 スタートアップへの追加~
 xscreensaver -nosplash
設定上は、ブランクスクリーンを<しない>にする。~
~
*Takao Fontへ [#s0d6a37d]
なんか地味に、Terminalが大きすぎです。
 $ sudo apt install fonts-takao*
~
*言語設定 [#k79effa5]
 設定から入り、自動的に出るインストールを済ませる。以降Mozcツールが使えます。~
~
*fstab [#f475b969]
 マウントポイント、fstabを過去のfstabから設定~
~
*Samba関係 [#o8cc0445]
SetUpPackから、USB-HDDのfstab入れ替え、マウントポイント整備、HDD組付け再起動。~
**SAMBAインストール [#r6af5eec]
~
 $ sudo apt install samba
~
SetUpPackからsmb.conf入れ替え~
デーモンの再起動で、設定反映~
 $ sudo service smbd restart
 $ sudo service nmbd restart
~
※エラーの場合、samba.confのinterfaceのデバイスを合わせること~

*apache2,PHP8.1設定 [#vc4a2eb4]
**まずPukiwiki1.5.4向け~ [#nf33afb9]
~
 $ sudo apt-add-repository ppa:ondrej/apache2
 $ sudo apt-get install apache2
 $ sudo add-apt-repository ppa:ondrej/php
 $ sudo apt install libapache2-mod-php8.1 php8.1-cli php8.1-common php8.1-curl php8.1-gd php8.1-mbstring php8.1-mysql php8.1-opcache php8.1-readline php8.1-xml php8.1-xmlrpc php8.1-zip
 $ sudo apt upgrade
~
**Pukiwiki1.5.4向けphp.iniの編集 [#ea6c45b9]
~
    /etc/php/8.1/apache2/php.ini
    memory_limit = 128M
    upload_max_filesize = 128M
    post_max_size = 128M
~
**Word Press向け [#q55142cd]

 $ sudo apt-get install mariadb-server mariadb-client
~
-インストール後、次のコマンドを叩いてMariadb(mysql)の初期設定
~
     $ sudo mysql_secure_installation
        Enter current password for root (enter for none): そのままエンターを押す
        Set root password? [Y/n]: Y
        New password: パスワードの入力  "sql-root-password"
        Re-enter new password: パスワードの入力 "sql-root-password"
        Remove anonymous users? [Y/n]: Y
        Disallow root login remotely? [Y/n]: Y
        Remove test database and access to it? [Y/n]: Y
        Reload privilege tables now? [Y/n]: Y

**Word Press向けphpのインストール [#c2b0021a]
~
 $ sudo apt install php8.1 libapache2-mod-php8.1 php8.1-common php8.1-mbstring php8.1-xmlrpc php8.1-gd php8.1-xml php8.1-mysql php8.1-cli php8.1-zip php8.1-curl
~

**Word Press向けphp.iniの編集 [#a41a71aa]
~
     $ sudo gedit /etc/php/8.1/apache2/php.ini
     file_uploads = On
     allow_url_fopen = On
     memory_limit = 256M
     upload_max_filesize = 256M
     post_max_size = 256M
     max_execution_time = 360
     date.timezone = Asia/Tokyo
     mysqli.default_socket = /var/run/mysqld/mysqld.sock
~
**MariaDBにWordPress用のデータベースを作成する。 [#se626daa]
~
 $ sudo mysql -u root -p
 MariaDB [(none)]> CREATE DATABASE alpha;
 MariaDB [(none)]> CREATE USER 'alpha'@'localhost' IDENTIFIED BY 'password-for-alpha';
 MariaDB [(none)]> GRANT ALL ON alpha.* TO 'alpha'@'localhost' IDENTIFIED BY 'password-for-alpha' WITH GRANT OPTION;
 MariaDB [(none)]> FLUSH PRIVILEGES;
 MariaDB [(none)]> EXIT;
~
 $ sudo mysql -u root -p
 MariaDB [(none)]> CREATE DATABASE masterkudo;
 MariaDB [(none)]> CREATE USER 'masterkudo'@'localhost' IDENTIFIED BY 'password-for-masterkudo';
 MariaDB [(none)]> GRANT ALL ON masterkudo.* TO 'masterkudo'@'localhost' IDENTIFIED BY 'password-for-masterkudo' WITH GRANT OPTION;
 MariaDB [(none)]> FLUSH PRIVILEGES;
 MariaDB [(none)]> EXIT;
~
~
*データーベースの回復 [#a5141e60]
~
 USB-HDDのバックアップ置き場に行き、バックアップカレントディレクトリ上に解凍用フォルダを作って、そこをカレントディレクトリにして、解凍。~
 $ cd /publicmnt/Public/wp-backup/alpha/
 $ sudo mkdir temp
 $ cd temp
 $ sudo tar xvzf ../<バックアップファイル>.tar.gz
 $ sudo mysql -u root alpha < alpha.sql
 $ cd ..
 $ sudo rm -rf temp
~
 $ cd /publicmnt/Public/wp-backup/masterkudo/
 $ mkdir temp
 $ cd temp
 $ sudo tar xvzf ../<バックアップファイル>.tar.gz
 $ sudo mysql -u root masterkudo < masterkudo.sql
 $ cd ..
 $ sudo rm -rf temp
~
*Let's encrypt設定 [#pad7505a]

※設定前に、各DDNSをアップデートする→cron tabのコマンドをrootで実行
 /usr/bin/wget -O ddoupdatelog  'http://free.ddo.jp/dnsupdate.php?dn=<Name>&pw=<Password>'
 /usr/bin/wget -O mydnsupdatelogipv4  'http://<Name>:<Password>@ipv4.mydns.jp/login.html'
 /usr/bin/wget -O mydnsupdatelogipv6  'http://<Name>:<Password>@ipv6.mydns.jp/login.html'
~
 $ sudo apt install certbot python3-certbot-apache
~
**certbot適用前のmifmif.mydns.jp.confを/etc/apache2/sites-availableへ [#sa839888]
~
 /etc/apache2/sites-available
 <VirtualHost *:80>
 	ServerName mifmif.mydns.jp
 	ServerAlias mifmif.ddo.jp
 	ServerAdmin mifjpn@outlook.jp
 	ServerAdmin <mailaddress>
         DocumentRoot /publicmnt/Public/webroot/
    	<Directory "/publicmnt/Public/webroot">
      		Require all granted
    	</Directory>
 </VirtualHost>
~
~
 $ sudo a2dissite 000-default.conf
 $ sudo a2ensite mifmif.mydns.jp.conf
 $ sudo systemctl reload apache2
~
ローカルで、httpでの各ページが表示できることを試す。~
~
 $ sudo apache2ctl configtest
 *********
 Syntax OK
を確認~
certbotにより、SSL再設定。~
 $ sudo certbot --apache -d mifmif.mydns.jp -d mifmif.ddo.jp
~
.htaccessの有効化~

 sudo a2enmod headers
 sudo a2enmod rewrite
~
 /etc/apache2/apache2.confの以下を変更
~
 <Directory /publicmnt/Public/webroot/alpha>
 	Options Indexes FollowSymLinks
 	AllowOverride All
 	Require all granted
 </Directory>
 
 <Directory /publicmnt/Public/webroot/masterkudo>
 	Options Indexes FollowSymLinks
 	AllowOverride All
 	Require all granted
 </Directory>
~
*chrony [#t9399f27]
 $ sudo apt install chrony
~
SetUpPackから/etc/chrony/chrony.confを入れ替えて設定~
 $ sudo service chronyd restart
 $ chronyc sources
~
*ファイヤーウォールの設定 [#e1b7b193]
 $ sudo ufw enable
 $ sudo ufw default DENY
 for vnc
 $ sudo ufw allow 5900
 for RDP
 $ sudo ufw allow 3389
 for ntp
 $ sudo ufw allow ntp
 SambaとCupsとApache
 $ sudo ufw allow Samba
 $ sudo ufw allow http
 $ sudo ufw allow 443/tcp
 $ sudo ufw reload 
 $ sudo ufw status
 状態: アクティブ
 To                         Action      From
 --                         ------      ----
 5900                       ALLOW       Anywhere                  
 3389                       ALLOW       Anywhere                  
 123/udp                    ALLOW       Anywhere                  
 Samba                      ALLOW       Anywhere                  
 80/tcp                     ALLOW       Anywhere                  
 443/tcp                    ALLOW       Anywhere                  
 5900 (v6)                  ALLOW       Anywhere (v6)             
 3389 (v6)                  ALLOW       Anywhere (v6)             
 123/udp (v6)               ALLOW       Anywhere (v6)             
 Samba (v6)                 ALLOW       Anywhere (v6)             
 80/tcp (v6)                ALLOW       Anywhere (v6)             
 443/tcp (v6)               ALLOW       Anywhere (v6) 
~
*Cron [#ea99383e]
SetUpPackから/rootへコピー後、見ながらcrontab -eで設定。~
概略~
~
 */12 * * * * /usr/bin/wget -O ddoupdatelog  'http://free.ddo.jp/dnsupdate.php?dn=<Name>&pw=<Password>'
 */12 * * * * /usr/bin/wget -O mydnsupdatelogipv4  'http://<Name>:<Password>@ipv4.mydns.jp/login.html'
 */12 * * * * /usr/bin/wget -O mydnsupdatelogipv6  'http://<Name>:<Password>@ipv6.mydns.jp/login.html'
 */12 * * * * cp /var/log/apache2/* /publicmnt/Public/apachelog/
 */12 * * * * /root/remount_usb-hdd.sh > remount_usb-hdd.log
 03 00 * * 3 /root/update_giolite2 > /root/update_giolite2.log
 00 00 * * 6 /root/clam-full.sh
 55 23 15 * * certbot renew
~
各、DDNSへのCronのLogを見ておくこと。~
*ClamAV [#d2997e98]
 $ sudo apt install clamav clamav-daemon

※(直したのがある)clamav-freshclamのserviceをストップしないとfreshclamがエラーになる→clam-full.sh編集~
 $ sudo systemctl stop clamav-freshclam
 $ sudo freshclam
 $ sudo systemctl start clamav-freshclam
 $ sudo mkdir /var/log/clamav/virus
~
clam-full.shをrootに+xして、cronの用意をしておく~
~
*msmtp [#c85f2c7d]
 $ sudo apt install msmtp
~
SetUpPackから/rootに.msmtprcをペースト~
テスト~
 $ echo 'Test for mail' | awk 'BEGIN{print "Subject:Test \n";}{print $0;}' | msmtp -a default <mail-address>
**apacheのaccess.logがother_vhosts_access.logに記述されている状態なのでaccess.logに統合する~ [#de6dc3a5]
-/etc/apache2/apache2.confに以下を付け足す。~

 # other_vhosts_access.log to apache.log
 CustomLog ${APACHE_LOG_DIR}/access.log combined

**apachのログローテートを1か月に [#g212af9a]
/etc/logrotate.d/apache2を編集して、1月のログをローテートするようにする。~

 /var/log/apache2/*.log {
     monthly
     missingok
     rotate 12
     compress
     delaycompress
     notifempty
     create 640 root adm
     sharedscripts
     prerotate
 	if [ -d /etc/logrotate.d/httpd-prerotate ]; then
 	    run-parts /etc/logrotate.d/httpd-prerotate
 	fi
     endscript
     postrotate
 	if pgrep -f ^/usr/sbin/apache2 > /dev/null; then
 	    invoke-rc.d apache2 reload 2>&1 | logger -t apache2.logrotate
 	fi
     endscript
 }
リスタートして設定を反映~
 sudo service apache2 restart
*hplip [#bd439a16]
サイトから最新を取得のこと
~
**スキャナではプラグインが読み込めない場合に、 [#k549d68e]
 $ sudo apt install apparmor-utils
 $ sudo aa-disable /usr/share/hplip/plugin.py
hplip-3.22.6(最新のプラグイン)-plugin.runなどが必要になることがある。~
~
※ Linux(UBUNTU)で、セットアップ時に、本体が探せない場合があり、Lan接続で、HPE070EA6EA3CF.local (うちの機体の場合)と検索が必要~
~
*バックアップメモの付箋 [#oc64eff7]

 $ sudo add-apt-repository ppa:umang/indicator-stickynotes
 $ sudo apt update
 $ sudo apt install indicator-stickynotes
~
*ログイン音をつける・・・(フタを閉めてしまうので進みが判らないため) [#r54007fb]

自動起動に~

 /usr/bin/canberra-gtk-play --id="desktop-login" --description="GNOME Login"
~
を追加する。~
最後にフルスキャン→メール送信テスト~

 rootでclam-full.shを実行・・・2,3時間後にScan結果がメールでくればOK~
----~
*Word Pressに「imagickがインストールされていない」と言われます [#q714ab25]

 表題通りですが、PHP用にpeclというphpの拡張モジュール作成コマンドをかけて作らないといけません。(面倒なので無視してもよかったんですがやっちゃいました。)
用意~

 $ sudo apt install imagemagick
 $ sudo apt install libmagickwand-dev
 $ sudo apt install pkg-config
 $ sudo apt install php-dev
~
ビルド~

 $ sudo pecl install imagick
 19 source files, building
 running: phpize
 Configuring for:
 PHP Api Version:         20180731
 Zend Module Api No:      20180731
 Zend Extension Api No:   320180731
 Please provide the prefix of ImageMagick installation [autodetect] :{Press Enter} 
 ・・・
 You should add "extension=imagick.so" to php.ini
~
設定~
 sudo gedit /etc/php/8.1/apache2/php.ini
 950: extension=imagick.so
~
*オプションのモジュール intl をインストール [#oa8bed4d]
 $ sudo apt install php8.1-intl
 $ sudo systemctl reload apache2
----
*geoipupdate=Slimstatの国名の更新設定 [#w3f9efcf]
 $ sudo apt install geoipupdate
 $ geoipupdate -V
バージョン4以上ならOK~
取っておいた以下のライセンス入りファイルを置く。~
 /etc/GeoIP.conf
ダウンロードのテスト~
 $ sudo geoipupdate -v
rootのupdate_giolite2でアップデートしているので。取って起いたものをコピー。実行権限を与え、テストしてみること。~
----
NextCroudは使ってないので、設定しない。

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS