質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

ネットワーク

ネットワークとは、複数のコンピューター間を接続する技術です。インターネットが最も主流なネットワークの形態で、TCP/IP・HTTP・DNSなどの様々なプロトコルや、ルータやサーバーなどの様々な機器の上に成り立っています。

Q&A

解決済

9回答

790閲覧

レンタルサーバを作りたい

uer03108

総合スコア194

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

ネットワーク

ネットワークとは、複数のコンピューター間を接続する技術です。インターネットが最も主流なネットワークの形態で、TCP/IP・HTTP・DNSなどの様々なプロトコルや、ルータやサーバーなどの様々な機器の上に成り立っています。

2グッド

2クリップ

投稿2018/09/21 00:56

はじめまして。
レンタルサーバを作りたいと考えいるのですが、ネットワークに余り明るくないのでご質問させて頂きました。

イメージとしては、下記の様な手順になるのかなと考えているのですが、具体的な設定方法などご教授頂けると幸いです。

手順
1.サーバ用PCを用意
2.OSインストール(windows or linux)
3.サーバインストール(apacheやtomcat)
4.必要であればPHPやjava等をインストール
5.必要であればDBインストール
6.サーバ下にサブフォルダを大量作成
→このフォルダ1つ1つが各ユーザに割り当てるフォルダになる
7.各ユーザがサブフォルダ1つ1つにFTPで個別にアクセスできるようにする。

この他、ユーザ管理画面やユーザ作成画面なども別途必要になるかと思います。
良く分からないのは、7のフォルダごとにアクセス権を割り当てることです。
個別のフォルダにFTPのアクセス権を設定することはできるのでしょうか。

その他、見落としなどございましたらご指摘いただけると幸いです。

以上、宜しくお願い致します。

miyabi-sun, aaaaaaaa👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答9

0

まず聞いておくべきなのは、
貴方は学生だったり無職だったりして、勉強の為にレンサバ事業者としてのスキルを磨いてみたいという好奇心が動機ですか?
これがYESならば、そうですか、頑張ってくださいねというエールと共にアドバイスを送りましょう。

他の企業から金を貰って請け負うとでかい責任がつきまとうので、
ある程度運用経験を積むまではボランティアかカンパ程度にしておいたほうが無難です。
また、不特定多数をユーザとして公開しないでください、あくまで自分で責任持てる知人のみをユーザーにしてください。

具体的なサービスのコアな大枠は質問文の手順で良いでしょう。
普通に自分でWebサーバを立ち上げて運営するならばギリギリ合格点という感じですかね。
軽微な問題が出ても自分で何とかできそうです。


問題は、上記の質問への回答がNOのケースであり、
事業者になって金稼ぎをしたいという頭おかしい事を言ってる場合です。
もし質問者さんが私の友人であるならば必死で引き止めます。

理由は2つ

  • セキュリティ的な所で作るべき仕組みが多すぎる
  • 儲かる見込みがない

上から見ていきましょうか。
まず、本質問にはセキュリティ的な視点が一切盛り込まれていません。
これはレンサバ事業者として致命的な欠陥です。

Web上にサーバーマシンを公開した時点で全世界のクラッカー達の攻撃の対象になりえます。
お客様のファイルを預かりWebサーバで公開する行為ですから、漏洩≒事業者として一発アウトです。

また、内部のユーザの動向にも気を配る必要があります。
例えば2000年前後ではCGIゲームが多数登場し、Webサーバの負荷を1人のユーザーが集める事で他のユーザのWebサイトへのアクセスが出来なくなり大問題になりました。
今ではスクレイピングや、仮想通貨のマイニングもありますからやはりそれらの懸念は残っています。
こういった特定ユーザがマシンのCPUを異常に消費したり、トラフィックを占拠し始めたらどう対処しましょうか?

