2ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

オープンソースのサーバー管理ツール

1 :1:2007/02/23(金) 20:19:39 ID:faBVhmtO
PHPで動作するオープンソースのサーバー管理ツールはないのでしょうか。

探してみたけれど見当たりませんでした。

もしPHPで作るとしたら、どのようなものがよいでしょうか。
HDEコントローラーのようにわかりやすくWebminほど複雑でない。自宅サーバー向き

DNSの管理と、ApacheのVirtualHostなどの管理をしたいのです。

がんばってソース書くので、お知恵を拝借できませんか。


2 :nobodyさん:2007/02/23(金) 20:21:53 ID:???
> がんばってソース書くので、お知恵を拝借できませんか。

お知恵がない方が、他人のお知恵を拝借する場合、相応の対価が必要かと
思われます。対価についてご説明お願いします。

3 :1:2007/02/23(金) 20:25:17 ID:faBVhmtO
>2
ソースをすべて公開していきます。
頂いた助言を元にソースを書きます。
自由に使える事では対価にはなりませんか?

4 :nobodyさん:2007/02/23(金) 20:29:41 ID:???
> 自由に使える事では対価にはなりませんか?

自由とは?

5 :nobodyさん:2007/02/23(金) 20:33:38 ID:???
自宅鯖っておい
んなもん手動でやった方がはやいだろw

6 :1:2007/02/23(金) 20:46:25 ID:faBVhmtO
>4
ライセンスはLGPLにするつもりです。

>5
自宅サーバーに限らず、WebProgのテスト環境構築するときに
virtualhost名を指定すると、DNSやHOSTS、httpd.confを簡単に設定できる様なイメージです。
レンタルサーバーの管理画面の様なものでオープンソースのものが見当たらなかったので。
手軽にインストールして使えるようなものを作りたいのですが。

どのような機能から作るべきか迷っています。

7 :nobodyさん:2007/02/23(金) 20:51:31 ID:???
そういわれると、
あればあったで便利そうな気がしてきた。

8 :nobodyさん:2007/02/23(金) 20:54:29 ID:???
> どのような機能から作るべきか迷っています。

1. コンセプトを決める
2. やりたいと思ったことを、大小関係なく箇条書きにする。
3. 箇条書きをいやらしい目で眺めつつ、具体的な項目にしていく。
4. 早漏ティムポよろしくの速さで、一つずつ実装する。

迷うことがあったら、コンセプトに沿って判断する。

9 :nobodyさん:2007/02/23(金) 21:01:33 ID:???
やっぱ、実装力って大切だよな。

10 :nobodyさん:2007/02/23(金) 21:09:54 ID:???
>>6
とりあえず、virtualhost名を指定すると、DNSやHOSTS、httpd.confを簡単に設定できる様なイメージで実装した後に
あったら便利そうな機能を模索したらいいと思うよ。
煽りとかで無く、最初にやりたいと思った機能を作ってれば、ああこれも必要だなぁって機能は自ずと出てくる。
積んだ書類はとりあえず一番上から崩すんだ。

11 :nobodyさん:2007/02/23(金) 21:27:57 ID:???
とりあえずエサまいておくか
webhosting toolkitはPHPで書かれていたはず
http://wht.sourceforge.net/

12 :nobodyさん:2007/02/24(土) 04:21:29 ID:???
またこの手のスレか。
作り方教えて厨うざ

13 :1:2007/02/24(土) 18:36:06 ID:a3WEfWxe
>8-10
ありがとうございます。
コンセプト考えてきました。あと必要なライブラリを調べました

virtual host設定を作るAPPを作ろうと思います

