検討!目論見委員会Z

サーバインフラ屋10年余りやってる人

数Gのファイルを不特定多数の人に配りたい案件

という案件が深夜の1時、友人から突然降ってきたのでメモ。 もっといいソリューションがあれば教えてください。

要件

  • ファイルサイズ 3GB * 7個くらい
  • 20人くらいに配りたい
  • HTTP経由(お手軽にすぐダウンロード)
  • お金かけたくない
  • ダウンロードするときにパスワードも付けたい
  • 自宅サーバをこれからつくると時間かかる
  • 今週末まで (!?)

結論

ボツ案

amazon ec2 セットアップ

f:id:tboffice:20130125040954p:plain

  • Security Groupで SSHとHTTPを選択*1

  • Incetances一覧で、起動していることを確認

  • SSHで接続する方法もslideshareのところに書いてあります

ディスクを拡張します

  • マイクロインスタンスだと、8G固定になっているのでなんとかします
[ec2-user@gdpy ~]$ df -h
Filesystem            Size  Used Avail Use% マウント位置
/dev/xvda1            7.9G  932M  6.9G  12% /
tmpfs                 298M     0  298M   0% /dev/shm
  • おもむろにresize2fs
[ec2-user@dgpy ~]$ sudo resize2fs /dev/xvda1                                                         
resize2fs 1.42 (29-Nov-2011)
Filesystem at /dev/xvda1 is mounted on /; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 2
Performing an on-line resize of /dev/xvda1 to 7864320 (4k) blocks.
The filesystem on /dev/xvda1 is now 7864320 blocks long.

[ec2-user@dgpy ~]$ df -h
Filesystem            Size  Used Avail Use% マウント位置
/dev/xvda1             30G  936M   29G   4% /
tmpfs                 298M     0  298M   0% /dev/shm

設定とか

下準備

  • ec2-userユーザの~に適当にディレクトリ(仮にupload)を作っておく
  • 面倒なのでchmod
chmod 755 /home/ec2-user

アップロードする

  • ファイルをダウンロードすると言うことは、アップロードしないといけないわけで
  • sftpあたりでアップロードしてもらえばいいかな?適当なアプリケーションない?
    • WinSCPしかないだと!?え?ppk!?
  • puttygenで公開鍵(pem)をppkファイルに変換してやってそれを依頼者に送付
  • ユーザ名は ec2-user
  • ホスト名は、ec2-54-(うわなにをすr(ry
  • 本来はuseraddして公開鍵を作ってやるのが正攻法な気がします

apacheインストール

おもむろに

yum install httpd

おもむろに*3

cd /var/www/html/ 
ln -s /home/ec2-user/upload doshitanowasawasa

アクセス

http://ec2-54(おいなにをすr(ry)/doshitanowasawasa

なんとかできた

即席過ぎていろいろアラがありますがなんとか間に合ったんではないでしょうか

余談

「設定できたよー、あとはファイル突っ込んでおけばおk」
「あんがと 明日やる おやすみなさい… ねむいんです・・・」

*1:安易にport 22は空けるんじゃないぞ、ってじっちゃんが言ってた

*2:発生したお金は依頼者と折半することにしてますw

*3:パスワードみたいなURLでパスワードの代用