違法なファイル置き場に関しても難しいところです。
無断で複製した著作物、コンピュータ・ウィルス、ポルノ…
貴方が用意したサーバーマシンなので利用者がこれらを持ち込んだ場合、対処を間違えれば、貴方が犯罪者として捕まる可能性もあります。どう対処しましょうか?
他にもメール送信機能があればスパムメールを送信しまくるユーザも出てくるでしょうし、他のサイトにHTTP通信を飛ばせるのであればDDOS攻撃の温床にもなります。

サーバマシンは落ちない事が求められますが、
貴方のサービスはどの程度の可用性を宣言しますか?
復旧の仕組みは?死活監視は?
また、愉快犯のF5キーアタックの標的になりえます。

技術的な問題点はこの辺ですかね。
具体的な案を出せと言われれば出せない事もないですが…面倒見きれません。嫌です。
私はいかんせんプログラマ寄りの人間なのでその道のプロに比べると私の案は稚拙で恥ずかしいものです。
抜け漏れが多いでしょうし、嘘やトンチンカンなアドバイスになる可能性もあり、teratailでアドバイス貰った通りにやったのに、漏れがあって損害が発生した!どうしてくれるんだ!と怒鳴られてもなんにも保証出来ません。

本気で事業として取り組むのであれば、
ちゃんとしたセキュリティ会社に金払ってアドバイスをもらって下さい。


さて、紆余曲折ありましたが技術的な問題点を片付けてサービスを公開したとしましょう。
でも儲かる見込みは無さそうですが大丈夫ですか?

そもそも、レンサバというのは2000年時点で多数の企業が離脱して落ち着いています。
この20年でVPS、Heroku、クラウド、サーバレス…イケてるサービスが山のように登場してますので、私は生涯二度とレンサバを利用することはないでしょう。

そして貴社のライバルはサーバ運用やLinuxのプロが集まって月額100円そこそこのレンサバを公開しているさくらインターネットさんという老舗です。
差別化はどうしましょう?価格帯は?使える言語は?機能は?

そんじょそこらのエンジニアがサーバ運用のスペシャリスト揃いのさくらインターネットに勝てるわけ無いんですよ。
よしんば勝てても月額100円までダンピングされてしまっているので、全く旨味がないんですよね。
100円ってなんだよ……缶コーヒーじゃん……

コツコツ営業してITスキルのない顧客を抱える戦略でいくのであれば、
さくらインターネットやGMOみたいなサービスをお借りして、Webサイト制作と運営代行サービスとして中間マージンを抜いた方がよっぽど健全だし堅牢な仕組みに仕上がると思います。

ただまぁ、私は普通のエンジニアですので、
もし質問者さんが何かしらの儲けるネタを隠しており、勝算があるなら止めはしません。

投稿2018/09/21 04:00

編集2018/09/21 08:49
miyabi-sun

総合スコア21158

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2018/09/21 04:34

そのまえに、ほーりつの壁があるよん。やりたいことによって、適応範囲が変わったはず。 結構めんどい。
miyabi-sun

2018/09/21 04:40

ほほう、法律ですか…ありがとうございます。覚えておきます。 ただ、もし儲かりそうなら頑張って法律関係も勉強したりスペシャリストに相談していい感じにするだけなので引き止める理由にはならないかなと思いました。
uer03108

2018/09/21 16:16

ご丁寧な回答、有難うございました。 非常に参考になりました。 と同時に気が重くなって参りました。 一応、レンサバが本命ではなく、レンサバを使ったサービスが本命なので、 仰る通りハード面は他社様を間借りした方が良いかと思いました。 私も、いちプログラマですのでコーディングに専念いたします。
daisykatsura

2019/08/06 14:24

レンタルサーバやりたければ、ご自身のパソコンにApacheを入れて運営して下さい。 有料のレンタルサーバでもスペースの貸し出し行為を認めていないところが多いです。
guest

0

その他、見落としなどございましたらご指摘いただけると幸いです。

「レンタル」といってどの程度の人に貸すのかわからないですが、「他人に貸す」となった場合は、セキュリティ・可用性などについて、個人利用と比べて高度なものが要求されます

