カテゴリー: 技術系memo

  • BCDMのAndroid Enterpriseのアプリページは1つにつき、100アプリまで

    ソフトバンクのMDMのBCDMのAndroid Enterpriseのアプリページは1つにつき、100アプリまで。

    100アプリしか登録できないので、カテゴリを「その他」みたいな形で作って、全てを入れることができない。また、複数ページに同じアプリを登録できる(重複できる)ので、いちいち探すのが大変。

  • NginxでWordPressのパーマリンクが動かず、Apacheに変えた

    WordPress用のサーバ構築があったので、フロントのウェブサーバをNginxで設定した。PHPの動作や、Wordpressの初期設定までは、問題なし。Wordpressのパーマリンク設定をデフォルトから、変更したところ、404エラーに。Nginxなので、「.htaccess」でのrewrite設定が効かないので、Nginxの設定を変えて対応していが、いろいろと試しても動かない。いつまでも時間をかけてられないので、パーマリンクの問題で、Apache2.4系に変更した。Apache2.4だと、かなりあっさりと動作した。

    どこか時間を見つけて、Nginx + PHP + WordPressのパーマリンクの設定を検証しなくては。公式サイトの手順でもダメだったから、なんでだろう。たぶん、途中の設定とかがよくないのだろうな。やり直したら、さくっと動作するとか、そういうパターンだろう。

  • ELB+ACMでSSL通信を行うときのメリット・デメリット

    AWSで、SSL通信を行う設定をすることになったので、ELB(Elastic Load Balancer)+ACM(Amazon Certificate Manager)でSSLを通信を行うときのメリット・デメリットを考えてみた。癖はあったけれど、驚くほど設定が簡単。

    デメリット

    • ELBのコストがかかる、ELBは従量課金
    • ELB経由で、アクセスするためには、ELBのアドレスをCNAMEで指定する必要がある(ELBのIPアドレスは変動するから)
    • ELBでSSL通信がオフロードされるので、アプリケーション側の対応が必要(Wordpressだと、追加設定必要だった)

    メリット

    • ELBがSSL通信の終端になる
    • ELBがSSLのオフロードをしてくれるので、EC2側のSSL設定はいらない
    • EC2にSSL設定をしないので、OpenSSLの脆弱性と闘わなくていい(アップデートの手間が軽減される)
    • Amazon発行のSSL証明書が無料で使える(ELBにはコストがかかる)
    • ELBを使用するので、スケールアウトが用意になる
    • 証明書の設定が簡単にできる(認証キーとかの知識もいらないので楽ちん)
  • AWSのELBでWordPressを使うと”ERR_TOO_MANY_REDIRECTS”がでる

    AWSで、WordpressとSSLを使うためにELB(Elastic Load Balancer)を設定したのだが、アクセスすると、”ERR_TOO_MANY_REDIRECTS” が表示される。

    調べてみると、Wordpress+SSL+ELBの組み合わせで発生しているとのこと。Amazonの公式ページの内容も試してみたが、効果なし。

    https://aws.amazon.com/jp/premiumsupport/knowledge-center/redirect-http-https-elb/

    Nginxを使ったので、その設定を試したが効果なし。

    WordPressの設定で回避できることがわかったので、その設定を実施。

    “wp-config.php” の「wp-settings.php」の読み込み前に設定を追加。これで、アクセスしたところ、見事に成功。このとき、Nginxの設定は元に戻した状態で実施しても問題なかったので、Nginxの設定ではなく、Wordpress側の設定で回避できる問題だったようだ。

    /** Absolute path to the WordPress directory. */
    if ( ! defined( 'ABSPATH' ) ) {
            define( 'ABSPATH', dirname( __FILE__ ) . '/' );
    }
    
    /** 追加した設定 **/
    if ($_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') {
        $_SERVER['HTTPS'] = 'on';
        $_ENV['HTTPS'] = 'on';
    }
    
    
    /** Sets up WordPress vars and included files. */
    require_once( ABSPATH . 'wp-settings.php' );
    

    参考: https://qiita.com/katzueno/items/ec4cb5997eb8a066fefc

  • pythonのコーディングは、標準コーディング規約のPEP8をベースにして、つくる。

    pythonのコーディングは、標準コーディング規約のPEP8をベースにして、つくる。

    https://pep8-ja.readthedocs.io/ja/latest/

    大して、長くなく、基本的なことだけなので、読みやすく、守りやすい。

    コーディング規約の「コメント」についての規約の部分に、「英語を書くときは、Strunk and White スタイルを使いましょう」 とある。知らなかったが、ストランクとホワイトによるコンパクトな英文の作成スタイルのことらしい。Kindleで格安で売っているので、読んでみてもいいかも(読めるかどうかは不明だが)。レビューによると、2章が胆のようだ。

    https://amzn.to/2WPfZ5x

  • Bitnami Redmine のMySQLダンプ

    Bitnami Redmine(Windows版)を使っていて、MySQLのダンプを取ろうと、mysqldumpコマンドを実行したが、接続エラーになる。mysqlコマンドでは、接続できているので、ユーザとパスワードと接続については、問題がないはず。いろいろと試した結果、以下のコマンドのときは成功したので、メモとして残しておく。

    mysqldumpで成功したコマンド

    mysqldump -u bitnami --password=password --all-databases --default-character-set=binary --port=3307 > dump2019mmdd.sql
    

    これを実行すると、パスワードのくだりのところで、警告は出たが、MySQL Dumpは成功した。passwordの部分は、実際のパスワードに置き換える。

  • Windows Sandboxを使ってみて

    Windows10に新しく追加されたWindows Sandbox(Windowsサンドボックス)を試してみた。そのメモ。

    • サンドボックスは、同時に2つは開けない。1つだけ。
    • 現時点では、サンドボックスのカスタマイズができない。
    • IE11は、インストールされているので、使用できる。
    • HDDは、39.8GB。メモリは、4GBで起動する。メモリ8GB、高速SSD環境下であっても、結構、サンドボックス環境が重い。
    • 起動元がドメインに参加していたとしても、サンドボックス環境はドメインに参加していない環境。
    • サンドボックス環境も、ネットワークにはつながる。
    • サンドボックス環境は、Windows 10 Enterpriseが立ち上がる。
    • Hyper-Vとサンドボックス環境は同時に起動可能。
    • キーボードが101キーボードとして認識されている(英語配列キーボードとして認識されている)。
    • サンドボックス環境の終了と同時に環境が初期化されるので、怪しげなURLの確認やソフトウェアの確認には向いている。
  • Ubuntu のSWAPに関するメモ

    Ubuntu Server 18.04.1では、”/swap.img” というファイルがスワップとして使用されている。パーティションでもなく、ファイルがSWAPの領域なので柔軟といえば柔軟か。

    “swapon -s” コマンドで現在のスワップの状態を確認できる。

    スワップをOFFにする場合は、”swapoff” コマンドで無効化できる。

  • G SuiteのGmailでも送信日時の指定ができるようになりました

    Gmailをブラウザで使用したときに「送信日時の設定」ができるようになりました。Googleが、ちょっと前に対応を発表していましたが、なかなかG SuiteのGmailで使えるようにならず、待ちぼうけ。週が明けたら使えるようになっていた。

    使い方は簡単

    1.メールを書きます

    2.送信ボタンの横にある「▼」をクリックし、「送信日時を設定」を選択

    3.送信時間を設定します

    注意点としては、送信日時の設定に、「日本標準時」の設定がされているかどうかを確認するところです。言語設定などを変えている人は、ここが日本以外になっている可能性があります。日本以外の場合は、その国の時間で送信されてしまうため、自分が意図した時間に送信されません。

    純正で送信日時指定できるのはありがたい、これで夜にメールを書いて、明日の朝に送信みたいなことや、夜メールを送るのに、ちょっと気が引けるなんてことがなくなるので。

  • 「Yuzo Related Posts」Pluginの脆弱性でWordPressのサイトが別のサイトに転送される

    自分の管理ではないWordpressのサイトにアクセスすると、「destinywall.org」のサイト経由で、さまざまな怪しいサイトに遷移するという事象に遭遇した。

    これの対応を行ったのだが、最初はサイトに何かを埋め込まれたと思い、ファイルのタイムスタンプや一時経由のURLを検索したが反応なし。ウェブページもすぐに遷移してしまうため、状況がみれず。そのため、wgetでINDEXを取得して、HTMLファイルの中を検索したが、文字列は見つからず。

    次に切り分けのため、Wordpressのテーマも切り替えたが、解決せず。そのため、テーマではなく、もっと共通の部分に、何かが仕込まれている、という仮説の元、一つ一つプラグインを無効化していった。無効化していった結果、「Yuzo Related Posts」を無効化したときにサイトの表示が正常に戻った。これが原因ということで、いろいろと調べたところ、このプラグインの脆弱性を利用されて、別ページに飛ばされることが判明した。

    対処として、

    1. プラグインを削除
    2. DBにアクセスし、wp_optionsから、「yuzo_related_post_options」のキーのデータを削除

    これで対応完了。プラグインもかなり大量に入っていたので、結構大変だった。なんだかんでプラグインは少ない方がよい。(プラグインの管理も大変)

    https://wordpress.org/support/topic/remove-this-plugin-immediately/