月: 2021年10月

  • バックアップの設定 FTP&cron&タスクスケジューラ

    👇これで書いた中のwordpressのディレクトリごとバックアップの設定した。

    バックアップの検討 – DESPINA.WORK

    webサーバ側で定期的に圧縮ファイルを作って、それをWindows10ファイルサーバで定期的にgetする方式

    前提:zipとFTPサーバをインストール、設定しておく

    apt install zip
    apt install vsftpd

    1.Linux側:cronで対象のディレクトリをzip化する

    ファイル名:zipassyuku.sh

    zip -r 圧縮後のファイル名 圧縮したいディレクトリ

    cronを作成する

    #cron編集
    crontab -e
    
    ##--内容ここから--##
    # m h  dom mon dow   command
    ##分 時 日 月 曜日 実行コマンド
    #毎日16時に実行
    00 16 * * * sh /var/www/html/zipassyuku.sh
    ##--内容ここまで--##
    
    #確認
    crontab -l
    sudo service cron start

    2.Windows側

    ファイル名:ftp.bat

    @echo off
    ftp -ins:C:\ftp_script_1.txt > C:\log.txt

    ※「-i 対話モードオフ」、「-n 自動ログインオフ」「-s: 引数もらう」

    ファイル名:ftp_script_1.txt

    open xx.xx.xx.xx
    user ユーザ名xxx パスワードxxx
    bin
    cd ディレクトリ
    get assyuku.zip
    quit

  • バックアップの検討

    今日自鯖をいじってたらzabbixのエージェントが壊れて色々直そうとしている間にVMごと消してしまってwordpress再設定した。

    だからバックアップを考えようと思う。それぞれの選択肢はどれかひとつじゃなくて、全て行うことでそれぞれの弱点を補完する感じ。

    1.まずはHyper-Vで仮想OSごと同ストレージにエクスポートして、それを共有バックアップストレージにコピーすること。

    参考リンク: 

    仮想マシンをエクスポートおよびインポートする | Microsoft Docs

    仮想マシンのエクスポートを自動化する。 | 自鯖 (jisaba.life)

    パワーシェルを使ってエクスポートするスクリプトを書いてタスクスケジューラで実行。インポートは手動の予定。

    2.WordPressとZabbixはWEBサーバが外部DBと連携する方式になってる。仮にWordPressだけを復元したい場合、DBが同じVMに存在しているからHyper-VのエクスポートだけだとZabbixまで巻き戻ってしまう。だからDBごとにバックアップを取る。

    cronで行うと思うけど、吐き出し先の権限とリソースがめんどくさそう。バックアップ先がwindowsだから。

    参考URL

    mysqlバックアップの取り方 – Qiita

    3.WordPressはローカルにメディアファイルを抱えてる。これもバックアップとリストア対象だと思う。たぶん。2番ができればすぐできるはずだけど。プラグインはあんまり使いたくない。

    これもバックアップ先がwindowsに直投げかも

    4.任意のタイミングで手動バックアップ

    • phpMyAdminでエクスポート
    • WordPressでxml形式でエクスポート※WordPressのメディアとかはxmlだけではリストはできない
    • Hyper-Vマネージャより手動エクスポート

    5.必要フォルダ数

    • Hyper-V用
    • DB用
    • WordPressのメディアライブラリ、テーマとか用
  • WordPressのサイトURLいじって管理画面にログインすらできなくなった時に変える場所

    vim /var/www/html/わどぷれす入れてるフォルダ/wp-config.php
    
    ##以下を追記
    define('WP_HOME','https://www.despina.work/wordpress/');
    define('WP_SITEURL','https://www.despina.work/wordpress');
    
    ##HTTPS化に際して変になったときはしたのを追記してみたりする
    $_SERVER['HTTPS'] = 'on';
    

    wordpressフォルダをhtml直下じゃなくてサブディレクトリに入れてるとバグるらしい。100万回くらいばぐらせた。

    ちなみに該当の値はdefineで上書いても残り続けるから、画像のテーブルに入ってる値手動で変えれば良いと思う。(自分は気になったので手できれいにした)

    defineしちゃうとm入力ボックスが白くなっていじれなくなる。
    テーブルちょくせつ編集でなおる

  • php.iniの場所

    自分の場合このページにある返り値のものではなかった。

    もういい加減覚えよう。php.iniはどこにあるのか – Qiita

    #  php -r "echo phpinfo();" | grep "php.ini"
    Configuration File (php.ini) Path => /etc/php/7.4/cli
    Loaded Configuration File => /etc/php/7.4/cli/php.ini
    👆これ編集しても反映されない
    

    正解はこっち。「apatche2」のフォルダのものを使ってたみたい

    ls /etc/php/7.4/apache2
    conf.d php.ini

    
    
  • Ubuntuのipv6無効化

    この記事でメモしておいたんだけどこのやり方だと再起動で初期化されちゃうみたい。

    Ubuntu Server 20.04.3 LTS初期設定メモ – DESPINA.WORK – WORDPRESS

    UbuntuでIPv6を無効にする方法 | TECH+ (mynavi.jp)

    ###IPv6を無効にする設定(永続)
    ###/etc/sysctl.confを編集
    net.ipv6.conf.all.disable_ipv6=1
    net.ipv6.conf.default.disable_ipv6=1
    net.ipv6.conf.lo.disable_ipv6=1

    理由は/etc/netplanが起動後に読み込まれて、システム側の設定が宇和が枯れるから。

    ちなみに起動後「sudo sysctl -p」すると、ipv6が無効になる。

    だからどうすればいいかっていうと「/etc/netplan/*.yaml」ファイルを下記のようにする。

    network:
      ethernets:
        eth0:
          dhcp4: false
          dhcp6: false
          accept-ra: false
          link-local: [ ]
          addresses: [xxx.xxx.xxx.xxx/xx]
          gateway4: xxx.xxx.xxx.xxx
          nameservers:
                  addresses: [xxx.xxx.xxx.xxx]
                  search: []
      version: 2

  • FortiGate 60DのVPN-SSLの設定

    1.SSLの項目、「ポータル」の画面いじる。

    送信元IP自動で作られる。

    「スプリットトンネリング」っていうのは、VPNクライアント側から見て、VPNの仮想IFといつものゲートウェイを分けて同時に使えるようにする時の設定みたい。設定する場合は「ルーティングアドレス」にVPNサーバ側のローカルネットワークのアドレスを入れてあげるっぽい。

    ※今回は必要ないのでオフ。VPN側のNWとほかのNWの中間にVPNクライアントが入るので、複雑になる。

    2.次は”設定”の箇所

    上の方はテキトウでいいけど赤枠部分が重要。

    3.FrotiGateのネットワーク設定の要と思うポリシーの設定。

    「送信元ユーザ」をユーザを「VPN用のポータル」が使えるユーザのグループにしてあげないとVPN張れない。ここで詰まった…

    4.適当にユーザとグループ作ってVPNに使ってあげる。

    ユーザもグループも、どっちもつくらないとだめ
  • Zabbixのagentのインストール5.5 : ubuntu 20.04.3 LTS

    wget https://repo.zabbix.com/zabbix/5.5/ubuntu/pool/main/z/zabbix-release/zabbix-release_5.5-1+ubuntu20.04_all.deb
    #
    sudo dpkg -i zabbix-release_5.5-1+ubuntu20.04_all.deb
    #
    sudo apt install zabbix-agent
    #
    sudo vim /etc/zabbix/zabbix_agentd.conf
    #
    Server=サーバ側アドレス
    ServerActive=エージェントがActive使ってる人はここ
    #
    sudo systemctl enable zabbix-agent
    sudo systemctl restart zabbix-agent
    #FW確認
    sudo ufw status
    

    あとは、サーバ側でとうろく

  • 残作業メモ1

    ・メール送受信(Ubuntu)

    →結局Gmail連携で済ませたのでOK

    ・Zabbix(Ubuntu)
     →kubernetesはさすがにめんど
      →完了

    ・Docker(WEB)、Dcoker(メール)
     →kubernetes

     →いらないかあ一旦
    ・SQL

     →MySQLで統合DB作成済み

  • Ubuntu Server 20.04.3 LTS初期設定メモ

    • ネットワーク設定
    cd /etc/netplan
    cp 00-installer-config.yaml 99-manual-config.yaml

    最も大きい数字のyamlコンフィグを読み込むらしい。それを下記のように編集する。

    network:
      ethernets:
        eth0:
          dhcp4: false
          dhcp6: false
          addresses: [192.168.xx.xx/xx]
          gateway4: 192.168.xx.xx
          nameservers:
                  addresses: [192.168.xx.xx,xx.xx.xx.xx]
                  search: []
      version: 2

    ※空白などの判定がシビアなのでgenerateで確認しつつ上から舐める。

    IPv6を無効化する場合はこちらを参照

    👉Ubuntuのipv6無効化 – DESPINA.WORK

    sudo netplan --debug generate
    sudo netplan apply
    • NTPの設定
    vim /etc/systemd/timesyncd.conf
    date
    systemctl status systemd-timesyncd

    特に必要は無いけどなんとなくいじる。

    • パッケージアップデート
    apt update
    apt upgrade
    • タイムゾーンの変更
    timedatectl set-timezone Asia/Tokyo
    • ipv6無効化(訂正版)

    Ubuntuのipv6無効化 – DESPINA.WORK – WORDPRESS

    #一時的に無効化のほう(再起動などで戻る)
    sudo sysctl -w net.ipv6.conf.all.disable_ipv6=1
    sudo sysctl -w net.ipv6.conf.default.disable_ipv6=1
    sudo sysctl -w net.ipv6.conf.lo.disable_ipv6=1
    ###IPv6を無効にする設定(永続)
    #/etc/sysctl.confを編集
    net.ipv6.conf.all.disable_ipv6=1
    net.ipv6.conf.default.disable_ipv6=1
    net.ipv6.conf.lo.disable_ipv6=1
    ###適用
    sudo sysctl -p
    

  • Zabbix Server 5.4以降のインストール

    ここに書いてることやる👇

    Ubuntu 20.04にZabbixサーバーをインストールする方法 – Tutorial Crawler

    でも5.4以降はこのページに載ってない「zabbix-sql-scripts」っていうパッケージも入れないといけない。じゃないとこんなエラーが出てくる。

    Unable to determine current Zabbix database version: the table "dbversion" was not found.

    Unable to determine current Zabbix database version: the table “dbversion” was not found – Stack Overflow

    初期DBに流しいれる用のスクリプト「create.sql.gz」がこのページのパッケージだけだと入らない。ローカルのフォルダに無いからリポジトリ間違った利してるのかと思ってパッケージの中見てみたらそもそも入ってなかったw

    ###必要なパッケージ
    zabbix-sql-scripts   ("s"がついてる。複数形)
    ###初期DBのスクリプト
    create.sql.gz

    どこ入ったかわからない場合はfindで調べる

    find / -name create.sql.gz

    👇のTwitterが参考になりました。

    Atsushi TanakaさんはTwitterを使っています 「@shin177729 5.4からは、zabbix-sql-scriptというパッケージに入っています。」 / Twitter