どうやって立てるかを相談しないといけないレベルで他人様のデータを預かるのは、正直言ってリスクが大きすぎます

(もちろん、「サークルの内輪で共用する」ような、第三者が関係していないものであれば、その限りではないです)

投稿2018/09/21 01:08

maisumakun

総合スコア145183

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

uer03108

2018/09/21 01:39

ありがとうございます。 現在、サクラレンタルサーバを借りているのですが、telnetで接続時に鍵を作成するなどセキュリティー高いのは何となくイメージできます。
guest

0

ベストアンサー

組織の内部向けにレンタルサーバー、つまり、Webホスティングサービスのシステムを構築し、運用していますので、その内容についてかいつまんで述べます。

サービス概要

実装済み

  • 各部署が独自のホームページ等を公開できる場所として提供。(詳しい知識が無くてもOK)
  • 使用料無料!(本当は金取りたい…)
  • 利用者毎に独自のサブドメインが使用可能。(わかりやすいURLにできる)
  • 証明書が付いてくるので、デフォルトでHTTPS可。(証明書の発行手数料はこちらで負担します)
  • 自称SLA99.99%。(超えた場合の返金額は0円になにをかけても0円なので問題なし)
  • CGIやPHPが使える。(Perl、Python、Rubyだけではなく、C/C++を自分でコンパイルすることも可)
  • MySQLとPostgreSQLが使える。(MySQLの正体はMariaDBだけど)
  • PHPはバージョンを選べる。(一つのバージョンを除きPHP-FPM経由になります)
  • Wordpress等のメジャーなCMSの動作を保証。(WordpressとDrupalは取りあえず動いた)
  • 任意のWebアプリケーションが(知識があれば)使える。(puma、Jetty、go製Webアプリが動作実績としてあり)
  • OS・ミドルウェアは自動アップデートなので、セキュリティも安心。(その上に載っているコンテンツは知らんけどな)
  • SE Linux有効。(ルール追加が大変でした)
  • 利用者間は互いにファイルが見えないchrootを駆使した構成。(同じ組織内だし、そこまでする必要あったのかは疑問だけど)
  • 外部公開版と内部のみ公開版の二種類を用意。(ただし、後から移ることはは出来ません)
  • スケールアウト可能。(予算が付けば容量も無制限に増やせるよ)

未実装

  • PHP-FPM以外のfast_cgi(検証中)
  • cron(そのままだとchrootされない><)
  • Shibboleth SP(ちょっと無理っぽい)
  • まともなsendmailコマンド(メールは内部のSMTPサーバーに直接飛ばしてくれ)
  • オブジェクトストレージサーバー(nextCloud向けにCephあたりを作ろうと思っている)
  • LDAPサーバーとの連携(どういう仕組みにすればいいのかすらわかってない)

ユーザーへのサービス

  • コンテンツアップロードはSCP/SFTPとFTP。(FTPは暗号化あり)
  • SSH可能。(chroot済みだけど、GCCとかも使えます)
  • Userminでパスワード変更。(将来はcronを登録できるようにしたい)
  • DB管理用にphpMyAdminとphpPgAdmin。
  • アクセス解析にAWStats。(試験運用中で解析対象サイトは一部のみ)
  • オンラインマニュアル。(誤字脱字だらけ…そのうち修正するよ)

システム構成

  • サーバーは自称プライベートクラウドに仮想マシンとして設置。(間借りしたデータセンターにクラスタ化された仮想環境基盤を置いているだけなんですけどね)
  • 役割別にサーバーがわかれており、それぞれ複数台用意。
    1. 負荷分散サーバー(ちょっと作り直したい)
    2. Web兼Appサーバー(分離を構想中)
    3. ファイルサーバー(コンテンツ置き場)
    4. DBサーバー(MariaDBとPostgreSQLが同居ってどうなのだろう)
    5. 管理サーバー(これだけ1台、このサーバーが落ちていてもWebが落ちないから)

