綾小路龍之介の素人思考

汎用ファイル編集プログラムを共有サーバで走らせることは白?黒?

共有サーバ管理者がファイル編集や仮想シェル機能を僕らに供給している。telnet.cgiを設置することを禁止しているサーバ管理者もいる。そんな管理者でも、上のようなファイル編集プログラムを提供している。これらを踏まえて僕らが自分でこれらの機能を自分のサーバスペースに設置することは許可されるのか。

管理者のしたことは、管理者の作ったtelnet.cgiの供給に他ならないと思う。つまり管理人が認めたファイル編集動作のみを行うプログラムだ。perlで書かれたcgiが実際の無料共有サーバで許可されていることを考えると、僕らが自分達のサーバスペースに設置できるのはperlで書かれたcgiである。実際にperl単体でもパーミッションの変更、ファイルの移動、編集をになうプログラムは書くことができる。それだけでなく、外部サーバと通信するプログラムだってかける(通信機能はサーバ管理者によって使えないようにされていることのほうが多い)。重要なのは、perlプログラムが万能でも管理者がperl自体の機能を制限することでプログラムの機能を制限できてしまうという点だ。

共有サーバのユーザーは当然管理人の認めた環境のもとでプログラムを動かさねばならない。だから、高負荷なプログラム、例えば1兆回のループや1秒間にクライアントと100回通信するようなプログラム、でなければどんなものも設置可能だと思う。つまり、ディレクトリの内容を表示するだけのlsコマンドをエミュレートするcgiプログラムを禁止する理由はどこにもないはずである。cgiがどのような権限で走らされるのかは管理者が決めることである。もし、ls /とかの入力に対してルートの内容を表示させられたくなければ、管理者はそれ相応の対処方法を知っていてしかるべきである。

サーバ管理者はユーザの挙動を管理して自分のサーバが破壊されないように守ることが仕事である。ゆえに、言うことを聞かないユーザーをアカウント停止処分も仕事の内だ。ただしこれが管理者のスキル不足によるものであったとしたら、なんともお粗末なものである。高負荷やセキュリティハックの危険性を未然に防げないことは、管理者の責任でもある。僕は一般に管理者はskillfulな人間だと思っているし、そうであってもらいたい。僕らは管理の下で許可されていることなら何でもやりたいと思っている。それが管理者の逆鱗に触れてアカウント停止にされるのならばそれも致し方ない。ただ、管理者はアカウント停止の強硬手段をとる前に甘い設定を見直すべきだったのではないだろうか。

ソーシャルブックマーク

  1. はてなブックマーク
  2. Google Bookmarks
  3. del.icio.us

ChangeLog

  1. Posted: 2008-05-20T10:12:07+09:00
  2. Modified: 2008-05-20T06:03:01+09:00
  3. Generated: 2017-11-14T23:09:32+09:00