ユーザ名・ホスト名に「-」が入っている場合のqmailの設定方法

バッドノウハウです。

ユーザ名に「-」が入っている場合

例えば、「foo-bar」というUNIXアカウントがあって、「foo-bar@example.com」宛にメールがあった場合、foo-barのホームディレクトリにある.qmailファイルに従って処理されると思いがちですが、違うんです。
qmailでは、「アカウント名-hoge」という拡張メールアドレスがあります。(拡張メールアドレスの詳しい解説)
メールログを見ると、

Jan 23 20:30:29 alpha qmail: 1485171029.781322 
starting delivery 158: msg 659726 to local foo-bar@example.com Jan 23 20:30:29 alpha qmail: 1485171029.781344 status: local 1/10 remote 0/20
Jan 23 20:30:29 alpha qmail: 1485171029.786233 delivery 158:
failure: Sorry,_no_mailbox_here_by_that_name._(#5.1.1)/
“ユーザ名・ホスト名に「-」が入っている場合のqmailの設定方法” の続きを読む

SFTPでchroot設定をする方法

レンタルサーバの一部スペースを友人に貸すことにして、DNSレコード追加したりuseraddしたりqmailの設定をしたり、色々やってたんだけど、なんと、MacOSのFTPクライアント(サイバーダック)ではGMOクラウドに接続できないと!
で、色々やって「sftpモード」ではつながることがわかって一安心。

と思ってたら、「なんか/(ルート)が見えるんですけど…」と。
それはまずい! 一般ユーザにホームディレクトリ以下しか見れないよう設定しないと!
とか考えながらググってたら、「chroot」を使いましょう、とのこと。

で、それにならってsshdの設定とかをしたんだけど、「Broken Pipe」とかエラーが出てうまくいかない。
で、さらに調べて分かったことは、この2点。

  • sshd_configでchrootする。
  • ユーザのホームディレクトリのオーナーをrootにする。

でした。

“SFTPでchroot設定をする方法” の続きを読む

qmailでバーチャルドメインを利用する方法

qmailでバーチャルドメインを利用する方法は@IT バーチャルドメインにおけるqmailの運用 (2/3)で詳しく解説してあるけど、サンプル例が誤解しやすいのでここにメモを書きます。

バーチャルドメイン宛メールを受け取るユーザーの追加

# useradd -s /bin/false vuser

rcpthostsにメールを受け取るドメイン名を追加する。

/var/qmail/control/rcpthosts

example.net
virtual.example.net #これが追加するドメイン
“qmailでバーチャルドメインを利用する方法” の続きを読む

GMOクラウド NTPサーバのインストール

GMOクラウドでメールサーバの設定をいじっていて、テストメール送ったのにmaillogが更新されない、なんでやねん、て思っていたら、サーバの時計が15分遅れていた。orz
NTPDが入っていないサーバがあったなんて…。

という訳でNTPDをインストールしました。
やり方は、ググればいくらでも出てきて、そのまま参考になるサイトばかりです。
例えば、

とか。

“GMOクラウド NTPサーバのインストール” の続きを読む

.NETでメール本文から各要素を正規表現で抜くのにハマってしまった

.NETでプログラム作っています。
メールを受信して、FromやSubjectなどを正規表現でマッチさせます。 末尾を指定するのがPerlやPHPと違っていて少々ハマってしまいました。 ググったところによると、末尾には改行コードが入って、「\r?$」になるとのことでした。 つまり、件名を取り出すには

^Subject: (.*)$

じゃなくて

^Subject: (.*)\r?$

同様に、

^From: (.*)\r?$
^To: (.*)\r?$
^Date: (.*)\r?$

メール本文は、これが難しい。 「空行に続いて、ピリオド一つだけの行まで」だから、「^$^(.+)^\.$」かと思ったら、

\r?\n\r?\n(.+)\r?\n\.\r?\n"

だった。 変態的ですね。

GMOクラウドとさくらのVPSを比較してみました

GMOクラウド ALTUS(アルタス)を2週間使ってみました。
それまで使っていたさくらのVPSと比較してみます。

 GMOクラウドALTUS BasicさくらのVPS
最小構成の価格¥500 (CPU 1コア・メモリ512MB・HDD20GB)¥635 (CPU 1コア・メモリ512MB・HDD20GB)
ビジネスで使える
余裕のある構成の価格
¥2,300 (CPU 2コア・メモリ1GB・HDD20GB)¥900 (CPU 2コア・メモリ1GB・HDD30GB)
“GMOクラウドとさくらのVPSを比較してみました” の続きを読む

GMOクラウド、CPUとメモリの増設

GMOクラウド ALTUS(アルタス)、Apacheの設定変更とWordPressのプラグイン追加でそこそこ速くなって満足していたんだけど、Kaeriyama Worksの応答速度が3秒程度、あとWordPressの編集画面が遅いので、もっと速くできないか考えてみる。

Kaeriyama Worksと同程度のボリュームの静的ページがロスなく表示されることから、遅い原因はメモリやネットワーク速度でない、CPU速度だと決めつけて、GMOクラウドでCPUを2つにすることに決定。

サポートページをいろいろ調べたのにGMOクラウド ALTUS(アルタス)のCPU追加方法が見つからなくて、サポートに連絡。やっとわかりました。

“GMOクラウド、CPUとメモリの増設” の続きを読む

GMOクラウド、WordPressの高速化

GMOクラウド ALTUS(アルタス)の最小構成ではPHP, Perlの実行がやや遅いので、ネットで調べてWordPressの高速化。

mod_deflateでファイルを圧縮

Apacheのサイトを見ながらファイルを圧縮。httpd.confを編集。

<Directory "/home/foo/www/wordpress">
# Insert filter
SetOutputFilter DEFLATE
# Netscape 4.x has some problems...
BrowserMatch ^Mozilla/4 gzip-only-text/html
# Netscape 4.06-4.08 have some more problems
BrowserMatch ^Mozilla/4\.0[678] no-gzip
# MSIE masquerades as Netscape, but it is fine
# BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
# Don't compress images
SetEnvIfNoCase Request_URI \
\.(?:gif|jpe?g|png)$ no-gzip dont-vary
# Make sure proxies don't deliver the wrong content
Header append Vary User-Agent env=!dont-vary
</Directory>

WP Super Cacheの追加

WP Super Cacheを追加。
最初、エラーが出て設定できなかったけど、wp-config.phpのパーミッションを757にしたら設定できた。

これで、PageSpeed Insightsのスコアが69から84へと急上昇。
満足の結果です。

GMOクラウド、OSテンプレートのインストール

GMOクラウド ALTUS(アルタス)、あまり情報がなく、クラウド固有の問題などがあって、10往復以上サポートとメールを交換しました。
# 「root権限を渡しているSelfManagedサーバだから」と、
# 全く相談に乗ってくれないさくらのVPSよりよっぽどましですが。

別のOSテンプレートのインストール

最初、PLESK入りのOSテンプレートをインストールしたのですが、PLESKが有料だと後で知って、PLESKなしのをインストールしました。

ここで問題が。
GMOクラウドALTUSポータル>コンソール>Basicシリーズコンソールログイン>仮想サーバー>初期化対象の仮想サーバー名>画面右上の「再インストール」
では今までと同じOSテンプレートしか再インストールできません。
別途希望のOSテンプレートで仮想サーバを構築した後、古いのを削除する形になります。

グローバルIPアドレスの割り当て

OS再インストールするとグローバルIPアドレスの割り当てをしなければいけません。
最初、サーバに接続できなくなりかなりあせりました。
割り当ての仕方はサポートページを参照ください。