CentOS 7.x で Let’s Encrypt の SSL 証明書を更新するのは、
# certbot renew --post-hook "systemctl reload httpd"
AWS・Linux・Apache・qmail・レンタルサーバ・クラウド・HTML・CSS
ちょっと MediaWiki を Amazon EC2 Linux 2 でも動かしてみました。
そしたら
Can't contact the database server: Access denied for user 'wikiuser'@'localhost' (using password: NO) (localhost))
ググってみたところ、どうも mysql がパスワードを保存するのに昔のハッシュと新しいタイプのハッシュが混じっていて、それでエラーを出すっぽい。
そういうわけで、パスワードを以下の通り変更しました。
alter user wikiuser@localhost identified with mysql_native_password by 'mymediawikipassword';
そしたら無事に Wiki が表示されるようになりました。
Amazon EC2 に新規ユーザを作って、そのアカウントで ssh ログインする方法がわかりました。
# まる一日かかった…
“Amazon EC2 に新規ユーザで ssh ログインする方法” の続きを読む
遅ればせながら Amazon AWS 使ってみました。
Amazon EC2 インスタンスを作成して、Apache2.4 インストールして、既存のホームページをとりあえずアップロードしました。
ブラウザで表示すると、ちょっともたつくかな?て感じで、Google Analytics の PageSpeed Insights で速度を計測してみました。
“Amazon AWS は銀の弾丸ではなかった” の続きを読む
CentOS 7 では yum install qmail-src ができないのね。当たり前か。もう qmail は使わないのね。
Postfix に移行しようかと思ったけど、とりあえず
のなら、もう少し qmail で頑張ってみようかと思ってやってみました。
# mkdir /var/qmail # groupadd nofiles # useradd -g nofiles -d /var/qmail/alias -s /sbin/nologin -M alias # useradd -g nofiles -d /var/qmail -s /sbin/nologin -M qmaild # useradd -g nofiles -d /var/qmail -s /sbin/nologin -M qmaill # useradd -g nofiles -d /var/qmail -s /sbin/nologin -M qmailp # groupadd qmail # useradd -g qmail -d /var/qmail -s /sbin/nologin -M qmailq # useradd -g qmail -d /var/qmail -s /sbin/nologin -M qmailr # useradd -g qmail -d /var/qmail -s /sbin/nologin -M qmails
# wget http://cr.yp.to/software/qmail-1.03.tar.gz # wget http://www.raj-corp.com/qmail-smtpd-auth-0.31.tar.gz # wget http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz # wget http://www.raj-corp.com/qmail-smtpd-relay-reject # wget http://qmail.org/moni.csi.hu/pub/glibc-2.3.1/qmail-1.03.errno.patch # wget http://www.ckdhr.com/ckd/qmail-103.patch # wgetできなかったので、ウェブブラウザで開いて、サーバにアップ。http://www.ksknet.net/sample/qmail-date-localtime.patch # tar zxvf qmail-1.03.tar.gz # tar zxvf qmail-smtpd-auth-0.31.tar.gz # mv qmail-date-localtime.patch qmail-1.03 # mv qmail-smtpd-relay-reject qmail-1.03 # mv qmail-smtpd-auth-0.31/* qmail-1.03 # mv qmail-103.patch qmail-1.03
ここで、GMO ALTUS の CentOS 7.3 には gcc と patch が入っていなかったので、泥縄的にインストール。
# yum install patch # yum install gcc
# patch < qmail-date-localtime.patch # patch < qmail-smtpd-relay-reject # patch < auth.patch # patch < qmail-103.patch # vi error.h extern int errno; ↓ #include<errno.h> # make setup check
通ったー!
# cd /var/qmail/control # echo somehost.pocolog.net > me # echo somehost.pocolog.net > locals # echo somehost.pocolog.net > rcpthosts # echo pocolog.net > defaultdomain # echo somehost.pocolog.net > plusdomain # cd ../alias # echo foo@example.net > .qmail-postmaster # echo foo@example.net > .qmail-mailer-daemon # echo foo@example.net > .qmail-root
(取っておいた)起動スクリプトのサンプルを使って起動確認。
# cd /(ソースをダウンロードしたパス)/qmail-1.03 # cp home /var/qmail/rc # bash /var/qmail/rc & # ps -ef | grep qmail
qmail 関係のプロセスが動いていたらOK。確認が終わったら qmail-send を kill しておく。
で、ここで気付いた。メールサーバの疎通確認には tcpserver(と daemontools)のインストールが必要と。
というわけで、次回は tcpserver & daemontools のインストールと設定。
(追記)
# ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail # ln -s /var/qmail/bin/sendmail /usr/lib/sendmail
とりあえず tcpserver はインストールする。daemontools を使うほどではないかと思ったけど、CentOS では今までのように /etc/rc.d/init.d を書けばいいということではないみたい。
というわけで、消去法で daemontools を稼働させることにした。
# cd /home/hoge/qmail # wget http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz # tar xfz ucspi-tcp-0.88.tar.gz # cd ucspi-tcp-0.88 # vi error.h extern int errno; ↓ #include に変更 #make setup check
# cd /home/hoge/daemontools # wget http://cr.yp.to/daemontools/daemontools-0.76.tar.gz # mkdir -p /package # chmod 1755 /package # cd /package/ # tar xfz /usr/local/src/daemontools-0.76.tar.gz # cd /package/admin/daemontools-0.76/ # vi /package/admin/daemontools-0.76/src/error.h --- extern int errno; ↓ #include <errno.h> # package/install
インストールできた!
# vi /etc/systemd/system/daemontools.service [Unit] Description=daemontools Start supervise After=getty.target [Service] Type=simple User=root Group=root Restart=always ExecStart=/command/svscanboot /dev/ttyS0 TimeoutSec=0 [Install] WantedBy=multi-user.target
# systemctl enable daemontools # systemctl start daemontools
qmail と tcpserver の実行設定を daemontools 流に書く。
/var/supervise 配下に設定ファイルを書いて、/service 配下で動かすことにした。
# mkdir /var/supervise # mkdir /var/supervise/qmail # mkdir /var/supervise/smtpd
qmail の run ファイル
# vi /var/supervise/qmail/run #!/bin/sh exec env - PATH="/var/qmail/bin:$PATH" \ qmail-start ./Maildir/ splogger qmail
サービスディレクトリにシンボリックリンクを張る。
# ln -s /var/supervise/qmail /service/qmail
# svstat /service/*
でサービスが起動していることをチェック。
tcpserver の run ファイル
vi /var/supervise/smtpd/run #!/bin/sh exec env - PATH="/var/qmail/bin:/sbin:/bin:/usr/sbin:/usr/bin: \ /usr/local/sbin:/usr/local/bin" \ /usr/local/bin/tcpserver -v -x /etc/tcp.smtp.cdb \ -R -H -l0 -u (qmaildのUID) -g (nofilesのGID) 0 smtp \ /var/qmail/bin/qmail-smtpd 2>&1
同じく
# svstat /service/*
で smtpd が起動していることをチェック。
おっと、その前に tcp.smtp.cdb を作成。
# vi /etc/tcp.smtp 127.:allow,RELAYCLIENT="" # /usr/local/bon/tcprules /etc/tcp.smtp.cdb /etc.tcp.smtp.tmp < /etc/tcp.smtp
これで動くはず。
(追記)
# firewall-cmd --add-service=smtp success # firewall-cmd --add-service=smtp --permanent success # firewall-cmd --list-services dhcpv6-client http ssh smtp
を忘れずに。
GMOクラウドALTUSでhttpsサーバを立ち上げる道のりです。
目標は
です。
まずは、GMOクラウドの会員ページ→コンソールで新しい仮想サーバを作成。
OSはCentOS 7.3 LAMP 64bit
構成はミニサーバ
ディスクはなし
最後にrootパスワードが表示されるので、それをメモ。
同じくネットワークメニューから新規グローバルIPアドレスを付与。
コンソールのコンソールからrootでログインして初期パスワードを変更。
同時に、作業用の一般ユーザをuseraddで作成。
TeraTermよりsshログイン。
netstat -anとps auxで起動サービスを確認。
ApacheとSSHDが立ち上がっている模様。
ポートは空いているけど、メールサーバは立ち上がっていない模様。
ウェブブラウザでhttpアクセスして、サーバにつながって、Apacheの初期ページが表示されることを確認。
あ、お名前.comで新しいホストのAレコードも設定。
それで今日は時間切れ。