「技術系」カテゴリーアーカイブ

サーバの初期設定する(Amazon Linux 2)

AWSを使う機会があったので忘れないようにメモ。数年前にも触ったことはあるんだけど、もう忘れてたw

サーバ準備

AWSコンソールから設定していきます。

リージョン
「アジアパシフィック(東京)」にする。

ネットワーク
VPCダッシュボードからVPCウィザードを起動。以下の設定でVPC作成。

・作成するリソース:VPC、サブネットなど
・名前タグ:任意の名前
・IPv4 CIDRブロック:10.0.0.0/16
・テナンシー:デフォルト
・DNS ホスト名を有効化:チェック
・DNS 解決を有効化:チェック

これでVPC、サブネット、インターネットゲートウェイ、ルートテーブルが自動生成される。便利だねえ。正直この辺ややこしいし。

セキュリティグループ
EC2のセキュリティグループから作成。アウトバウンドグループ(外に出ていく通信)は全部通す。インバウンドグループ(中に入ってくる通信)はsshやhttp、mysqlなど必要なものだけ通す。
ソースには全部許可のAnywhere-IPv4 (0.0.0.0/0)。

インスタンス
EC2の「インスタンスを起動」から作成。

・名前とタグ:任意の名前
・アプリケーションおよび OS イメージ:Amazon Linux 2
・インスタンスタイプ:適切なもの
・キーペア:新しいキーペアの作成
・ネットワーク設定:右側にある編集ボタン押す
・VPC:上で作成したもの
・サブネット:上で作成したもの(public1, private1等をちゃんと確認)
・パブリック IP の自動割り当て:有効化
・ファイアウォール:「既存のセキュリティグループを選択する」で上で作成したもの
・ストレージ:適切なもの

データベース
RDSの「データベースの作成」から作成。

・データベース作成方法を選択:標準作成
・エンジンのオプション:MySQL
・バージョン:適切なもの
・テンプレート:本番稼働用
・可用性と耐久性:単一のDBインスタンス
・設定:DBインスタンス識別子やパスワード設定
・インスタンスの設定:任意のインスタンス
・ストレージ:適切なもの
・コンピューティングリソース:ECコンピューティングリソースに接続しない
・VRC:上で作成したもの
・DBサブネットグループ:新規?
・パブリックアクセス:なし
・VRCセキュリティグループ:既存の選択
・アベイラビリティーゾーン:指定なし
・データベース認証:パスワード認証

Elastic IP
EC2の「Elastic IP アドレスを割り当てる」から作成。アクションボタンの「Elastic IP アドレスの関連付け」でインスタンス関連付け。

これでサーバが用意できました。慣れれば簡単なんだろうけど、調べるのに結構時間かかりました。コロコロ仕様変わってるみたいで、ネットに書かれた通りに行かなかったりするし。

サーバーログイン

コンソールのEC2のインスタンス>接続ボタン>sshクライアントで接続方法わかります。

$ ssh -i key.pem ec2-user@(IPアドレス)

sshのタイムアウトが早いので延ばします。60秒ごとチェックで30分アクセスなければタイムアウトに変更。

$ sudo vi /etc/ssh/sshd_config
ClientAliveInterval 60
ClientAliveCountMax 30

$ sudo service sshd restart

ついでにタイムゾーンも変更。

$ sudo timedatectl set-timezone Asia/Tokyo

ユーザ作成

IDパスワード設定。

$ sudo useradd test
$ sudo passwd test

sudoできるようにする。

$ sudo usermod -G wheel test

$ sudo visudo
以下の行を有効化
%wheel ALL=(ALL) NOPASSWD: ALL

鍵作成。

$ sudo su - test
$ ssh-keygen -t rsa
何も入力せずエンター

公開鍵の設定
$ cd ~/.ssh
$ cat id_rsa.pub >> authorized_keys
$ chmod 600 authorized_keys
$ exit


作成されたid_rsaファイルをダウンロードして、ファイル名をkey.pemに変更。このファイルを鍵としてログイン出来るようになります。

