[さくらVPS(CentOS)]初期設定(ssh, iptables, demon, etc) - suVeneのアレ

[さくらVPS(CentOS)]初期設定(ssh, iptables, demon, etc)

昨日、レンタルサーバに Rails をインストールしても意味が無いことに気づいたので、さっそくさくらの VPS を借りた。

とりあえず、色々なサイトを参考にして初期設定を。

コントロールパネル

https://secure.sakura.ad.jp/vpscontrol/
IPアドレス: xxx.xxx.xxx.xxx
パスワード: XXXXXXXXXXXXXXX

にログインして、「起動」する。

初期設定

作業用ユーザ作成と設定

通常用のユーザー作成。

# useradd suvene
# passwd suvene
# usermod -G wheel suvene # あとで sudo するために
# su - suvene # 一旦作成したユーザに戻る

SSH用の設定

パスワード認証は危険なので、公開鍵認証に限定。

$ ssh-keygen -t rsa
$ vi ~/.ssh/authorized_keys
(作業用PCで作成した公開鍵貼付け)
$ chmod 600 ~/.ssh/authorized_keys
$ su -
# vi /etc/ssh/sshd_config
# /etc/init.d/sshd

ちなみに、sshd_config の diff.

< Port 10022
--- > #Port 22
42c42
< PermitRootLogin no
--- 
> #PermitRootLogin yes
66c66
< PasswordAuthentication no 
--- 
> PasswordAuthentication yes
96,97c96,97
< UsePAM no
< # UsePAM yes 
--- 
> #UsePAM no
> UsePAM yes

sudo の設定

sudo の設定と、ルートパスワード無効化
ついでに、sudo のログを syslog に出力して、ログローテーション設定。

# passwd -l root
# visudo
// coment in
wheel ALL=(ALL)  ALL
Defaults syslog=local3

# vi /etc/syslog.conf
local3.*

# touch /var/log/sudo
# chmod 600 /var/log/sudo
# vi /etc/logrotate.d/syslog
/var/log/sudo

ネットワークとサービス

iptables

sudo vi /etc/sysconfig/iptables

さくらのVPS を使いはじめる 3 – iptables を設定する | アカベコマイリ
が参考になる。
行末に空白が入っていたらダメなので注意。
解放するポートは適宜修正すること。

*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:RH-Firewall-1-INPUT - [0:0]

-A INPUT -j RH-Firewall-1-INPUT
-A FORWARD -j RH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT -p 50 -j ACCEPT
-A RH-Firewall-1-INPUT -p 51 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# SSH, HTTP, FTP1, FTP2, MySQL
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 10022 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80    -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 20    -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21    -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306  -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
COMMIT

設定できたら、iptables の再起動。

sudo /etc/rc.d/init.d/iptables restart
iptables: Flushing firewall rules:                         [  OK  ]
iptables: Setting chains to policy ACCEPT: filter          [  OK  ]
iptables: Unloading modules:                               [  OK  ]
iptables: Applying firewall rules:                         [  OK  ]

設定の確認。

$ sudo iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
RH-Firewall-1-INPUT  all  --  anywhere             anywhere            

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         
RH-Firewall-1-INPUT  all  --  anywhere             anywhere            

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

Chain RH-Firewall-1-INPUT (2 references)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere            
……

不要なデーモンをストップ

はじめてのさくら VPS + CentOS の初期設定からチューニングなどの作業まとめ | ウェブル
の設定をそのまま頂いた。でも、さくらのVPSではほとんど止まっている。

/sbin/chkconfig auditd off
/sbin/chkconfig autofs off
/sbin/chkconfig avahi-daemon off
/sbin/chkconfig bluetooth off
/sbin/chkconfig cups off
/sbin/chkconfig firstboot off
/sbin/chkconfig gpm off
/sbin/chkconfig haldaemon off
/sbin/chkconfig hidd off
/sbin/chkconfig isdn off
/sbin/chkconfig kudzu off
/sbin/chkconfig lvm2-monitor off
/sbin/chkconfig mcstrans off
/sbin/chkconfig mdmonitor off
/sbin/chkconfig messagebus off
/sbin/chkconfig netfs off
/sbin/chkconfig nfslock off
/sbin/chkconfig pcscd off
/sbin/chkconfig portmap off
/sbin/chkconfig rawdevices off
/sbin/chkconfig restorecond off
/sbin/chkconfig rpcgssd off
/sbin/chkconfig rpcidmapd off
/sbin/chkconfig smartd off
/sbin/chkconfig xfs off
/sbin/chkconfig yum-updatesd off

不要コンソール無効に(さくらではDefault無効)

$ sudo vi /etc/inittab
#2:2345:respawn:/sbin/mingetty tty2
#3:2345:respawn:/sbin/mingetty tty3
#4:2345:respawn:/sbin/mingetty tty4
#5:2345:respawn:/sbin/mingetty tty5
#6:2345:respawn:/sbin/mingetty tty6

selinux を無効に(さくらではDefault無効)

$ sudo vi /etc/sysconfig/selinux
SELINUX=disabled

reboot before/after

$ free
             total       used       free     shared    buffers     cached
Mem:        502572     122084     380488          0      11488      60348
-/+ buffers/cache:      50248     452324
Swap:      2088440          0    2088440

$ free
             total       used       free     shared    buffers     cached
Mem:        502572      85824     416748          0       6736      31248
-/+ buffers/cache:      47840     454732
Swap:      2088440          0    2088440

その他設定

日本語設定

sudo vi /etc/sysconfig/i18n
LANG="ja_JP.UTF-8"
SYSFONT="latarcyrheb-sun16"

yum アップデート

sudo yum update

とりあえずこれだけ。

参考URL

スポンサーリンク
スポンサーリンク

コメント

  1. suVene より:

    車輪記事 / “[さくらVPS]初期設定(ssh, iptables, demon, etc) &#8211; suVeneのアレ” http://t.co/a9kvYu2a

  2. umeji より:

    @nise_nabe おすすめというか、サイトにのってたやつで、80とsshだけ使えればいんですけどね。。http://t.co/2It6z4YR

  3. imo より:

    sudo /etc/rc.d/initd/iptables restart
    のinitの部分が間違っています。
    init.dです

  4. suVene より:

    @imo
    ほんとだ、ありがとう。修正しました。

コメントをどうぞ

メールアドレスが公開されることはありません。