Linode初期設定

/etc/ssh/sshd_config
rootログイン禁止、パスワード認証禁止

putty鍵認証設定

インストール(apt-get)
apache2
mysql-server
w3m
php5-gd
locate
subversion, subversion-tools, libapache2-svn
libapache2-svn(apacheでのリポジトリ公開)
sqlite3
タイムゾーン設定
$ sudo dpkg-reconfigure tzdata

ウィザード形式ではじまるので、「Asia」を選んで「OK」、「Tokyo」を選んで「OK」
$ date

と打って、現在の日本時間が表示されれば完了。

最初はEUC-JPっぽい…。

日本語ロケール設定
$ sudo apt-get install language-pack-ja
$ sudo dpkg-reconfigure locales
$ sudo update-locale LANG=ja_JP.UTF-8

いったんログアウトしてからログイン。以下のコマンドで確認。
$ locale
LANG=ja_JP.UTF-8
LC_CTYPE=”ja_JP.UTF-8″
LC_NUMERIC=”ja_JP.UTF-8″
LC_TIME=”ja_JP.UTF-8″
LC_COLLATE=”ja_JP.UTF-8″
LC_MONETARY=”ja_JP.UTF-8″
LC_MESSAGES=”ja_JP.UTF-8″
LC_PAPER=”ja_JP.UTF-8″
LC_NAME=”ja_JP.UTF-8″
LC_ADDRESS=”ja_JP.UTF-8″
LC_TELEPHONE=”ja_JP.UTF-8″
LC_MEASUREMENT=”ja_JP.UTF-8″
LC_IDENTIFICATION=”ja_JP.UTF-8″
LC_ALL=

Mysql5.0をUTF-8で使う設定。
$sudo vi /etc/mysql/my.cnf

適切に下記を追加
[client]
default-character-set=utf8

[mysqld]
default-character-set=utf8
skip-character-set-client-handshake

再起動
$ sudo /etc/init.d/mysql restart

確認
mysqlにログインしてstatusを実行

Client characterset: utf8
Server characterset: utf8

あ、PHP入ってないみたいだ。
sudo apt-get install php5 php5-mysql php-pear
sudo pear install -a Log

設定ファイルを自分好みに。
sudo vi /etc/php5/apache2/php.ini

Apache設定再ロード。
sudo /etc/init.d/apache2 reload

mysql ユーザー設定

スーパー権限
GRANT ALL PRIVILEGES ON *.* TO ユーザー@localhost
IDENTIFIED BY ‘パスワード’ WITH GRANT OPTION;

GRANT ALL PRIVILEGES ON *.* TO ユーザー@”%”
IDENTIFIED BY ‘パスワード’ WITH GRANT OPTION;

一般ユーザー
create user ユーザー identified by ‘パスワード’;
grant all privileges on DB名.* to ユーザー@localhost identified by ‘パスワード’;

sshポート変更
sudo vi /etc/ssh/sshd_config

# What ports, IPs and protocols we listen for
Port 22
を任意のポートに変更

/etc/sysctl.conf
TCP SYN Flood攻撃対策
net.ipv4.tcp_syncookies=1
Smurf攻撃対策
net.ipv4.icmp_echo_ignore_broadcasts = 1