アプリインストール方法

Amazon独自のリポジトリを使います。まずは以下のようにインストール可能なアプリのバージョンを確認します。ここではPHP。

$ sudo amazon-linux-extras |grep php

するとphp7.4とphp8.0がインストール可能と出ました。そこでphp8.0を以下のようにインストールします。
$ sudo amazon-linux-extras install php8.0

終わり。簡単だね。この手順を元に以下やっていきます。

amazon-linux-extrasで見つからない場合は、他のOSと同じく他のリポジトリから持ってくることも可能です。

webサーバ関係

nginx

$ sudo amazon-linux-extras install nginx1
$ sudo systemctl start nginx
$ sudo systemctl enable nginx

サブドメイン設定

$ sudo vi /etc/nginx/conf.d/(ドメイン名).conf
server {
listen 80;
server_name (ドメイン名);
root /home/(ユーザ名)/public_html;
index index.html index.htm index.php;

location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}

再起動

$ sudo systemctl restart nginx.service

php

$ sudo amazon-linux-extras install php8.0
$ sudo yum install php-cli php-pdo php-fpm php-json php-mysqlnd php-mbstring

$ sudo vi /etc/php.ini
date.timezone = "Asia/Tokyo"

$ sudo vi /etc/php-fpm.d/www.conf
user = nginx
group = nginx

$ sudo chown nginx /var/log/php-fpm/
$ sudo systemctl start php-fpm
$ sudo systemctl enable php-fpm

再起動
$ sudo systemctl restart php-fpm.service

composer

$ cd /home/ec2-user
$ sudo curl -sS https://getcomposer.org/installer | php
$ sudo mv composer.phar /usr/local/bin/composer

Git

$ sudo yum install git

SSL(Let’s Encrypt)

$ sudo amazon-linux-extras install epel
$ sudo yum install certbot
$ sudo certbot --nginx
$ sudo certbot certonly --webroot -w /(パス)/public_html -d (ドメイン名) --email (メールアドレス)

$ sudo vi /etc/nginx/default.d/(ドメイン名).conf
server {} 内に以下追加
listen 443 ssl;
ssl_certificate /etc/letsencrypt/live/(ドメイン名)/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/(ドメイン名)/privkey.pem;

$ sudo systemctl restart nginx.service

バッチでSSL証明書自動更新(※後でチェック)
$ sudo crontab -e
0 4 1,15 * * root certbot renew && systemctl start nginx

データベース

EC2にMarinaDBインストールします。

$ sudo amazon-linux-extras install mariadb10.5
$ sudo systemctl start mariadb
$ sudo systemctl enable mariadb

rootにはパスワードが設定されてなくてログインできません。なのでセーフモードで設定します。
RDSに繋ぐ場合は設定しなくても大丈夫です。

$ sudo systemctl stop mariadb
$ sudo mysqld_safe --skip-grant-tables --skip-networking &

$ mysql -u root
> FLUSH PRIVILEGES;
> ALTER USER 'root'@'localhost' IDENTIFIED BY '(パスワード)';
> FLUSH PRIVILEGES;
> exit

$ sudo kill `sudo cat /var/run/mariadb/mariadb.pid`
$ sudo systemctl start mariadb

ユーザを作成します。RDSの場合はもちろんRDS上でやります。

$ mysql -u root -p
> CREATE USER '(ユーザ名)'@'localhost' IDENTIFIED BY '(パスワード)';
> GRANT ALL PRIVILEGES ON *.* TO '(ユーザ名)'@'localhost';

特定のテーブルのみ、かつ外部からのアクセス許可(%)の場合は
> CREATE USER '(ユーザ名)'@'%' IDENTIFIED BY '(パスワード)';
> GRANT ALL PRIVILEGES ON (テーブル名).* TO '(ユーザ名)'@'%';

まとめ

結構調べるのに苦労しました。まあでもこれでAWSの案件が来ても大丈夫。

