10.6サーバ(Snow Leopard Server)のシリアル番号を調べる必要がでてきた。リモートで調べられるはずと思ってコマンドをさがしたら、あった。
/System/Library/serversetup に行って
$ sudo ./serverserialnumberutil -get
で、もちろんadminのパスワードを入れると
XSVR-106-000-X-XXX-XXX-XXX-XXX-XXX-XXX-X|A.Bcde|
最後の |A.Bcde| はインストールしたときのadmin の名前かな?忘れた。
と返ってくる。忘れないためのメモだ。
ちなみに10.8サーバにはシリアル番号がない。
「サイト管理」カテゴリーアーカイブ
Honeypot
知らなかった。ネットワークでトラブルがあって、どうやらDHCPサーバを立てた奴がいるのではと調べた。そのトラブルは原因が判明しないうちに、再現しなくなり結局はわからなくなった。その原因を探る過程で、該当するルータと思われるip address にアクセスしてみたら、Linux のApacheのデフォルトのページが出てくる。だれかルータ機能を持ったサーバを立てているのでは?と思ったが、実はちがっていた。いい加減なprivate ip address、http://192.168.*.*でアクセスしても同じページが表示される。これはハニーポットを仕掛けているからということが判明した。そんなことは何年もサブネットを管理していたが知らなかったぞ。もちろんサブネット内ではなく上流の管理者がやっていることだ。あえて、知らせることじゃないからな。ちと、春休みになって時間があるし、トラブルはなくなったので、結果として勉強させてもらった。ウイルスでも集めているんだろうか?

jQuery Colorbox
ブログの投稿に絵を貼付けた場合、オリジナルの絵がブログの枠をはみ出てしまうような大きな絵だと、サイドバーとかに重なったりして見苦しい。そこで縮小して表示するのが普通だ。しかし、オリジナルのサイズで表示もしたい。別ページに開くということもできるが、それより同じページで表示するのが今や普通だ。
Lightbox2 というプラグインがある。これまでこのプラグインを使っていた。しかし。すでに開発を停止していて、Wordpressのバージョンを上げるとうまく動作しない。そこで見つけたのが jQuery Colorboxというプラグインだ。
Lightbox2とちがってheader.phpやfooter.phpに加筆する必要がないので簡単だ。
設定方法は「jQuery Colorbox」「設定」とかで検索すればあちこちにある。日本語化されたものもある。プラグインを設定してアクティベーションして、はまった。絵をクリックすると、その場で拡大されて表示されるはずなのだが、別のコメント投稿ページが開き、そのページの絵をクリックすると拡大されるのだ。
この原因は、
の風景のアイコンをクリックして表示のリサイズするとき

