c4se記:さっちゃんですよ☆

.。oO(さっちゃんですよヾ(〃l _ l)ノ゙☆)

.。oO(此のblogは、主に音樂考察Programming に分類されますよ。ヾ(〃l _ l)ノ゙♬♪♡)

音樂は SoundCloud に公開中です。

考察は現在は主に Scrapbox で公表中です。

Programming は GitHub で開發中です。

さくらのVPSでDebianをセッティングした

記録。
何故Debianかというと、CentOSyumが嫌になった時期が有るからだ。8月から別用に使ってたけど、OS再インストールしてセッティングし直した。
[VirtualBox上でDebian6.0.2.1-i386をインストール/セッティングした http://d.hatena.ne.jp/Kureduki_Maari/20110929/1317252969 ]と重複する事は書きません。Debian6 32bitのinstall迄は済んでいるものとします。


目次

  1. sudo出来る様にする
  2. SSH鍵を設定し、接続する
  3. Rubyを入れる
  4. iptablesを設定する

sudo出来る様にする

VPSのリモートコンソールから作業します。先ずSSHで接続出来る様にしましょう。其の前にsudoです。
rootでログインします。

aptitude update
aptitude install sudo
visudo

で、

yourusername	ALL=(ALL) ALL

を然るべき位置へ追加します。yourusernameは適宜置き換えて下さい。以下同。

login yourusername

でloginします。以降はrootでのloginは行いません。

SSH鍵を設定し、接続する

sudo aptitude install ssh
sudo vi /etc/ssh/sshd_config

とし、sshdのconfigファイルを編集します。

Port thenumberyoulike

PermitRootLogin no

AuthorizedKeyFiles	%h/.ssh/authorized_keys

DenyUsers ALL
AllowUsers yourusername

thenumberyoulikeは好きな数字に置き換えて下さい。デフォルトは22です。yourusernameも置き換えて下さい。
私はCygwinからsshを接続するのですが、keyはとっくに作ってありました。其の前提とします。id_rsa.pubを、何とかしてVPSへ保存して下さい。あ、私は、Dropboxに上げてwgetで置きました。公開鍵ですから、まぁ……。sshを設定した暁には、scpを使って下さい。保存した公開鍵を~/.ssh/authorized_keysへ置きます。

sudo /etc/init.d/ssh restart

としてsshdを再起動し、Cygwinからsshを試します。
以降は基本的にsshから作業します。リモートコンソールめんどくさい。

Rubyを入れる

基本的にはVirtualBoxの時と同じです。然しgcc等が入っていない為、

sudo aptitude install gcc g++ make

としておく必要があります。もう一つ、zlibとリンクできない為、[DebianRailsを入れる « 変なヤバいもんログ http://ecpplus.net/weblog/debian%E3%81%ABrails%E3%82%92%E5%85%A5%E3%82%8C%E3%82%8B/ ]に従い、configureの後、

sudo aptitude install zlib1g-dev
cd ext/zlib
sudo ruby extconf.rb --with-zlib-include=/usr/include --with-zlib-lib=/usr/lib
make
make install

とします。御蔭で二回Rubyのインストールをし直しました。RubyのinstallにRubyが必要と云うのがわからない。いまいちわからない。
rubygemsで、サーバ機にいちいちrdocやriがインストールされてはかなわないので、[ruby - How do I make --no-ri --no-rdoc the default for gem install? - Stack Overflow http://stackoverflow.com/questions/1789376/how-do-i-make-no-ri-no-rdoc-the-default-for-gem-install ]に従い、.gemrcへ、

echo 'gem: --no-ri --no-rdoc' >> ~/.gemrc

として書き込みます(実際はVimで書き込んでるけど)。gemsは整えて下さい。


あとCouchDBとRedisをinstallしました。node.jsは復た今度で間に合う。

iptablesを設定する

iptablesFireWallを設定します。此所に書ける程わかっておらず、ほとんどがコピペに近いのですが、

#!/bin/sh

iptables='/sbin/iptables'

$iptables -F
$iptables -Z
$iptables -X
$iptables -P INPUT DROP
$iptables -P OUTPUT ACCEPT
$iptables -P FORWORD DROP

としたのに続き、INPUTの、sshなりhttpなりhttpsなどを一つづつ通してゆくshファイルを書き、scpでVPSで上げ、sudoを付けて実行します。間違えるとSSHDROPされたりしますが、慌てずにリモートコンソールへ行きACCEPTします。
其の後、

sudo /sbin/iptables-save > ~/iptables-save.txt

等としてテーブルを書き出し、起動時に

/sbin/iptables-restore < /home/yourusername/iptables-save.txt

で自動設定する様に、よきように設定します。ブルートフォースDOS対策は出来てません。頑張れ。