ちょこちょこ記述が足りない箇所がありますが、後日追加予定。

11インチiPad Pro 256GB スペースグレイ(2021)を買う

2021 Apple 11インチiPad Pro (Wi-Fi, 256GB)スペースグレイを購入しました。去年の春くらいに出た機種です。

数カ月後には次の機種が発表されそうなタイミングだけど気にしない。

今使ってるのが4年半前に買ったもので、さすがにバッテリーがヘタってるし、あと最近Kindleアプリが異様に重いのがストレスだったので…

セールで割引

お正月に複数のセールが重なったタイミングで購入できました。

コンビニでApple Gift Card 10%還元10,000円引
楽天リーベイツ 5%還元5,516円引
楽天リーベイツ 初回購入者限定ボーナス500円引
Appleの初売り iPad Pro12,000円引
Appleの初売り Apple Pencil3,000円引

合計で31,016円、およそ25%引です。最近のタブレットは10万円超えだから、少しでも安くなるとありがたいです。

初期設定

前日に「iCloud+にバックアップしますか?」みたいなメッセージが来たのでバックアップ。iPad届いたらそこから自動的にインストール済みアプリや設定が読み込まれました。便利だねえ。

お陰で一部のアプリはログイン済み。それ以外はひたすらログイン作業だけど、だいぶ省略できました。

使用感など

ついにホームボタンが無くなりました。まあ既にスマホで慣れていたので問題なし。その分、機体サイズそのままで画面が上下に広くなったので良い。

音が良くなった気がする。

液晶が角丸になったのにちょっと違和感。まあすぐ慣れるだろうけど。

充電ケーブルがLightningからUSB-Cに。これでケーブル1本減らせる。

懲りずにApple Pencil(第2世代)購入w 第1世代を買った時、数回だけ使って放置してたらバッテリーが死んでそれっきりだったんだよね(汗) 今回はちゃんと使おう。

まとめ

順当に進化してるようで良いね。Apple M1チップの性能は使っていけばわかるかな。

スマホGalaxy S21 5G(SC-51B)に機種変更した

4年ぶりに機種変更しました。

Galaxy S21 5Gです。8ヶ月くらい前に発売したのだけどね。

選定基準

どの機種にするかかなり悩みました。まず最近のスマホはデカい。こんなの片手で操作できないでしょ。てな訳でできれば小さいものを。

次にスペック。5万円前後のミドルスペックにするか、10万円前後のハイスペックにするか迷ったけど、また3~4年使うわけだし、性能低いと後悔しそうだったのでハイスペックに。

最後ブランド。ずっとAQUOSを使ってきたけど、現在のラインナップでは小さくてハイスペックなのが無かった。残るはXperiaとGalaxyで、国産Xperiaかなと考えてたんだけど、電話帳とかが独自アプリだったり、指紋認証が横の電源と共有とか変なことやってたんで、普通なXperiaに決めました。

スペックについて

前機種SH-03Jとの比較です。
CPU:Snapdragon 835 → 888 5G (性能3倍)
メモリ:4GB → 8GB (2倍)
ストレージ:64GB → 256GB (4倍)
液晶:5.3インチ → 6.2インチ (1.2倍)
バッテリー:3160mAh → 4000mAh (1.3倍)

これだけスペックアップしてるのに、サイズは逆に小さくなってるのが凄い。また液晶も16:9から20:9と縦長に変わったため、スペック以上に広く見える。

カメラはまだ試してないけど、評判いいみたいだし光学3倍ズームも付いてるので撮るのが楽しみです。

指紋認証が液晶をタッチするってのも良いね。位置がわかりづらいけど慣れれば簡単に認証できるはず。

平らな所に置くと、カメラが出っ張ってるせいでちょっとガタつく。カバー付けろって事かな。

ちなみにこの機種は5G対応だけど、うちの所は5G来てませんw サービスエリアマップ見ると、来年の春くらいには来るかな?

初期設定

Edyやnanacoといった決済に関わるアプリは、機種変の時個別にやることあって面倒だね。

