備忘LOG
Mac・iPhone・Linuxを中心に、自分のメモ+αをちょろちょろと垂れ流してます。

ムームードメインで、WebがさくらVPS、メールがGoogle

2012/05/06(日) 23:59:01

Web上の情報が混乱している件

ムームードメインで、WebがさくらVPS、メールがGoogleApps、という構成にしようとしてWebをあさりつつ設定してたんだけど、Gmailやムームーの変化が激しくて、現状とあってない情報も多かったので纏めておく。

さて最近買ったもののなかで、安くて大ヒットといえばコレ。980円で、Galaxy SIIが、輝度最高、Wi-Fi/Bluetooth入れっぱなし、Google自動同期ONのまま、1日持つようになった。3500mAhはさすがにないと思うが、めんどくさい外部バッテリーなし、ランチ1食分でまあよく持ってくれるようになった。ちまちま設定変えたり、暗い画面に我慢するのが嫌で、厚みが増えることに文句がない人にならばお勧めです。

ただ、裏蓋の付け外しが相当やりにくくなるので、予備バッテリーを入れ替えて使うスタイルの人はこれ絶対に買ってはいけません。

さくらの設定

通常のApacheの設定意外、とくに必要ないです。取り急ぎ確認だけなら

# yum -y install httpd;service httpd start

でOK

GoogleAppsの設定

ドメインを設定し、指示通りにドメイン所有の確認、アカウント作成と進むだけ。ウィザードが非常の細かく丁寧なので、躓きようがないですね。

ムームードメインの設定

AレコードにさくらVPSのIP、MXにGoogleAppsを設定するだけ。Web上ではいろいろ情報が錯綜しているが、何も考えずに以下のように設定をするだけ。(サブドメインやghs.google.comへのCNAMEは適宜行ってください)

「ムームーDNSを利用する」とすれば、NSレコードが dns01.muumuu-domain.com と dns02.muumuu-domain.com に自動的に設定され、コンパネでの設定が利用されるだけなんだけど、なんか複雑なことしてる人が結構いるのはどうしてだろう。

注意する点としては、ムームーのコンパネでドメインを指定するとき、MX のドメイン指定の最後にドットを付けないこと。BINDやったことある人のほうがはまると思う。

確認

あとはDNS浸透を待って、Gmailのドメインの管理...からAppsのコンパネにアクセスし、設定のサービス、メールと進み、MXレコードが設定したGoogleのものになっていればOK。適当なnslookupサービスやdigサービスで検索してみるのもいいだろう。最近は本当にDNS浸透が早く、2〜3時間あれば行き渡るようになった。

  1. Linux|
  2. トラックバック:1|
  3. コメント:0

CentOS5に開発版のGNU screenをインストール

2012/01/28(土) 14:46:14

screenが縦分割できるようになってるらしい

screenのステータス表示をググってたらなんと最近のscreenはspilitで縦分割できるようになってるらしいので、CentOS5.5のサーバに入れてみることにした。

さてSEといえば職業柄座りっぱなし、オフィスに入ってから、メシとトイレとミーティング以外は一切席を立たないということも多いだろう。

職業病にちかいのが便秘。なにせ動かないんだから仕方ない。急性なら薬を飲んでもいいが慢性的なものとなると薬も効かなくなってくる。

そこでコントレックスだ。この水ははっきり言ってとても不味い。水なのに重くてもっちりしている。しかし先日、数年ぶりに飲む機会があり、500mlのペットボトルを飲んでみたところ、以前よりはかなり味も改善されていて、常時飲める程度にはなっていた。

Amazon定期おトク便なら12本セット ¥1,175 で、1.5リットルが100円以下になる。マグネシウムが豊富で、便通が良くなる上、なにせ水なのでいくら飲んでも太らない。しかも改善されたとはいえ美味しくはないので沢山飲めない。なんて良いこと尽くしの飲み物なんでしょう。定期便でなくても \1,237 とほぼ1本100円とリーズナブル

準備

本題。

パッケージがないので基本コンパイルベースになる。ただし、後々管理しやすいようにcheckinstallでrpm化する。
ざっくり、

  1. checkinstallはパッケージがないのでコンパイルインストールする
  2. checkinstallはすぐパッケージにして、上書きインストールする
  3. screen の最新版をとるために gitインストール
  4. gitrpmforgeにパッケージがあったので、rpmforgeのリポジトリをyumにセットアップ
  5. screen の依存するモジュールのうち、m4とAutoconfがCentOSのパッケージではバージョンが古いのでコンパイルでインストール
  6. screenインストールする

って感じになる。

checkinstallのセットアップ