「画像にリンクを張る」を選択しなかったことにある。通常ではデフォルトでURLが設定されているが、URLがブランクだと動作しない。
「現在のリンク」をクリックしてURLがpermalinkになっていると、別ページ(コメント記入ページ)が開いて、その絵をクリックすると拡大されることになる。したがって「画像にリンクを張る」になっていることを確認する必要がある。
同一投稿内の絵はスライドショーになる。便利なもんだ。オリジナルの絵が大きすぎるとスクロールバーが付く。絵は大きすぎないのがスマートな投稿だな。
iCal と Google Calendarとスマホのカレンダーの同期
とほほ。
これまで使っていたガラ携の液晶画面に斜めの線が入って、液晶画面が壊れてきたので、昨年末にスマホにとりかえたんだよね。
スマホは小さなパソコンなので、最初からいろいろなアプリがあってどれがなんだかまだ把握していない。
スケジュールをスマホで確認するのが当然なので、その設定をやっていたんだよね。これまではMacのiCalとGoogle Calendar を同期させていたわけだ。一昔前、Googleがサービスを始める前は、このサーバの先代のサーバでphpCalendarを動かしていたんだけど。
で、みごとに操作に失敗して、これまでのデータを全部吹っ飛ばしてしまった。Googleを中心にしていたのでGoogleのデータがなくなったら、自動的にMacのiCalのデータもぶっ飛んだ。MacのiCalのデータはバックアップがあるんだけど、iCalのキャッシュをバックアップから元に戻しても、一瞬のうちにGoogleと同期してデータがなくなっちゃう。そういう設定だからしょうがない。というわけで、バックアップのキャッシュから元に戻すのを考える前に、新しくスケジュールを入力することにした。たいしたことないからね。年度末が近いから、大学の25年度のスケジュールは入力していなかったし。繰り返しの会議、授業、実習だけだし、直近のスケジュールはたいした量でないからだ。
どじだったな。それにしてもスマホにはdefaultでメールシステムが複数あるし、スケジュール表も複数あるし、管理者のような じじい には難しいよ。
マニュアルを読まない(どこに有るか知らないし、あっても用語がよくわからん)から試行錯誤でやると、こういう破目になるのさ。
結局 Google Calendar が中心で、MacのiCalとスマホのカレンダーが従うことになった。んで、スマホから入力してMacからキャンセルして…等ができることを確認した。くれぐれも、スマホですべての予定を消去しないこと。スマホの予定を消去して改めてGoogleからダウンロードすればいいと思ったのが大きな間違えだった。
過去のスケジュールは一応 iCalのバックアップをとって置いた。他のMacでネットに繋げないでiCalで開けば読めるだろう。
というのも、かつて、茨城県警の捜査一課の刑事が自宅に着て、アリバイを聞かれたことがあったからね。そのときも、iCalでスケジュールを見て、答えたのさ。iCalでスケジュールを登録してなかったら、何ヶ月も前に何をしていたか憶えているわけがない。TVドラマじゃあるまいし。しかし、あの事件はなんだったんだろうか。事件そのものを教えてくれないのでわからないのだ。
結局、手帳のほうがいいかもね。
スマホのメールがようやくわかってきた。
SPメール:ガラ携でつかっていた電話会社に登録したメール
メール:Googleでないほかのサーバのアカウントをつかうメール。サーバ/ユーザ名/パスワードを設定しないといけないのはパソコンのメールと、あたりまえだが同じ。Gmailでも登録できるだろ。
Gmail:Gmailそのもの
メッセージ:電話番号で接続する短文しか送受信できないメール
そんでもって、自動着信するようにしたら、アラームが鳴るんだけど、アラームの音色もそれぞれ変更したんだけど、アラーム音とどのメールが対応しているのか憶えていられない。とほほ。
メールを転送すると文字化けになる。
このサーバではmailman のメーリングリストを使っている。
投稿者がMacでMail.app を使って投稿しても文字化けは無い。しかしメーリングリストから配信されたメールに返事とか転送を行うと、文字化けしてしまう。
Content-Transfer-Encoding: base64
Content-Type: text/plain;
charset=utf-8
となっている。
Mail.appから添付書類があるとなるようだ。返信のボタンを最初クリックすると問題ないが、転送ボタンをクリックすると文字化けし、その後返信ボタンをクリックすると文字化けする。
添付書類がないと同じMail.appから送信されても
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: base64
となって、返信や転送にして文字化けしない。
Content-Type: text/plain;charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
はもちろん問題ない。
さって、Mail.app がUTF-8 を使う(これが正しいのだが)からかThunderbirdで受けているからだろうか、mailmanが処理しきれないからなのだろうか。
メールの伝搬時間
メールが届くまでの時間を測定してみた。WebのGmail を使って4つのアドレスに同時に送信してみた。
mail-lb0-f174.google.com が 38:31 に受け取り送信した。
こっちの医学のサーバは 38:37 6秒 google→こっちの大学のフィルタ→医学のサーバ
あっちの大学のサーバは 39:06 35秒 google→kddi→ irmx08.secure→あっちの大学のサーバ
このサーバは 38:35 −2秒 google→医学のサーバ→このサーバ
自宅のサーバは 38:47 10秒 google→自宅サーバ→自宅サーバ
おかしいな、このサーバmikeの時刻合わせをチェックすると1秒以内の誤差なのにマイナスになっている。どっちにしろ、こっちの大学のサーバは遅い。途中で irmx08.secure.ne.jpとかいうところで30秒かけて何か処理しているようだ。フィルタがあるんだな。自宅のサーバはサーバ内で10秒もかかっている。サーバがとろいからだ。使っているのが管理人と家族だけだからな。遅くてもかまわない。
OSX10.8サーバーその27 SMTP
Mの更新(Mountain Lion OSX10.8サーバ) その27-SMTP
SMTPサーバとしての設定
以前のOSXサーバでは、SMTPサーバとして利用の制限が、例えばip address で行うとかができたと思うが、今度のは設定するところがない。
Server.app のメールで認証のところしかない。自動とはなんだろ?すでにメールサーバとして動いているので設定を現状から変えたくない。
とりあえず、RBL.JPで第三者の中継チェックを行うとno relays accepted.となるのでいいんだろ。
スマホからのCGIアクセス
解剖学と生理学の国試問題を毎週、学生の携帯に送付し、正解と解説のページを作っているのだ。
約1年経過したので学生の反応を見るためアンケートのページを作成したのだ。
URLが長過ぎる
http://example.com/hoge/cgi-bin/anketo/anketo.cgi
なのだが、こんなに長いと学生はスマホから入力しない。
example.com に相当する部分は管理者のサーバではもっと長いのだが、これは短くできない。しかしそれ以下はaliasで短くできる。
そこで
http://example.com/anketo
でもいいようにしたわけだ。
Alias /anketo /Users/hoge/Sites/cgi-bin/anketo/anketo.cgi
の1行を/private/etc/apache2/extra/httpd-userdir.confに書き加えたわけだ。
これでパソコンのブラウザからは問題ないのだが、スマホからだとこのCGIプログラムで別ページを表示するようなときうまくいかない。
パソコンのブラウザだとhttp://example.com/anketo/anketo.cgiにアクセスするようになり問題ない。スマホだと
http://example.com/anketo.cgi にアクセスすることになってしまい、そんなページがないと表示されてしまう。なぜだ?
ともかくもう1行aliasを書き加えてなんとか逃げた。
Alias /anketo.cgi /Users/hoge/Sites/cgi-bin/anketo/anketo.cgi
だ。ま。最初のaliasをこれにすればいいんだけどね。
OSX10.8サーバ その26 CGIのパス
Mの更新(Mountain Lion OSX10.8サーバ) その26ーCGIのパス
#!/usr/local/bin/perlでパスを通す
フリーのCGIプログラムのperlの指定はしばしば #!/usr/local/bin/perl となっている。
このサーバのperlは #!/usr/bin/perl だ。 そこでシンボリックリンクでどっちでもかまわないようにした。
/usr/bin に
-rwxr-xr-x 1 root wheel 62992 Aug 15 15:26 perl
-rwxr-xr-x 1 root wheel 35584 Aug 15 15:33 perl5.10
-rwxr-xr-x 1 root wheel 35888 Aug 15 15:26 perl5.12
があるので /usr/local で sh-3.2# mkdir bin としてbinというdiectory を作り /usr/local/bin で
sh-3.2# ln -s /usr/bin/perl /usr/local/bin
sh-3.2# ln -s /usr/bin/perl5.10 /usr/local/bin
sh-3.2# ln -s /usr/bin/perl5.12 /usr/local/bin
と3つのシンボリックリンクを作成した。
/usr/local/bin に
lrwxr-xr-x 1 root wheel 13 Jan 28 11:08 perl -> /usr/bin/perl
lrwxr-xr-x 1 root wheel 17 Jan 28 11:09 perl5.10 -> /usr/bin/perl5.10
lrwxr-xr-x 1 root wheel 17 Jan 28 11:09 perl5.12 -> /usr/bin/perl5.12
の3つのシンボリックリンクがあることを確認した。
#!/usr/local/bin/perl とCGIプログラムの最初の行にperlのパスを書いても通ることも確認した。
OSX10.8サーバ その25 FTPの設定
Mの更新(Mountain Lion OSX10.8サーバ)ーその25 FTPの設定
まだFTPの設定がよくわかっていない
Server.app からFTPのペインを出す。
共有のプルダウンからカスタムを選び、FTPのルートディレクトリを選択する。Macの場合、共有ポイントと呼ぶ。
/Users
にする。ユーザがFTPを使うのはWebページのdirectoryつまり/Users/[ユーザ名]/Sites/ だからだ。CarbonCopyClonerでHDをまるごとバックアップしているが、くれぐれもバックアップのHDの方を選択しないように。
アクセス権限は、ほかの全員は「読みだしのみ」にする。
クライアントがFTPでアクセスしてくると/Users以下のdirectoryに全部アクセスできちゃう。
ユーザ毎にユーザのhome directoryをroot directoryと指定する方法がまだわからない。
クライアントはFTPソフトでアクセスするとき、root directoryとして/[ユーザ名]/ と指定しするように伝える。上のdirectoryにいけて、他の人のhome directoryがみえちゃうけど。ま、他の人のhome directory にあるdirectoryで他人に見えるのはSitesだけでSitesにあるファイルは基本的にweb公開ページだから、とりあえずはいいだろ。
とりあえず、現在動いているWebページのメインテナンスが必要だからこうしておく。
FTP root directoryを新たにつくり、その中に各ユーザのdirectoryを作り、その中に各ユーザのsitesのエイリアスを置けばばいいのかも。そうすれば、FTPクライアントソフトでのroot directoryの指定を /[ユーザ名]/ あるいは /[ユーザ名]/Sites/ とするように指示すればいい。FTPクライアントソフトで上のdirectoryでアクセスしても他のユーザのSitesしかみえないようになる。
ファイル共有の項目はFTPとは別でAFPとかSMB、WebDAVでのファイル共有のことらしい。
もうちょっと、勉強する必要があるな。