Galaxyは電話帳や画像などのデータ移行は、専用アプリ入れてスマホ同士をUSB-Cで繋げば簡単にできる、と書かれてたので試したけど前機種がうまく認識しなかった。仕方ないのでWi-Fiで試したらすんなり行けました。付属のUSB-Cケーブルいらなかったなw

あとはひたすらアプリインストールして設定。疲れた… Androidのバージョンが違うからか、デザインやアイコンの色とかが変わって少し違和感あるけど、まあ慣れだね。

まとめ

設定も終わり、問題なく使えそうです。せっかく性能上がったので、ゲームもやってみようかな。

Google Cloud Platform(GCP)で無料サーバ構築

Google Cloud Platform(GCP)には無料枠として「Always Free」というのがあります。GCP使ったことなかったので、今回初めて知りました。

スペック

Compute Engineにて、以下の仮想サーバを無料で使えます。

サーバ:e2-micro(CPU0.25コア、メモリ1GB)
ストレージ:30GB
下り転送量:月1GB以下まで

転送量が少ないので普通のwebサーバとしては使えないけど、他のサーバ達を管理するサーバとして使えないかなと。

構築

いつもOSはCentOS使ってたけど今月で使えなくなるので、Ubuntuにしました。そしてwebサーバもApacheからnginxに乗り換えです。

どちらもあんまりいじったことないので、うっかり設定抜けでセキュリティホールとかあったら怖いし、ここに詳細は書きません。少しずついじっていこう。

あとはSSLをLet’s Encryptで設定して、BASIC認証つけてとりあえず完成です。

今後

サーバが生きてるかどうかの監視と、バックアップの自動化をやっていくつもりです。バックアップ自体は各サーバのローカルでやってるけど、別サーバに保存したかったんだよね。

そういえば転送量1GB無料の注釈に「ただし中国とオーストラリアを除く」と書かれてます。この2ヶ国からのアクセスは1GB以下でも料金かかってしまうようです。ぐぐるとこれのせいでサーバ運用を諦めた人達もいるので、何とか頑張ろう。

90日間300ドル分は試せるので、その間にいい感じの仕組みを作ります。

ノートPCの画面の明るさが勝手に変わるのを止める!

先月買ったVAIOですが、エディタなど黒いウインドウを表示すると画面全体が勝手に暗くなるんですよ。

バッテリーの節約機能っぽいけど、エディタとブラウザを頻繁に切り替えていると見づらくて仕方ない。お節介な機能です。

以前のノートPCには電源オプションに「ディスプレイ暗転時の明るさ」や「自動輝度調整を有効にする」といった設定がありましたが、このノートPCにはない。

電源関連の設定をいじったり、海外サイトにあったレジストリで設定項目を復活させる方法を試したり、VAIOのサポートに問い合わせたりもしました。そんな試行錯誤をして、ようやく解決法を見つけたよ。

スタートボタン > インテル グラフィックス・コマンド・センター > システム > 電源 > バッテリー駆動

パネル・セルフリフレッシュとディスプレイ・パワー・セービングをオフ

これで画面が暗くならなくなった。VAIOの電源設定でもなく、Windowsのコンパネでもなく、インテルのGPU設定だったんだね。わかってしまえば何てことないんだけど、結構苦労しました。

ようやく普通に使えます。

ノートパソコンVAIO SX14(2020年モデル)買う

仕事でノートPCが必要になったので、VAIO SX14を購入しました。去年の10月に出たものです。

今まで使っていたのは5年前に買ったVAIO Z(2016年モデル)です。さすがに仕事で使うには厳しい。

ホントは少し前に出たVAIO Zが欲しかったけど、これより10万円高いので諦めたw

スペック

VAIO SX14 (S1431)
CPU:Core i7-1065G7 (1.30GHz)
MEM:16Gbyte
GPU:インテル Iris Plus グラフィックス
SSD:512GB
液晶:14.0インチ(1920×1080)
OS:Windows 10 Pro
ドライブ:無し
重量:0.99kg
カラー:ALL BLACK EDITION