主な技術

  • CentOS 7
  • keepalived
  • nginx
  • Apache HTTP Server
  • MariaDB Galera Cluster
  • PostgreSQL
  • GlusterFS
  • Ansible

ユーザーやサイトの管理ツール

RubyスクリプトとAnsibleの組合せで自作。品質が良くなったらGitHubに公開するかもしれません。

Rubyスクリプトの主なコマンド

他サーバーへの命令が必要な場合は、Ansibleのタスク呼び出しになっています。

  • ユーザーの作成・削除(ディレクトリも自動で作られる。ユーザーとサイトは1対1)
  • ユーザーに対するDBの作成・削除
  • 秘密鍵・証明書要求の作成、証明書と中間証明書の結合(nginxは結合が必要なの)
  • ドメイン毎のnginx、Apache HTTP Server設定ファイルの作成
  • chrootしても大丈夫なようにするためのユーザー毎のマウント処理

Ansibleの主なタスク

  • Rubyスクリプトから呼び出す各処理
  • 各サーバーへの秘密鍵・証明書の配付
  • 各サーバーへのnginx、Apache HTTP Server設定ファイル配付
  • 各サーバーのアップデートによる再起動命令
  • バックアップ

かかった工数

わかんね。

時間あるときにちょっとずつ進めて、一段落するのに半年ぐらいかかりました。その後も、少しずつ改良を加えて行っています。なお、システムは二つあり、後から作った方はサーバーまるごとクローン大作戦をして、ホスト名・IPアドレス依存分の見直しや書き換えをして、一週間ぐらいです。

工夫した点

静的コンテンツはnginx、動的コンテンツはApache HTTP Serverにすることで、速くなったような気だけします(ただの自己満足)。それでありながら.htaccessも使えます(その場合はApache HTTP Serverだけで処理されますが)。Apache HTTP Serverではmod_ruid2でユーザーの領域を分離しています。これがなかったなら、Dockerでユーザー毎にApache HTTP Serverを動かすハメになっていた可能性が高いです。

複数のWebサーバーがどうやって同一コンテンツを持つかという点が一番悩みました。最初は共有ディスクを持たせてGFS2で作ってみたのですが、うまくマウントされないときはあるわ、クラスター仕込むのがめんどいわ、極めつけがSE Linux未対応ということで断念しました。その後、GlusterFSを使ってうまくいっています。GlusterFSはクラスタ化されたNFSのように使えますし、スナップショット(何回か失敗しています)までとれるのが良かったです。

未解決部分

  • GlusterFSに全て置いている状態だと、Ruby on Rails(puma使用)の起動がめちゃくちゃ遅い。(10分ぐらいかかるんですけど)
  • PostgreSQLは、マスターが死んでも、スレーブがマスターに自動昇格しない。(どんな仕組みが良いのか、ずっと検証中)
  • 改良するための時間がなかなか取れない。

将来構想

  • Dockerを使って作り直し。(CentOS 7のサポートが切れるまでは作っておきたい)

このシステムは私が培ってきたインフラ技術の集大成です。これでも、商業サービスに比べたら、相手にならないぐらい低いレベルだと思います(例えば、商業ですと、ユーザー毎の制限とかが必要になりますが、このシステムは内部向けサービスなので制限はしていないのです)。上に書いている内容がわからないとなると、知識や経験が足りません。その状態では、レンタルサーバーを作るのは難しいと思います。

投稿2018/09/21 11:29

raccy

総合スコア21735

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

uer03108

2018/09/21 15:58

非常に参考になりました。 有難うございましたm(_ _)m と同時に気が遠くなりました。。。 明らかに経験・技術不足ですねw(* *)w レンタルサーバを含めたサービスを考えていたのですが、サーバ部分は他社から間借りするのか 検討してみます。
uer03108

2018/09/21 16:53 編集

raccy様でも、まだ商業に比べると浅い知識になってしまうのですね。 自分など、ド素人もよいとこですね。
guest

0

レンタルサーバーの管理者を目指すということであれば、これぐらいは、自力解決してもらいたいと思うので、ヒントだけ書いておきます。

  • chroot
  • jail (FreeBSD)

