お世話になっております。
しゃまとんです。
VPSという存在を最近知り、気になっていたので使ってみることにしました。
さくらなどVPSのサービスは色々とありますが、なるべく費用がかからないようにしたいと思い、ServersManにしました。
契約したサービスはEntryプランなので、設定するためにCUIを使って構築していきます。
ServersMan@VPS
※今なら1ヶ月無料キャンペーンやってるそうです!(2013/08/01〜2013/09/30)
自分への備忘録も兼ねてWordPressによるボームページ公開までの手順を書いていこうと思います。
OSはCentOS 64bitにしました。
※加筆修正は必要があれば行なっていきます。
- 一般ユーザーの作成rootで直接ログインできる状態で今後作業を行うのは危険なので、一般ユーザーを作成します。
例として、hogeというユーザーを作成します。
12adduser hogepasswd hoge # このあとパスワード入力する、なにも出力されないが入力されている。 - sudoの設定
sudoは指定した一般ユーザに対して特定のroot コマンドを付与することで代理のroot ユーザとしてサーバーを管理させる事ができるようになります。毎回rootのログインをするのが手間なときに活用することができます。
1234rpm -qa | grep sudoyum install sudo # インストールされてなければsu -visudo
下記の該当箇所にhogeユーザーを追加すれば、sudoを実行できるようになります。
こちらのサイトが参考になりました。
CentOS:sudoを設定する
123## Allow root to run any commands anywhereroot ALL=(ALL) ALLhoge ALL=(ALL) NOPASSWD:ALL - vimをインストールする
私の環境では、もらった状態でvimはインストール済みでした。もし入っていなければインストールしましょう。
1yum -y install vim-enhanced - sshのポートを確認する。
serversmanのデフォルト設定はsshのポート:22を使用していないようですが、22はセキュリティ上使わないように設定しましょう。ポート番号の確認は/etc/ssh/sshd_configで確認できます。
rootでログインしてない場合はsudo vim /etc/ssh/sshd_configで確認してもよいです。
1Port 10022 # ここが22の場合、別のポートに変更する。
もし変更した場合はsshdの再起動を行いましょう。
1/etc/init.d/sshd restart - ssh接続を鍵認証に変更する。
接続を行なっている、自分のパソコンで鍵作成を行います。macならばターミナルが入っていますが、winの場合はTera Termなどを入れるとよいでしょう。
12345ssh-keygenGenerating public/private rsa key pair.Enter file in which to save the key (/Users/hoge/.ssh/id_rsa): # ファイルの出来る場所Enter passphrase (empty for no passphrase): # パスを入力Enter same passphrase again: # パスをもう一度入力
id_rsa.pubというファイルが出来上がるので、サーバー上の.sshディレクトリにauthorized_keysというファイル名に変更して格納しましょう。ターム上からコピペでも、ファイル転送でも良いです。.sshディレクトリがなければhogeユーザーのホームディレクトリに作成しましょう。
ファイルのパーミッション変更も忘れずに。
1234cdmkdir .sshchmod 700 ~/.sshchmod 600 ~/.ssh/authorized_keys
ここまで設定を行うと、鍵認証による接続が行えるはずです。
続いて、sshの設定も行いましょう。
123456789#LoginGraceTime 2mPermitRootLogin no # rootでのログイン禁止…省略…# To disable tunneled clear text passwords, change to no here!#PasswordAuthentication noPermitEmptyPasswords no # 空パスワードの禁止PasswordAuthentication no # パスワード認証しない
設定できたらsshdの再起動も忘れずに行いましょう。この際、誤ってログインができなくならないよう、接続されているタームを1つ以上用意しておきましょう。 - ファイアウォールの構築
まずは設定ファイルを作成します。
1vim /etc/sysconfig/iptables
設定するファイルはこちらのサイトの設定ファイルを使わせて頂きました。sshのポートは人によって違うかもしれないので注意してください。
123456789101112131415161718192021222324252627*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 --dport 5353 -d 224.0.0.251 -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-prohibitedCOMMIT
設定できたら、再起動しましょう。
1/etc/init.d/iptables restart - yumのアップデート
いわゆるOSのアップデートです。最後に忘れずに行いましょう。
12yum update # rootならsudo yum update # hoge(一般ユーザーなら)
参考にさせていただいたサイトでは、他にも確認や設定を行なっていますが、serversmanの環境では不要っぽいものもあるので、ここまで設定できれば初期設定はとりあえずOKだと思います。
次はApache(Webサーバー)のインストールと設定を行なっていきます。