5年前に買ったのとあんまり変わってないように見えるけど、CPUやGPUの性能が2倍以上になってるみたいです。

4K液晶も気になったけど、バッテリーの持ちが半分になるので止めました。

使用感など

持ってみたら軽くてびっくりした。中身空っぽなのかと思ったよ。最近重たいMacbook Proばかり使ってたから比べ物にならないくらい軽いね。毎日持ち運ぶものだから助かる。

必要なアプリとかインストールするのは2時間くらいで完了。昔は半日仕事だったんだけど楽になった。しかし、アプリやサイトにログインするたびにGoogleのセキュリティ通知が飛んでくる。Google様にどっぷり依存してるなw

液晶が13.3インチから14インチに微妙に大きくなったけど、ぱっと見よくわからないね。使い始めれば違いがわかるかな。

まとめ

これでストレスなく開発できます。

【4Kテレビ】ブラビアKJ-43X8500H購入!

ソニー 43V型 液晶 テレビ ブラビア KJ-43X8500H 4Kチューナー 内蔵 Android TV (2020年モデル)買いました。

これ1台で特別定額給付金が無くなったw

スペック

画面サイズ:43インチ
画素数:3,840×2,160(4K)
リフレッシュレート:60Hz
高画質:HDR10、倍速駆動パネル、4Kアップコンバート等
その他:Android TV等

購入動機

PS5を購入する権利が当たったので、4Kテレビを買うことにしました。

今使ってるテレビは11年前に買ったシャープの32インチです。動作に問題はないんだけど、画質がHDだし、やはり4Kでやりたい(情報量がピクセル比で9倍違う)。

安い4Kテレビも幾つか調べたんだけど、色味が悪いとか動作がおかしいとかレビューにあったので、それなりの値段のにしました。スペックが去年のとあまり変わらないけど今年のを選択。少し安いX8000Hもあるけど、倍速機能のあるX8500Hを選択しました。

使用感

やはり32→43インチはでかいね。横幅が18センチ大きくなった。そのため今まで置いてた場所には置けず、部屋の模様替えしたよ。

テレビの足が細い金属の板みたいなものなので、倒れないかちょっと心配。

地上波見てみたけど色が鮮やかだし、4Kアップコンバートのお陰か綺麗に見えます。良いね。YouTubeやAbemaTVも問題なく見れました(画像はAbemaTV)。

Android TV乗ってるので、アプリやゲームも出来ます。試しにVLCプレーヤー使ったらNASの動画も再生できました。これで大画面で見れる。

外付HDDつなぐと番組録画出来るらしい。レコーダー不要とは便利だね。余ってるHDDつないでみるか。

あと、今購入したらHuluとU-NEXTが3ヶ月無料で見れます。後で登録しよう。

まとめ

最近のテレビは多機能だね。もうデカいタブレットみたいなものだ。

ともかくこれでPS5が届いても大丈夫です。

サーバの初期設定する(CentOS8.2)

サーバ移転したのでまた書きました。自分用に。

さくらのVPSを使っているので、ところどころ www????.sakura.ne.jp として入力しています。

ユーザ作成

まずはrootのパスワードを変更します。

# passwd

作業用アカウントを作成します。

ユーザーhoge作成
# useradd hoge

hogeのパスワード設定
# passwd hoge

hogeをwheelグループに入れる
# usermod -G wheel hoge

作業用アカウント(wheelグループ)以外ではrootになれないように制限します。元から設定済みでしたが念のため。

# visudo

この行を有効化
%wheel ALL=(ALL) ALL

suできるユーザを指定。

# vi /etc/pam.d/su

この行を有効化
auth required pam_wheel.so use_uid

rootで直接ログインできないようにします。

# vi /etc/ssh/sshd_config

yesをnoに変更する
PermitRootLogin no

SSH再起動。

# systemctl restart sshd

