# sakura VPS CentOS6 構築メモ ## lang $ sudo su # vi /etc/sysconfig/i18n LANG="ja_JP.UTF-8" LC_CTYPE="ja_JP.UTF-8" SYSFONT="latarcyrheb-sun16" ## ユーザ追加 # useradd NAME # passwd NAME # usermod -G wheel NAME ## vi etc/sysctl.conf net.core.somaxconn = 1024 net.ipv4.tcp_fin_timeout = 5 net.ipv4.tcp_tw_reuse = 1 net.ipv4.tcp_tw_recycle = 0 net.ipv4.tcp_timestamps = 0 net.ipv4.tcp_keepalive_time = 15 net.ipv4.tcp_keepalive_intvl = 5 net.ipv4.tcp_max_syn_backlog = 2048 `sudo sysctl -p` ## limits.conf sudo vi /etc/security/limits.conf * soft nofile 65536 * hard nofile 65536 ## ssh sudo vi /etc/ssh/sshd_config sshd 再起動 # /sbin/service sshd restart ### 鍵 # su - NAME $ mkdir .ssh $ chmod 0700 .ssh $ ssh-keygen -t rsa $ vi ~/.ssh/authorized_keys $ chmod 600 ~/.ssh/authorized_keys authorized_keys は全サーバ同期しておく ## sudo # /usr/sbin/visudo %wheel ALL=(ALL) NOPASSWD: ALL Defaults:NAME !requiretty ## iptables # /root/setup/iptables.sh ## root パスワード無効 # passwd -l root ## 不要サービス停止 # ntsysv ## yum パッケージ 全体 update # yum update 旧サーバで list 吐き出す # yum list installed | grep --color=never '\.' | cut -d' ' -f1 | sort | uniq > yumlist 新サーバでまとめてインスコ # for p in `cat yumlist`; do echo $p; sudo yum install $p -y; done ## ~ $ scp -r ~/* NewServer:/home/NAME/ ## ミドルウェア ### git yum のはだいたい古いので最新 stable をソースからビルド。man も入れる。 git に必要なパッケージ sudo yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel ### nginx stable 最新をソースからビルド ./configure --with-http_ssl_module --with-http_realip_module --with-http_sub_module --without-http_autoindex_module --without-http_ssi_module ### daemontools ソースからビルド CentOS6 の upstart 対応 /etc/init/svscan.conf start on runlevel [12345] respawn exec /command/svscanboot SVDIR はアプリで利用する環境変数 以下のように upstart 起動する initctl reload-configuration initctl start svscan ## cpan perlbrew + cpanm 入れて `cpanm --installdeps` ## cron コピって終了。