wgetで取ってきてmake & make installするだけ

[hoge@fuga ~]$ wget http://asic-linux.com.mx/~izto/checkinstall/files/source/checkinstall-1.6.2.tar.gz [hoge@fuga ~]$ tar zxvf checkinstall-1.6.2.tar.gz [hoge@fuga ~]$ cd checkinstall-1.6.2 [hoge@fuga checkinstall-1.6.2]$ make [hoge@fuga checkinstall-1.6.2]$ sudo make install

すかさずrpm化して上書きインストールする。checkinstall は make した階層ならオプションなしで起動するだけで、make install対象のをパッケージ化してくれる

[hoge@fuga checkinstall-1.6.2]$ sudo /usr/local/sbin/checkinstall [hoge@fuga checkinstall-1.6.2]$ sudo rpm -i /usr/src/redhat/RPMS/i386/checkinstall-1.6.2-1.i386.rpm

一応確認しとく

[hoge@fuga checkinstall-1.6.2]$ rpm -qa | grep checki checkinstall-1.6.2-1

rpmforgeのセットアップ

dagにパッケージがあるのでつっこむだけ。rpmforgeは必要なときだけにしないと、標準パッケージと同名でバージョンが高いものが山ほどあるので普段は使わないようdisableしておく。

[hoge@fuga ~]$ wget http://dag.wieers.com/packages/rpmforge-release-0.5.2-2.el5.rf.i386.rpm [hoge@fuga ~]$ sudo rpm -Uhv rpmforge-release-0.5.2-2.el5.rf.i386.rpm [hoge@fuga ~]$ sudo vi /etc/yum.repos.d/rpmforge.repo
enabled = 1 ↓ enabled = 0

gitインストール

yumで一撃。このためにrpmforge設定したんだから。

[hoge@fuga ~]$ sudo yum install git --enablerepo=rpmforge

m4インストール

[hoge@fuga ~]$ wget ftp://ftp.gnu.org/gnu/m4/m4-1.4.16.tar.gz [hoge@fuga ~]$ tar xvzf m4-1.4.16.tar.gz [hoge@fuga ~]$ cd m4-1.4.16 [hoge@fuga m4-1.4.16]$ ./configure --prefix=/usr/local/ [hoge@fuga m4-1.4.16]$ make [hoge@fuga m4-1.4.16]$ sudo /usr/local/sbin/checkinstall [hoge@fuga m4-1.4.16]$ sudo rpm -i /usr/src/redhat/RPMS/i386/m4-1.4.16-1.i386.rpm

バージョン確認

[hoge@fuga ~]$ m4 --v m4 (GNU M4) 1.4.16 Copyright (C) 2011 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later . This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Written by Rene' Seindal.

Autoconf インストール

[hoge@fuga ~]$ wget ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.68.tar.gz [hoge@fuga ~]$ tar xvzf autoconf-2.68.tar.gz [hoge@fuga ~]$ cd autoconf-2.68 [hoge@fuga autoconf-2.68]$ ./configure --prefix=/usr/local/ [hoge@fuga autoconf-2.68]$ make [hoge@fuga autoconf-2.68]$ sudo /usr/local/sbin/checkinstall [hoge@fuga autoconf-2.68]$ sudo rpm -i /usr/src/redhat/RPMS/i386/autoconf-2.68-1.i386.rpm

バージョン確認

[hoge@fuga ~]$ autoconf --version autoconf (GNU Autoconf) 2.59 Written by David J. MacKenzie and Akim Demaille. Copyright (C) 2003 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

screen開発版インストール

長かった準備もやっと終わり。本命のscreenインストールする。

[hoge@fuga ~]$ sudo yum remove screen [hoge@fuga ~]$ git clone git://git.savannah.gnu.org/screen.git [hoge@fuga src]$ cd screen/src/ [hoge@fuga src]$ sh autogen.sh [hoge@fuga src]$ ./configure --prefix=/usr/local/ [hoge@fuga src]$ make

コンパイル完了したscreenのバージョンを調べる

[hoge@fuga src]$ ./screen -v Screen version 4.01.00devel (GNU450e8f3) 2-May-06

checkinstallはコンパイルディレクトリからパッケージ名とバージョンを取る。screengit cloneで取ってきているので、パッケージ名とバージョンは引数で指定してやる。(未指定でもパッケージ生成前に対話インターフェースで指定することもできるが面倒なので)

[hoge@fuga src]$ sudo /usr/local/sbin/checkinstall --pkgname=screen --pkgversion=4.01.00dev [hoge@fuga src]$ sudo rpm -i /usr/src/redhat/RPMS/i386/screen-4.01.00dev-1.i386.rpm [hoge@fuga ~]$ screen -v Screen version 4.01.00devel (GNU450e8f3) 2-May-06