CentOS8ではTCP wrapperが廃止されたので、SSHのアクセス制限はfirewalldでやる必要があります。未対応。

パッケージ管理

yumからdnfに変わりました。必要なリポジトリを追加します。

# dnf install epel-release
# dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm

Remiを指定してインストールする場合には以下のように記述します。

# dnf --enablerepo=remi install (パッケージ名)

全部のアプリをアップデートする。

# dnf --enablerepo=remi update

ファイアウォール

起動
# systemctl enable firewalld
# systemctl start firewalld
設定追加
# firewall-cmd --add-service=http --zone=public --permanent
# firewall-cmd --add-service=https --zone=public --permanent
# firewall-cmd --add-service=smtp --zone=public --permanent
# firewall-cmd --add-port=110/tcp --zone=public --permanent
# firewall-cmd --add-port=587/tcp --zone=public --permanent
# firewall-cmd --reload

現在の設定は以下で確認できます。

# firewall-cmd --list-all --zone=public

webサーバ

Apache 2.4をインストールします。

# dnf install httpd

起動
# systemctl enable httpd
# systemctl start httpd

ドメインごとに管理するユーザを分けます。普通にユーザを作成すると自分のホームディレクトリより上の階層に行けてしまうので、chrootを使って行けないようにします。

グループ作成。

# groupadd sftpgroup

グループに所属するユーザにchrootを適用します。

# vi /etc/ssh/sshd_config

サブシステム変更
#Subsystem sftp /usr/libexec/openssh/sftp-server
Subsystem sftp internal-sftp -u 0022

グループと行ける範囲を末尾に追加
Match group sftpgroup
ChrootDirectory ~
ForceCommand internal-sftp -u 0022

sshdを再起動します。設定間違うとサーバにアクセスできなくなるので、念の為ターミナルをもう1つ開いておいたり。

# systemctl restart sshd

あとはユーザを作成していけば /home/hoge/ がsshのルートディレクトリになります。

ユーザ作成
# useradd -g sftpgroup hoge
# passwd hoge

ホームディレクトリの所有者をrootにする
# chown root:root /home/hoge
# chmod 755 /home/hoge

ディレクトリ作成とパーミッション変更
# mkdir /home/hoge/public_html
# chmod 777 /home/hoge/public_html

バーチャルホスト

ドメインごとにconfファイルを作成します。以下はhoge.com用です。

# vi /etc/httpd/conf.d/hoge.conf

<VirtualHost *:80>
ServerAdmin webmaster@hoge.com
DocumentRoot /home/hoge/public_html
ServerName hoge.com
ServerAlias www.hoge.com
ErrorLog logs/hoge.com-error_log
CustomLog logs/hoge.com-access_log common
</VirtualHost>

公開前にサイトを確認できるようにします。ユーザー名がhogeの場合、こんなチルダ付のURLで見れるようになります。
http://www????.sakura.ne.jp/~hoge/

# vi /etc/httpd/conf.d/userdir.conf

コメントアウト
#UserDir disabled

有効化
UserDir public_html

Allにする
AllowOverride All

必要なものだけ
Options IncludesNoExec ExecCGI FollowSymLinks

SSL

OpenSSLは既に入っているので、mod_sslをインストールします。

# dnf --enablerepo=remi install mod_ssl

証明書は無料のLet’s Encryptを使います。

インストール
# dnf install certbot

ドメイン追加
# certbot certonly --webroot -w /home/hoge/public_html -d hoge.com

バッチで証明書を自動更新します。

# crontab -e

00 04 01,15 * * certbot renew --post-hook "systemctl restart httpd"

SSLサーバの設定はドメインの設定ファイルに追加します。

vi /etc/httpd/conf.d/hoge.conf

<virtualHost *:443>
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/hoge.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/hoge.com/privkey.pem
SSLCACertificateFile /etc/letsencrypt/live/hoge.com/chain.pem
ServerAdmin webmaster@hoge.com
DocumentRoot /home/hoge/public_html
ServerName hoge.com
ErrorLog logs/hoge.com-error_log
CustomLog logs/hoge.com-access_log common
</VirtualHost>

