ftpaccessを編集するスクリプトを書いてみた

wu-ftpd の passive address の待ちうけの IP の部分どうすればいいかわかんないので
てきとーにチェック用スクリプトを書いてみた。
自宅サーバの宿命として、グローバルIPってたまに変わるんだもん。


シェルスクリプトで書こうかとおもったけど
python で。とは言ってもpythonの作法は、まだよくわかんない。

とりあえず、いつも通りやっつけです。
xxxx.com が自分のドメイン名。

#!/usr/bin/python
# coding: UTF-8

import re
import socket
import sys

f = open('/etc/ftpd/ftpaccess', 'r')
lines = f.readlines()
f.close()

for i in range(len(lines)):
    m = re.match('passive address', lines[i])
    if m:
        hostaddress = socket.gethostbyname('xxxx.com')
        h = re.search(hostaddress, lines[i])
        if not h:
            lines[i] = 'passive address ' + hostaddress + ' 0.0.0.0/0\n'
            f = open('/etc/ftpd/ftpaccess', 'w')
            f.writelines(lines)
            f.close()
            sys.exit()

これを、cronで10分に一回くらい走らせればいいんじゃないかと思う。
読み込みするだけだし。
しかし設定ファイルをスクリプトで編集するのはどうかとも思う。