以上。お疲れ様

  1. Linux|
  2. トラックバック:0|
  3. コメント:0

連番ファイルの番号を付け替える

2011/11/12(土) 22:53:48
デジカメで連番リセット忘れたとか、自炊で開始番号を間違えてしまったなど。
$ for i in {17..90};do j=`expr $i - 16`;`printf "mv PAGE_%03d.jpg  PAGE_%03d.jpg\n" $i $j`;done
で一撃。
このprintfをバッククォートして命令を連続発行するメリットは、バッククオートなしで存分に発行コマンドを確認したのち、バッククオートを付加するだけで確認済みの命令を実行できること。万全と思われるスクリプトも思わぬ穴がある。この方法なら予期しないリネームを避けられる。
  1. Linux|
  2. トラックバック:0|
  3. コメント:0

MacやWindowsから上げたファイルがついShift_JISだった時の話

2011/10/14(金) 00:37:40
こういうときは本当にUNIX系のCUIは強い。
イディオムだよな。暗記しとけって感じ
$find . -name '*.html' -type f -print0 | xargs -0 nkf --overwrite -w -Lu
Lオプションは改行コード変換。u=unix(LF),w=windows(CR+LF),m=mac(CR)。
  1. Linux|
  2. トラックバック:0|
  3. コメント:0

CentOSでWebデザイナー向けのFTPを設定する

2011/09/21(水) 13:07:29

いい加減FTPは使いたくないんだけど、ドリウィが秘密鍵のSFTPに対応していないので、SSHをパスワード認証にはしたくないので、IP縛りでFTPを空けてあげることにする。アドビさん、早く対応して下さい。

インストール

これはyum一発。-y でやる人が多いようだけど僕は-yしない派です。関連インストールなど確認したいので。

$ sudo yum install vsftpd

IPで縛る

FTPは危険なので、IP縛りを入れる

$ sudo vi /etc/hosts.allow
vsftpd : 127.0.0.1, xxx.xxx.xxx.xxx, ...(列挙)
:wq
$ sudo vi /etc/hosts.deny
vsftpd : ALL
:wq

ポートを空ける

IP制限も本当はiptables付けた方が良いのだが、iptablesは設定ミスで一発退場を喰らうことがあるので、ポートを空けるだけにする。

$ sudo vi /etc/sysconfig/iptables
-A INPUT -p tcp -m state --state NEW -m tcp --dport 20 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT
:wp

設定を読み込む

$ sudo /etc/init.d/iptables reload

vsftpd設定

xinetd経由の起動とし、umaskを007に。ip制限はtcp_wrappersを利用

$ sudo vi /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
local_umask=007
tcp_wrappers=YES
listen=NO
:wp

全員をchrootにし、上位に出られるユーザーをリストで指定する形にする。FTPでそんなユーザは不要なので、touchだけしておく。

$ sudo touch /etc/vsftpd/chroot_list

xinetd起動の設定

xinetd起動用の設定ファイルを用意する

$ sudo vi /etc/xinetd.d/ftpd
service ftp
{
        flags           = REUSE
        socket_type     = stream        
        wait            = no
        user            = root
        server          = /usr/sbin/vsftpd
        server_args     = /etc/vsftpd/vsftpd.conf
        log_on_failure  += USERID
        disable         = no
}
:wq

xinetdの設定をリロードする

$ sudo /etc/init.d/xinetd reload

FTPグループ、ユーザーの作成

ログインさせないので、shellは/sbin/nologin、ホームディレクトリはWebサイトのDocumentRootを設定、apacheグループに入れておく。

$ groupadd ftpusers
$ sudo /usr/sbin/useradd -g ftpusers -G apache hoge -d <DocumemtRoot> -s /sbin/nologin 
useradd: warning: the home directory already exists.
Not copying any file from skel directory into it.
$ sudo passwd hoge
Changing password for user aae.
New UNIX password: <パスワード>
Retype new UNIX password: <パスワード>

ホームディレクトリは既にあるとか、各種スケルトンは持ってこなかったよとか言われるので、はいはいと聞き流す。

apacheをftpのグループに参加させる

この設定と、umask007が効いて、ftpuserグループのファイルは、PHPで読み書きできるようになる。本人とapcaheしか見ないのだから、everyoneにアクセス権を与える必要はない。

$ sudo /usr/sbin/usermod -G ftpusers apache
$ sudo chmod 770 <DocumemtRoot>
  1. 未分類|
  2. トラックバック:0|
  3. コメント:0
次のページ