設定できたら再起動。

# systemctl restart httpd

MySQL

以前はMariaDBを使ってたけど、色々あってMySQLに戻ってきました。

# dnf install mysql mysql-server

起動

# systemctl enable mysqld
# systemctl start mysqld

初期設定

# mysql_secure_installation
出てくる質問は以下の通り(英語)。
・パスワード検証ポリシー:0
・rootのパスワード:
・rootのパスワード確認用:
・いいですか?:y
・匿名ユーザの削除:y
・リモートからrootユーザ接続禁止:y
・テスト用データベースの削除:y
・変更を有効にする:y

デフォルト文字コードはutf8mb4だったので、そのままにしておきます。

終わったら再起動。

# systemctl restart mysqld

PHP

PHP7.4とそれに関係するものをインストール。

# dnf module install php:remi-7.4
# dnf install --enablerepo=remi php-devel php-mysqlnd php-pear php-mbstring php-pdo php-gd

各種設定。

# vi /etc/php.ini

post_max_size = 128M
upload_max_filesize = 128M
date.timezone = "Asia/Tokyo"
display_errors = On

変更を反映。
# systemctl restart php-fpm

phpMyAdmin

せっかくなのでMySQLの管理ページを入れる。

# dnf install --enablerepo=remi phpmyadmin

ここにもアクセス制限。

vi /etc/httpd/conf.d/phpMyAdmin.conf

<Directory /usr/share/phpMyAdmin/>
の中の
Require local

Require host .jp
などに変更

メールサーバ

Postfix(送信)の設定。

# dnf install postfix cyrus-sasl cyrus-sasl-md5 cyrus-sasl-plain

# vi /etc/postfix/main.cf
以下のように修正
myhostname = www????.sakura.ne.jp
mydomain = www????.sakura.ne.jp
myorigin = $mydomain
inet_interfaces = all
#inet_interfaces = localhost
inet_protocols = ipv4
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
home_mailbox = Maildir/
smtpd_banner = $myhostname ESMTP unknown

以下を追加(スパム対策)
disable_vrfy_command = yes
smtpd_helo_required = yes

以下を追加(バーチャルドメイン用)
virtual_alias_maps = hash:/etc/postfix/virtual

以下を追加(SMTP-Auth用)
smtpd_sasl_auth_enable = yes
smtpd_sasl_type = cyrus
smtpd_sasl_path = smtpd
smtpd_sasl_local_domain = $myhostname
smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination
smtpd_relay_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination

以下を追加(メールへの添付可能サイズを無制限にする)
message_size_limit = 0
mailbox_size_limit = 0

メール送信時にサブミッションポート(587)を使用します。

# vi /etc/postfix/master.cf

以下の行のコメントアウトを外す
submission inet n - n - - smtpd
-o smtpd_sasl_auth_enable=yes
-o smtpd_relay_restrictions=permit_sasl_authenticated,reject
-o milter_macro_daemon_name=ORIGINATING

再起動。

# systemctl restart postfix
# systemctl enable postfix

SMTP認証のためにSaslauthdを使用します。アプリと認証処理を分離してくれるものらしい。

# vi /etc/sysconfig/saslauthd

Linuxユーザのパスワード(/etc/shadow)を使う
MECH=shadow

起動します。

# systemctl enable saslauthd
# systemctl start saslauthd

Dovecot(受信)の設定。

dnf install dovecot

# vi /etc/dovecot/conf.d/10-mail.conf
以下の行のコメントアウトを外す
mail_location = maildir:~/Maildir
# vi /etc/dovecot/dovecot.conf
protocols = imap pop3 lmtp
listen = *
# vi /etc/dovecot/conf.d/10-auth.conf
パスワードを平文にする
disable_plaintext_auth = no
# vi /etc/dovecot/conf.d/10-ssl.conf
SSL接続しない
ssl = no

Dovecotを起動します。