1.PEAR config container apache を使う
2.confはDBに保存する(自動バックアップのため
3.confを反映ボタンを押すと、confを書き出して apache reload
4.DBに保存した設定は、はてなキーワードやwikipediaのように差分が見られる

コンセプト
httpd.conf.20061123 などと日付を入れるのはやめてDBなどで管理する。
virtual hostの設定をしたらDNSやHOSTSファイルの設定も併せて行うオプション。
目的を選んだらサンプル設定が挿入される逆引き機能。

分からなかった点。
メールサーバとBINDの設定named.confを扱うPEARパッケージがありませんでした。
PEAR::Config::Container_ApacheはPHP Lisenceと書いてありました、
これを使ってLGPLのパッケージが作れるのか心配です。

14 :nobodyさん:2007/02/24(土) 19:43:10 ID:???
もう既に何個もあるから良く探せよ
かなり前にもソフトウェアデザインで連載してたし

PHPで作ろうとしてるけどApacheをRootで動かすつもりか?
.confを誰でも書き込めるなら誰でも壊せるなw

bluequartzでも使っとけ


15 :nobodyさん:2007/02/24(土) 19:45:37 ID:???
もう既に何個もあるから良く探せよ
かなり前にもソフトウェアデザインで連載してたし

PHPで作ろうとしてるけどApacheをRootで動かすつもりか?
.confを誰でも書き込めるなら誰でも壊せるなw

bluequartzでも使っとけ

16 :nobodyさん:2007/02/24(土) 19:47:31 ID:???
もう既に何個もあるから良く探せよ
かなり前にもソフトウェアデザインで連載してたし

PHPで作ろうとしてるけどApacheをRootで動かすつもりか?
.confを誰でも書き込めるなら誰でも壊せるなw

bluequartzでも使っとけ

17 :nobodyさん:2007/02/24(土) 21:31:28 ID:Yikpx9Ng
プロプライエタリだけど、cPanelっていうのが海外のホスティングでよく使われてるね。
こんな感じのをオープンソースで作ってくださいw

cPanel - The Leading Control Panel
http://www.cpanel.net/index.html

18 :nobodyさん:2007/02/24(土) 21:36:24 ID:???
またずうずうしいのがきたw

19 :nobodyさん:2007/02/25(日) 02:48:41 ID:???
この板でずうずうしい奴が常駐するスレ一覧

【1】
http://pc10.2ch.net/test/read.cgi/php/1172328149/

【k.k.projects】
http://pc10.2ch.net/test/read.cgi/php/1161784348/

【samulai】
http://pc10.2ch.net/test/read.cgi/php/1162123400/


20 :nobodyさん:2007/02/25(日) 02:53:38 ID:???
つけたし

【口だけおじさん】
http://pc10.2ch.net/test/read.cgi/php/1170317609/

【Mr.へりくつ】
http://pc10.2ch.net/test/read.cgi/php/1171955922/

21 :nobodyさん:2007/02/25(日) 10:14:14 ID:???
bluequartz で探せば見つかるとは思うけど、FreeBSD向けの BlueQuartz として、
RAQdevil があります。
ttp://www.raqdevil.com/


22 :1 ◆T95UOUsyZ6 :2007/02/25(日) 18:36:59 ID:kHDnFOHa
プロバイダが書き込み規制中だったので返答が遅れています。
>17
cPanelというのは始めて知りました。調べてみます。

>18
すいません。>19-20 のスレにならないように頑張ります。


>15

ご指摘ありがとうございます。PHPをRootで動かすのが怖いので、
ApacheのsuExeceを使ったり、access 許可を 192.168.1.0/24を許可するする単純なモノでも回避できそうですね。

ただ、Apache+PHPががファイルを作成するのはパーミッションなどが面倒になりそうなので、

PHPはフロントエンドでDBに保存し、差分を閲覧する機能にするつもりです。
設定変更は、バックエンドに分割し、CRONやメール通知を組み合わせ設定変更にすることを考えてみました。

これなら、rootでApacheを実行することを防げるのではないでしょうか?

23 :nobodyさん:2007/02/25(日) 19:20:27 ID:???
ちょっとでも作ってうpしてみてよ
全くのドシロウトの可能性も残ってるからなw

24 :nobodyさん:2007/02/26(月) 01:20:43 ID:???
>>1

機能の作り方についての10氏通り。
MTAのvirtualhost設定にも対応するつもりならば、
それを見越して基本的なアーキテクチャを設計しておいたほうがいい。

権限昇格の仕組みは、大事なポイントなので最初によく考えたほうがよい。
セキュリアOSのアクセス制御のように、
どのプログラムがどのユーザで実行されたとき、
どのファイルにどの権限でどのようなアクセス可能かを
設定ファイルに記述できるようにしておき、
権限昇格の機構を通してアクセスさせるのが理想。

あと、当たり前だが、コントロールパネル用のapacheと
管理対象のapacheは完全に別なものにしておく必要がある。

指摘があるように、既にたくさんあるわけだが、
自分で作ってみることも1のためになるかと思う。


25 :nobodyさん:2007/02/26(月) 11:58:17 ID:/9jyKNs5
これ以外にも
例えば入力が面倒過ぎ。
AAAA−BBBB−CCCC−DDDD
と例えば入力するとすると、AAAAの欄入力し終わったと
自動的にBBBBの欄に移動してくれない
わざわざ、キーボードから手話してマウス使わなきゃならない、
マジ面倒。
クレジットカードで払えればいいんだけどね、信用なくって作れねー

26 :nobodyさん:2007/02/27(火) 23:39:06 ID:F5jKpfcb
http://sourceforge.jp/
オープンソース開発したいんならこっち行った方がいい。

27 :nobodyさん:2007/02/28(水) 04:21:20 ID:ZwAY9SY/
>>1
BlueQuartzは設計自体古いのであまり参考にしない方が良い。
plesk、Ensim、HDEなどを参考にした方が良いだろ。

>>24
そんなに心配なら、OpenVZとかと組み合わせて
Spheraみたいなのを作ってみれば?

>>25
は?tabキーつかえよ。初心者は半年ROMれ。
そもそも、そんなのjavascriptですぐに出来るが
逆に勝手に動く方が(´Α`)ウゼーヨ

>>26
jpはcvsだからnetのほうが良いんじゃね?

28 :1 ◆T95UOUsyZ6 :2007/03/04(日) 00:24:06 ID:mx/4OFdn
プロバ規制とかで書き込めなくてすいません。
Pear::ConfigでApacheの設定書き出すテストを書いてみました。

#!/usr/bin/php
<?php
require_once "Config.php";

#$conf = new Config();
#$context = $conf->parseConfig( '', 'apache' );
$context = new Config_Container('section', 'apache');

if (PEAR::isError($root)) {
die('Error while reading configuration: ' . $root->getMessage());
}

$vhost = $context->createSection("VirtualHost", array("localhost:80"));
$vhost->createDirective("DocumentRoot", "/var/www/example.jp");
$vhost->createDirective("ServerName", "www.example.jp");
$location = $vhost->createSection("Location", array("/admin"));
$location->createDirective("AuthType", "basic");
$location->createDirective("Require", "group admin");

var_dump($context->toString("apache"));

29 :1 ◆T95UOUsyZ6 :2007/03/04(日) 04:16:44 ID:I2/pJFOU
ApacheのVirtualHost設定をYAMLで記述できないかためしてみました。
YAMLとConfigを挟むことでapachectrl configtest なしで、ある程度まで
設定記述の妥当性が検証できると思ったのですが。どうでしょうか。
---
#!/usr/bin/php
<?php
require_once "Spyc.class.php";
require_once "Config.php";
$yaml = "---
VirtualHost:
@:
- localhost:80
DocumentRoot: /var/www/example.jp
ServerName: www.example.jp
Location:
@:
- /admin
AuthType: basic
Require: group admin
";
$array = Spyc::YAMLLoad($yaml);
$conf = new Config();
$context = $conf->parseConfig($array, "PHPArray");
var_dump($context->toString("apache"));


30 :1 ◆T95UOUsyZ6 :2007/03/04(日) 04:18:19 ID:I2/pJFOU
YAML部分をHTMLエスケープし忘れました。すいません。再投稿します。
$yaml = "---
VirtualHost:
  @: 
    - localhost:80
  DocumentRoot: /var/www/example.jp
  ServerName: www.example.jp
  Location: 
    @: 
      - /admin
    AuthType: basic
    Require: group admin
";



31 :1 ◆T95UOUsyZ6 :2007/03/04(日) 04:23:36 ID:I2/pJFOU
>23
ちょっとだけですがうpしてみました。いかがでしょうか。

>24
ありがとうございます。権限委譲について調べてみました。
SuExceモジュールがあることに気づきました。
同じApache場でコントロールパネル用のCGIをSuExecで動かすことのではダメでしょうか?


32 :nobodyさん:2007/03/04(日) 21:52:26 ID:???
phpってだけで強制オプソになってしまう気がするが。

33 :nobodyさん:2007/03/09(金) 15:15:23 ID:???
>>31
がんばったね。
これ以上は、ここの住人にわかるやつはいないから
プログラムとか他のスレに行ったほうがいいよ。


34 :nobodyさん:2007/03/10(土) 02:50:57 ID:???
>33
ただのPear::Configの使い方にどう反応すれとw

35 :nobodyさん:2007/04/28(土) 14:50:37 ID:SA2j1yfS
GWだ。
>>1はもう諦めたか?
あの程度のレベルじゃ仕方ないか・・・。

36 :nobodyさん:2007/04/29(日) 00:56:46 ID:D3V82o9R
日本人の限界を見た

13 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.02.02 2014/06/23 Mango Mangüé ★
FOX ★ DSO(Dynamic Shared Object)