投稿2018/09/21 01:31

編集2018/09/21 01:43
CHERRY

総合スコア25171

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

uer03108

2018/09/21 01:46

有難うございました。 勉強させて頂きます。
guest

0

技術的云々の前に

  • サービス提供内容、責任範囲、SLA(やるべきこと、守るべきこと)
  • 料金プラン(予算とどう儲けていくのか)

このあたりを考えたほうが良いかなと思います。

サーバ用PCってあたりで・・・って感じなのですが
回線って大丈夫かな?/故障時にどうするんだろう?/データってどう保護するんだろう?等々不安が満載です。

ざっくりしたところから細かく考えないと危ないですよ。

投稿2018/09/21 01:53

編集2018/09/21 04:42
gitya107

総合スコア706

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

uer03108

2018/09/21 02:00

ありがとうございます・・・ もう少し、視野を広げて考えてみます。
guest

0

レンタルサーバーを作るというのはいいのですが、
サーバーですのでどんな時も動く環境を用意しておかないといけない。
これも結構大変だと思います。
例えば最近発生した北海道の地震では停電があったが、あらかじめ燃料を用意して停電中も稼働し続けた、さくらインターネットの例があります。
もしこれが無ければ、結構当社はやばかったとおもいます。

これほどまでとはしなくてもいいと思いますが、仮にもしも何かあっても動き続ける環境を作らないと難しいと思います。

私としての提案はレンタルサーバーをさくらなどで借りて、それをほかの人に再販してその管理者になるするいいと思います。
ただ再販でお金を取るというのはBtoBなので、個人に再販を頼むことはないと思いますが

投稿2018/09/21 04:39

arasi

総合スコア156

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

uer03108

2018/09/21 16:00

有難うございます。 そちらの方が、現実的な様な気がしてきました。
guest

0

他の方も書かれていますが、chroot がお望みのキーワードです。
まともなレンタルサーバを構築するのはかなり難易度が高い作業ですので、頑張ってくださいね。
ちなみに、FTP は今の世の中的には非常にセキュリティ的に問題のある仕組みです。
何らかの考慮が必要ですので、その辺を完全に理解してからFTPはサービスを開始することをおすすめします。

投稿2018/09/21 03:39

ssasaki

総合スコア1167

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

uer03108

2018/09/21 16:22

有難うございました。 知りたかったのは、このコマンドです。
guest

0

実際にあなたの作ろうとするようなレンタルサーバを借りてその動作を見てみればどうでしょう。
そうすれば、何ができて何ができないか、また、何をどうしなければならないか、というのが見えると思います

そのうえで、ここではこうなってるけどこれはどうしたら、とか疑問が出てくれば、改めてこういうところで聞けばいいかと。

投稿2018/09/21 01:05

y_waiwai

総合スコア87747

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

uer03108

2018/09/21 02:13

はい。 有難うございます。 一応、現在レンタルサーバを借りております。
y_waiwai

2018/09/21 02:18

ではそこでは、フォルダごとのアクセス権はどうなってるでしょう。 また、個別のフォルダにFTPのアクセス権は設定されてないでしょうか
uer03108

2018/09/21 16:27

ハッキリとは分からないのですが、ユーザごとにフォルダが割り当てられており、トップフォルダがrootになっているのかなと思いました。
guest

0

余談です

どのような仕様のレンタルサーバを想定しているのか不明ですが、既存クラウドサービス上にシステムを構築することで自社で管理する範囲を狭めることができます。

Dropbox が AWS を基盤として利用していたのは有名です。(現在は違いますが)
今だと Netlify とか。

SLA やセキュリティポリシーが合致するようであれば、かなり責任範囲を絞れると思います。

投稿2018/09/21 02:15

編集2018/09/21 02:18
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

uer03108

2018/09/21 16:24

有難うございます。 他社様も仰られている様に、クラウドを間借りする方が現実的な様な気がしてきました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問