# systemctl enable dovecot
# systemctl start dovecot

useradd時にメールボックス用のディレクトリを自動で作成されるようにします。

# mkdir -p /etc/skel/Maildir/{new,cur,tmp}
# chmod -R 700 /etc/skel/Maildir/

/home/hoge-info/Maildir/new/
/home/hoge-info/Maildir/cur/
/home/hoge-info/Maildir/tmp/

メールアドレス作成

メールアカウント用のユーザをシェルログイン不可で作成します。

# useradd -s /sbin/nologin hoge-info
# passwd hoge-info

メールアドレスとその振り分け処理を作成します。ドメインごとにanythingの行を入れないとメールが使用できません。

# vi /etc/postfix/virtual

hoge.com         anything
info@hoge.com hoge-info
web@hoge.com hoge-web

振り分けを反映させます。

# postmap /etc/postfix/virtual

まとめ

CentOS7からちょこちょこ変更が入ってるね。

追記
まさか移行1ヶ月でCentOS終了してしまうとは… 次はRocky Linuxかなあ。

液晶ディスプレイDELL S2721DGF購入!

DELLの液晶ディスプレイS2721DGFを買いました。

これまで使っていたのはU2412Mという7年前に買った24インチです。特に性能に問題はなかったんですが、大きめのディスプレイが欲しくなったので。

いわゆるゲーミングモニターですが、IPSなので普段使いもできます。

4Kと迷ったけど、27インチ4Kでは拡大しないと小さすぎるだろうと思い、QHDにしました。

スペック

サイズ:27インチ
パネルタイプ:Fast IPS
解像度:QHD(2560×1440)
リフレッシュレート:165Hz
応答時間:1ms
その他:DisplayHDR 400

感想

液晶綺麗だね。画面が鮮やかになった気がする。そのうちHDR対応したものも見てみよう。

ピクセル数比較で画面が1.6倍広くなりました。そんなに変わらないかなと思ったけど、実際に見ると結構広くて驚く。

24インチから27インチに変わったけど、サイズ的には横幅が5cm広がったくらいかな。まあ3インチだし、ベゼルも細くなったしね。文字サイズはそのままで問題なかった。

リフレッシュレートは驚異の165Hz! なんだけど、あんまり変わった気がしない。ちゃんと設定変更してるんだけどな。後でゲーム試してみよう。

まとめ

最近、画面が狭く感じていたので、このディスプレイを使えば捗りそうです。

Rakuten Mini 1円+1年間通信料無料で新規契約!

楽天モバイルでRakuten UN-LIMITプランを新規申し込みで1年間無料、そしてAndroidスマホRakuten Miniを1円で買えるというキャンペーンやっていたので早速申し込みました。

画像は単3電池と並べたもの。手のひらサイズです。

料金

もともとの定価と、今回購入した際の金額を表にしてみました。
以下、税込金額。

定価実際の額
基本使用料3,278円x12ヶ月=39,336円0円
端末代21,800円1円
事務手数料3,300円3,300円
事務手数料還元0円-3,300円
Rakuten Link利用還元0円-3,000円
A8セルフバック0円-2,000円
合計60,860円-4,999円

無料はおろか逆に4,999円もお金がもらえました(楽天ポイント含む)。
そして定価との差額では合計65,859円もお得でした。

もの凄いバラマキですw

Rakuten Mini使用感

画像は左がRakuten Mini(3.6インチ)、右がSH-03J(5.3インチ)です。

小さいので押しづらいかと思いましたが、とりあえず大丈夫そう。それより環境構築しないと使いづらいね。

バッテリーの減りは早い気がする。初期設定とアップデートしただけで20%くらい減った。これは仕方ないか。

充電がUSB3.0なのが良いです。他の端末とケーブルが共有化できる。

もしかして、壁紙変更できない…? 背景色も白か黒しか選べないし。どんな仕様だ。

まとめ

まだ家の中でしか触っていないので、電波の具合とかは不明です。とりあえずサブ端末としてちまちま使っていきます。