理想未来ってなんやねん

娘可愛い。お父さん頑張る。

お名前.com レンタルサーバーVPSを借りてみた

お名前.comのレンタルサーバVPSを借りてみました。

月額2980円でメモリ1GB/HDD 120GBとスペック的にも悪くない。
個人的には使い慣れたCentOS 5が使える点もポイントの一つでした。


カーネルが変更できないなど細かい点で気になる所もありあますが、価格を考えると非常に良い環境だと思います。


使い始めに行った作業をメモしておきます。

始めに

管理画面にログインして、まず始めにsshが使えるようにファイアーウォールの設定を変更します。

インストール

yum

デフォルトでyumが入っていないのでインストールします。

wget http://ftp.riken.jp/Linux/centos/5.3/os/x86_64/CentOS/m2crypto-0.16-6.el5.3.x86_64.rpm
wget http://ftp.riken.jp/Linux/centos/5.3/os/x86_64/CentOS/python-elementtree-1.2.6-5.x86_64.rpm
wget http://ftp.riken.jp/Linux/centos/5.3/os/x86_64/CentOS/python-sqlite-1.1.7-1.2.1.x86_64.rpm
wget http://ftp.riken.jp/Linux/centos/5.3/os/x86_64/CentOS/python-urlgrabber-3.1.0-5.el5.noarch.rpm
wget http://ftp.riken.jp/Linux/centos/5.3/os/x86_64/CentOS/yum-3.2.19-18.el5.centos.noarch.rpm
wget http://ftp.riken.jp/Linux/centos/5.3/os/x86_64/CentOS/python-iniparse-0.2.3-4.el5.noarch.rpm
wget http://ftp.riken.jp/Linux/centos/5.3/os/x86_64/CentOS/yum-fastestmirror-1.1.16-13.el5.centos.noarch.rpm
wget http://ftp.riken.jp/Linux/centos/5.3/os/x86_64/CentOS/yum-metadata-parser-1.1.2-2.el5.x86_64.rpm
sudo rpm -ivh m2crypto-0.16-6.el5.3.x86_64.rpm
sudo rpm -ivh python-elementtree-1.2.6-5.x86_64.rpm
sudo rpm -ivh python-sqlite-1.1.7-1.2.1.x86_64.rpm
sudo rpm -ivh python-urlgrabber-3.1.0-5.el5.noarch.rpm
sudo rpm -ivh python-iniparse-0.2.3-4.el5.noarch.rpm
sudo rpm -ivh yum-metadata-parser-1.1.2-2.el5.x86_64.rpm
sudo rpm --import http://ftp.riken.jp/Linux/centos/5.3/os/x86_64/RPM-GPG-KEY-CentOS-5
sudo rpm -ivh yum-fastestmirror-1.1.16-13.el5.centos.noarch.rpm yum-3.2.19-18.el5.centos.noarch.rpm

sudo yum -y remove php-sqlite2
sudo yum -y update
sudo yum -y install php-sqlite2
sudo

sudo使うたびに『audit_log_user_command(): 接続を拒否されました』という警告が出るのでsudoを入れなおします。

sudo yum -y install pam-devel
sudo yum -y remove sudo
wget http://www.sudo.ws/sudo/dist/sudo-1.7.2p2.tar.gz
tar xvf sudo-1.7.2p2.tar.gz
cd sudo-1.7.2p2
./configure
make
su
make install
cp sample.pam /etc/pam.d/sudo
mysql

mysqlはパフォーマンスの良い5.1をインストールしました。

yum -y remove mysql mysql-bench mysql-devel mysql-server

wget ftp://ftp.jaist.ac.jp/pub/mysql/Downloads/MySQL-5.1/MySQL-client-community-5.1.42-0.rhel5.x86_64.rpm
wget ftp://ftp.jaist.ac.jp/pub/mysql/Downloads/MySQL-5.1/MySQL-shared-community-5.1.42-0.rhel5.x86_64.rpm
wget ftp://ftp.jaist.ac.jp/pub/mysql/Downloads/MySQL-5.1/MySQL-devel-community-5.1.42-0.rhel5.x86_64.rpm
wget ftp://ftp.jaist.ac.jp/pub/mysql/Downloads/MySQL-5.1/MySQL-shared-compat-5.1.42-0.rhel5.x86_64.rpm
wget ftp://ftp.jaist.ac.jp/pub/mysql/Downloads/MySQL-5.1/MySQL-server-community-5.1.42-0.rhel5.x86_64.rpm

sudo rpm -ivh MySQL-client-community-5.1.42-0.rhel5.x86_64.rpm \
MySQL-shared-community-5.1.42-0.rhel5.x86_64.rpm \
MySQL-devel-community-5.1.42-0.rhel5.x86_64.rpm \
MySQL-shared-compat-5.1.42-0.rhel5.x86_64.rpm \
MySQL-server-community-5.1.42-0.rhel5.x86_64.rpm

sudo /usr/bin/mysql_secure_installation

sudo /sbin/chkconfig --add mysql
sudo /sbin/chkconfig mysql on

その他

locateも入っていないので入れておきます。
sarが使えるようにsysstatも。

後は気がついた時に書き足していきます。

sudo yum -y install mlocate sysstat
sudo updatedb

セキュリティ設定

rootになれるユーザーをwheelグループに限定する
sed -i.bak -e "s/^#\(auth\s\+required\s\+pam_wheel\.so.*\)/\1/g" /etc/pam.d/su
echo "SU_WHEEL_ONLY yes" >> /etc/login.defs
sudo使えるのもwheelだけにする
sed -i.bak -e "s/^#\s\+\(%wheel\s\+ALL\=(ALL)\s\+ALL\)/\1/g" /etc/sudoers
SSH - 公開鍵認証のみに制限する

パスワード認証を拒否して公開鍵認証のみに制限する。
先に公開鍵認証でログインできることを確認しておくこと。

sed -i.bak -e "s/^\(PasswordAuthentication\).*/\1 no/" /etc/ssh/sshd_config
SSH - IP制限

国外からのSSHブルートフォース攻撃がウザイので接続制限を行う。
recentモジュールが使えないので、/etc/hosts.allowにてIPで制限する。
/etc/hosts.allowは各自の環境に応じて適当に書き換える。.jpで終わらないISPもある。
http://wiki.livedoor.jp/aissle/d/%a1%d6%2ejp%a1%d7%a4%c7%bd%aa%a4%ef%a4%e9%a4%ca%a4%a4%b9%f1%c6%e2ISP

cat >> /etc/hosts.allow << EOM
sshd : .jp : allow
sshd : ALL : deny
EOM


そんな感じで。