環境構築

CentOS7にGoogle Authenticatorを入れてSSHを2要素認証にする

2016-04-12 CentOS, 環境構築 ,

SSHの接続は鍵認証にしてはいるんだが、さらにセキュアにしたくGoogle Authenticator をいれてみたログ

今回すること

  • サーバーへのSSHログイン時に認証鍵とスマフォアプリによるワンタイムパスワードにする

事前準備

  • クライアントの公開鍵を用意しておく
    • macの場合ターミナルから ssh_keygenでもしてid_rsa.pubをつくっておけばOK
  • スマフォにワンタイムパスワードを扱えるアプリをいれておく
    • iijのSmartKeyが複数サーバーやサービスを管理もしやすくおすすめ

設定

CentOS7にGoogle Authenticatorをインストール

※ SSHでサーバーに接続しrootになっている状態とする

  • pamをbuildできるようにpam-develをインストール
# yum install pam-devel  
  • Google AuthenticatorをGitHubからもってくる
# cd /usr/local/src
# git clone https://github.com/google/google-authenticator.git
  • GitHubからもってきたソースでコンパイルしてインストール
# cd google-authenticator/libpam
# ./bootstrap.sh
# ./configure
# make
# make install
  • /usr/local/lib/securityに配置されるので、/usr/lib64/security/にもシンボリックリンクをおいておく
# ln -s /usr/local/lib/security/pam_google_authenticator.so /usr/lib64/security/pam_google_authenticator.so

sshログインするユーザーに公開鍵を登録しておく

予め作成したログイン用の公開鍵(id_rsa.pub)をログインするユーザーに登録しておく

以下はmacのターミナルで鍵を作成して登録した手順。すでに鍵認証でログインできているなら省略してよし

mac> ssh-keygen 
なにやらでてくるけどすべてエンター
mac> scp ~/.ssh/id_rsa.pub LOGIN_USER@HOSTNAME:
mac> ssh LOGIN_USER@HOSTNAME;
server$ cat id_rsa.pub >> ~/.ssh/authorized_keys
server$ chmod 600 ~/.ssh/authorized_keys

sshdの設定を修正し認証キーとGoogleAuthenticatorで認証されるようにする

※ 再度サーバーにrootログインしているものとする

  • sshd_configの修正
# vi /etc/ssh/sshd_config
以下を追記
-----
Protocol 2 ← SSH2のみとする
PermitRootLogin no          # Rootログインを禁止
PubkeyAuthentication yes    # 公開鍵認証を許可
PasswordAuthentication no   # パスワード認証を禁止
ChallengeResponseAuthentication yes                  # チャレンジレスポンス認証(ワンタイムパスワードとか用)を許可
AuthenticationMethods publickey,keyboard-interactive # 2要素認証として認証キー、チャレンジレスポンスを利用する
----
  • Google Authenticator用のPAMファイルの作成
# vi /etc/pam.d/google-auth
---
#%PAM-1.0
auth        required      pam_env.so
auth        sufficient    pam_google_authenticator.so try_first_pass
auth        requisite     pam_succeed_if.so uid >= 500 quiet
auth        required      pam_deny.so
----
  • sshdのPAMファイルの設定を変更してパスワードからGoogleAuthenticatorに切り替える
# vi /etc/pam.d/sshd
---
#%PAM-1.0
auth       required     pam_sepermit.so
#auth       substack     password-auth # コメントアウト
auth       substack     google-auth  # 追加
----
  • sshdのリスタート
# systemctl restart sshd

ログイン用ユーザーでGoogleAuthenticatorの設定

※SSHでサーバーにログインするユーザーに切り替えておく

$ google-authenticator

QRコードが表示されるので、SmartKey などの対応アプリでQRコードを撮影すれば登録ができる
他にもごちゃごちゃでてくるがyを押していけばOK

※ 最後に非常時用パスワード(6桁)が5つ表示されるのでこれはどこかにメモしておく。アプリが使えなくなった時などの緊急時に利用する。

ログインテスト

※ 新たにSSH接続を試す
※ テストする前にSSHを完全に切ってしまうと、上手くできていなかった場合、SSH接続が一切できなくなってしまうので注意

> ssh -i ~/.ssh/id_rsa LOGIN_USER@HOSTNAME
Verification code:

このVerification code:がでてきたら、アプリに表示されている6桁の数字を入力する。
ログインができたら成功。

感想

自分用のメモとして冗長にはなったが、これで2要素認証ができた。
今回は鍵認証とワンタイムパスワードでやっているが、パスワードとワンタイムパスワードなどの使い方もできる。
Amazon Linuxならyum だけでGoogle Autenticatorがいれられるし、2要素のログインは当たり前とおもったほうがいいんだろうな。

Vagrant boxのGuest additionsをアップデートする方法

2014-11-05 Virtualbox, 環境構築

久々の技術ネタの投稿

最近、Vagrantを多用しているがちょいちょい以下のようなエラーにぶち当たる

Failed to mount folders in Linux guest. This is usually because
the “vboxsf” file system is not available. Please verify that
the guest additions are properly installed in the guest and
can work properly. The command attempted was:

これに対する解決方法を自分用にメモ

現在のvbguestのバージョン確認

> vagrant vbguest –status

Vagrantのプラグイン vagrant-vbguestをインストールする

参考: https://github.com/dotless-de/vagrant-vbguest
以下のコマンドでインストール可能

> vagrant plugin install vagrant-vbguest
Installing the ‘vagrant-vbguest’ plugin. This can take a few minutes…
Installed the plugin ‘vagrant-vbguest (0.10.0)’!

Vagrant Upする(起きてないとアップデートできない)

> vagrant up

アップデート実行

> vagrant vbguest

vbguestのバージョンを再確認

> vagrant vbguest –status

更新されていれば完了!

MacPortsをアンインストールする

2013-08-11 mac, 環境構築

最近Virtualboxの環境で徹底することに心に決めたので、Macのローカルに入っているApacheやらを消し、MacPortsともおさらばすることにした。
以下のリンクに書いてある通りなんだけど、またやる機会がありそうなのでメモを残しておく。

公式ガイド)http://guide.macports.org/chunked/installing.macports.uninstalling.html
MacPortsでインストールしたすべてを削除

sudo port -fp uninstall --follow-dependents installed

MacPorts関連の設定ファイルを削除

sudo rm -rf \
>   /opt/local \
>   /Applications/DarwinPorts \
>   /Applications/MacPorts \
>   /Library/LaunchDaemons/org.macports.* \
>   /Library/Receipts/DarwinPorts*.pkg \
>   /Library/Receipts/MacPorts*.pkg \
>   /Library/StartupItems/DarwinPortsStartup \
>   /Library/Tcl/darwinports1.0 \
>   /Library/Tcl/macports1.0 \
>   ~/.macports

これで削除完了
まぁ、最近のMacのパッケージ管理は homebrew のほうが人気のようなので、MacPortsを使うことはもうないだろうと思いつつ。
作業を繰り返すことありえるので、残しておく。

CentOS6でPhingを使うためのメモ

2013-07-28 CentOS, PHP, 環境構築 , , , ,

CentOS6でPhingを使うためにインストールしたものメモ。

Pearをインストールして、chanelとか自動探査できるようにオプション設定と念のためアップグレートもかける

# yum install php-pear
# pear config-set auto_discover 1
# pear upgrade PEAR

基本のPHPUnitとPhingをインストールする

# pear install pear.phpunit.de/PHPUnit
# pear install pear.phing.info/phing

Xdebugも必要になるので入れておく

# pecl install xdebug
# vi /etc/php.ini 
[xdebug]
zend_extension=/usr/lib/php/modules/xdebug.so

これでどっかでテストコード作成して

# phing test

とかして通ればOK

MacのVirtualboxで共有フォルダをapacheのドキュメントルートに設定する際の注意

2013-07-28 CentOS, Tools, VMware, 環境構築 , , ,

MacでVirtualbox入れて、Web開発の開発環境を作る際に、ソースを編集するのはMacからやるが、WebサーバーはVirtualboxのApacheにやらせようとして、ちょっとハマった点をメモ。

 

状況

  • VirtualboxのゲストOSは、CentOS6系(VirtualboxのサイトからCentos6.0 系のBaseのイメージをDLしたもの)
  • フォルダのマウントは自動マウント。マウント名は、sites(/media/sf_sites)
  • もちろんVirtualBox Guest Additionsもインストール済み。

 

この時に、ApacheにVirtualhosts設定して起動させるために必要になった内容をメモ。基本的に、もってきたCentOSのイメージがガチガチだったのが原因なので。通常であれば、1の手順だけでいいはず。それでも、ダメだったら2,3も確認してみる。

 

1)Apacheのユーザーをvboxsfグループに追加しておく

# gpasswd -a apache vboxsf

2)SELinuxを無効に。しておかないとDocumentRootにアクセスできないと怒られる。

# setenforce 0 ← 一時的な停止
# vi /etc/selinux/config ← 恒久的な停止

SELINUX=disabled
3)iptableに80でのアクセス追加

# vi /etc/sysconfig/iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

# /etc/init.d/iptables restart

Chef-soloを勉強中 その1

2013-07-13 Virtualbox, 環境構築 ,

サーバーの自動構築ツール、Chefが熱いらしいのでちょっと勉強して見ることにした。
せっかくなので、自分が勉強していく記録をとってみる。

まずは、環境構築

Virtual Boxインストール後、CentOSのイメージをダウンロードして利用しはじめることにする。
イメージダウンロード元; http://virtualboxes.org/images/centos/
今回は、CentOS 6.0 base x86を利用した。

落としてきたイメージを解凍後、Virtualboxでイメージを起動するまえに設定からホストオンリーネットワークを有効にしておく。

ログイン後、VirtualBoxのイメージが独特なので以下のような環境設定をおこなった。

パスワード変更;
# passwwd

キーボードの一時的なUS化
# loadkeys us
キーボード恒久的な設定変更
# vi /etc/sysconfig/keyboard

KEYTABLE=”us”
MODEL=”pc105+inet”
LAYOUT=”us”
KEYBOARDTYPE=”pc”

ホストオンリーネットワーク側のNICの設定
# vi /etc/sysconfig/network-scripts/ifcfg-eth1

DEVICE=”eth1″
BOOTPROTO=”STATIC”
NM_CONTROLLED=”yes”
ONBOOT=”yes”
IPADDR=”192.168.56.10″
NETMASK=”255.255.255.0″
NETWORK=”192.168.56.0″

Gitのインストール
# yum install git

ここから、本格的にChefを使うための環境設定

Chefのインストール
# curl -L http://www.opscode.com/chef/install.sh | bash

これだけでChefはインストールできた。

あとは、簡単なパッケージインストール等を試してみた。

リポジトリのひな形取得

#  git clone git://github.com/opscode/chef-repo.git

knife の初期設定

# knife configure
– ひとまずすべてデフォルトのままで

クックブックの作成
# cd chef-repo
# knife cookbook create hello -o cookbooks

作成の確認
# ls -la cookbooks/hello/

レシピの編集
# vi cookbooks/hello/recipes/default.rb

JSONファイルを用意
# vi localhost.json

// localhost.json
{
“run_list” : [
“recipe[hello]”
]
}

設定ファイルsolo.rbを作成

# vi solo.rb

file_cache_path “/tmp/chef-solo”
cookbook_path [“/root/chef-repo/cookbooks”]

Chef soloコマンドの実行
# chef-solo -c solo.rb -j ./localhost.json

パッケージのインストール
# vi cookbooks/hello/recipes/default.rb

package “zsh” do
action :install
end

Chef-soloを実行

複数パッケージのインストール
# vi cookbooks/hello/recipes/default.rb

%w{zsh gcc make readline-devel}.each do | pkg |
package pkg do
action :install
end
end

とりあえず、パッケージをインストールするくらいの作業を試せたところで今日はここまで。

NIFTY Cloud C4SAでEC-CUBEをつかってみた。

2012-08-14 環境構築 ,

ニフティのPaaSサービスのC4SAが7月末にリリースされて、9月末まで無料でつかえるらしい。

EC-CUBEも簡単につかえるように用意されているらしいので、試してみた。

アカウントの作成は、FacebookやGithubのアカウントで簡単につくることができるらしいが、オプションや特典を利用するには@niftyIDを作る必要があるようだ。

http://c4sa.nifty.com/

ログインしてすぐの画面。キャンバス一覧が表示される。

 

新規キャンバスのボタンを押すと、新しく作成するキャンバスのコンテクストの選択画面が表示される。

基本的なPHPやRubyの環境だけでなく、WordpressやConcrete5などのコンテクストが用意されており、EC-CUBEも用意されている。

 

ここでEC-CUBEを選択すると、キャンパス名を入力する画面になるので、自分好みの適当なキャンパス名を付ける。

 

その後バックグラウンドでキャンパスが作成されるので、5分ほどまっておけば、作成が完了しましたと表示される。

キャンパス名の下に表示されているURLにアクセスすれば、おなじみのEC-CUBEのインストール画面が表示される。

 

普段通りインストールをすすめていくが、データベースの設定だけはすでにコンテクストで用意されているらしく、自動で入力されている。

 

後は特にかわった点もなく通常通りインストールが完了できた。所要時間は10分程度だろうか。

まだ、使い込んでいないので、わからないが、CLIツールやファイルアップロードツールなども用意されており本番環境は様子見だが、開発環境や試しにつかってみるぶんいは十分そう。

ちょっと気になった点は、Webサーバーが「nginx」のよう。

EC-CUBEのシステム要件(http://www.ec-cube.net/product/system.php)をみると、ApacheとIISになっているので、Nginxでは、何かうまくいかないことがあるかも。(.htaccessでなんかしている部分とかくらいだろうが・・・)

何にしろ、日本産のクラウドサービスにも、がんばってほしいので、これからに期待している。

 

CentOS6 に SVN1.7をいれる

2012-05-06 CentOS, svn, 環境構築

SVNのワークコピーといえば、サブディレクトリ毎に.svnという構成管理用のフォルダがつくられるという、とてつもなくイラッと来る仕様だったが、SVNも1.7から.svnディレクトリが、トップディレクトリだけになるという、すてきな仕様変更がはいっている。

その他にもいろんなアップデートが入っているようだが詳細は、リリースノートをみてくださいませ。

自分としては、これまでクライアントは1.7にプライベートも仕事も切り替えていたが、SVNサーバーはまだ切り替えれていなかった。SVNサーバーにしていたさくらのVPSを移行するのを機にせっかくだから、SVNサーバー側も1.7にしてみた。1.7のスピード面の改善などの効果はサーバーもクライアントも1.7になってこそらしい。

さくらのVPSは現在、CentOS6系がデフォルトだが、このままでは初期のSVNは1.6系。

1.7はYumでは提供されていないが、wandiscoというサイトからCentOS6用のSVN1.7インストーラーが配布されているので取得してインストールすれば、簡単に利用できる。(簡単だが会員登録が必要)

http://www.wandisco.com/subversion/download

ダウンロードしたファイルをSCPなどでインストールするサーバーに配置。
自分の場合は、SCPで転送後
/usr/local/src/ に配置

Rootで実行

# cd /usr/local/src/
# sh svn1.7_centos6_wandisco.sh

WANdisco Subversion Installer for CentOS 6
Please report bugs or feature suggestions to opensource@wandisco.com

Gathering some information about your system…

CentOS release 6.2 (Final)

CentOS version 6.x confirmed..

Checking your system arch

Installing for x86_64

Checking to see if you already have Subversion installed via rpm…

Subversion is already installed on the system.

Do you wish to replace the version of subversion currently installed with the WANdisco version?

This action will remove the previous version from your system

[y/n]

ようは既存のSVNと置き換えるかときいているようなので→y

Removing old packages…
Adding repository configuration to /etc/yum.repos.d/

—— Installing yum repo ——

Importing GPG key

—— Installing yum repo: Done ——

Installing Subversion 1.7.4

Loaded plugins: fastestmirror, security

Loading mirror speeds from cached hostfile

* epel: ftp.jaist.ac.jp

WANdisco | 951 B 00:00

WANdisco/primary | 8.8 kB 00:00

WANdisco 37/37

Setting up Install Process

Resolving Dependencies

–> Running transaction check

—> Package subversion.x86_64 0:1.7.4-1 will be installed

—> Package subversion-perl.x86_64 0:1.7.4-1 will be installed

—> Package subversion-python.x86_64 0:1.7.4-1 will be installed

—> Package subversion-tools.x86_64 0:1.7.4-1 will be installed

–> Finished Dependency Resolution

Dependencies Resolved

===============================================================================================================

Package Arch Version Repository Size

===============================================================================================================

Installing:

subversion x86_64 1.7.4-1 WANdisco 1.8 M

subversion-perl x86_64 1.7.4-1 WANdisco 941 k

subversion-python x86_64 1.7.4-1 WANdisco 636 k

subversion-tools x86_64 1.7.4-1 WANdisco 562 k

Transaction Summary

===============================================================================================================

Install 4 Package(s)

Total download size: 3.9 M

Installed size: 19 M

Downloading Packages:

(1/4): subversion-1.7.4-1.x86_64.rpm | 1.8 MB 00:00

(2/4): subversion-perl-1.7.4-1.x86_64.rpm | 941 kB 00:00

(3/4): subversion-python-1.7.4-1.x86_64.rpm | 636 kB 00:00

(4/4): subversion-tools-1.7.4-1.x86_64.rpm | 562 kB 00:00

—————————————————————————————————————

Total 12 MB/s | 3.9 MB 00:00

Running rpm_check_debug

Running Transaction Test

Transaction Test Succeeded

Running Transaction

Installing : subversion-1.7.4-1.x86_64 1/4

Installing : subversion-perl-1.7.4-1.x86_64 2/4

Installing : subversion-tools-1.7.4-1.x86_64 3/4

Installing : subversion-python-1.7.4-1.x86_64 4/4

Installed:

subversion.x86_64 0:1.7.4-1 subversion-perl.x86_64 0:1.7.4-1 subversion-python.x86_64 0:1.7.4-1

subversion-tools.x86_64 0:1.7.4-1

Complete!

Would you like to install apache and the apache SVN modules?

[y/n]
ApacheようのSVNモジュールも入れるか聞いているようなので→y

Installing apache and subversion modules
Loaded plugins: fastestmirror, security

Loading mirror speeds from cached hostfile

* epel: ftp.jaist.ac.jp

Setting up Install Process

Resolving Dependencies

–> Running transaction check

—> Package httpd.x86_64 0:2.2.15-15.el6.centos.1 will be installed

–> Processing Dependency: httpd-tools = 2.2.15-15.el6.centos.1 for package: httpd-2.2.15-15.el6.centos.1.x86_64

–> Processing Dependency: apr-util-ldap for package: httpd-2.2.15-15.el6.centos.1.x86_64

—> Package mod_dav_svn.x86_64 0:1.7.4-1 will be installed

–> Running transaction check

—> Package apr-util-ldap.x86_64 0:1.3.9-3.el6_0.1 will be installed

—> Package httpd-tools.x86_64 0:2.2.15-15.el6.centos.1 will be installed

–> Finished Dependency Resolution

Dependencies Resolved

===============================================================================================================

Package Arch Version Repository Size

===============================================================================================================

Installing:

httpd x86_64 2.2.15-15.el6.centos.1 updates 813 k

mod_dav_svn x86_64 1.7.4-1 WANdisco 92 k

Installing for dependencies:

apr-util-ldap x86_64 1.3.9-3.el6_0.1 base 15 k

httpd-tools x86_64 2.2.15-15.el6.centos.1 updates 70 k

Transaction Summary

===============================================================================================================

Install 4 Package(s)

Total download size: 989 k

Installed size: 3.3 M

Downloading Packages:

(1/4): apr-util-ldap-1.3.9-3.el6_0.1.x86_64.rpm | 15 kB 00:00

(2/4): httpd-2.2.15-15.el6.centos.1.x86_64.rpm | 813 kB 00:00

(3/4): httpd-tools-2.2.15-15.el6.centos.1.x86_64.rpm | 70 kB 00:00

(4/4): mod_dav_svn-1.7.4-1.x86_64.rpm | 92 kB 00:00

—————————————————————————————————————

Total 4.1 MB/s | 989 kB 00:00

Running rpm_check_debug

Running Transaction Test

Transaction Test Succeeded

Running Transaction

Installing : httpd-tools-2.2.15-15.el6.centos.1.x86_64 1/4

Installing : apr-util-ldap-1.3.9-3.el6_0.1.x86_64 2/4

Installing : httpd-2.2.15-15.el6.centos.1.x86_64 3/4

Installing : mod_dav_svn-1.7.4-1.x86_64 4/4

Installed:

httpd.x86_64 0:2.2.15-15.el6.centos.1 mod_dav_svn.x86_64 0:1.7.4-1

Dependency Installed:

apr-util-ldap.x86_64 0:1.3.9-3.el6_0.1 httpd-tools.x86_64 0:2.2.15-15.el6.centos.1

Complete!

Installation complete.

You can find the subversion configuration file for apache HTTPD at /etc/httpd/conf.d/subversion.conf

By default, the modules are commented out in subversion.conf.

To enable the modules, please edit subversion.conf and remove the # infront of the LoadModule lines.

You should then restart httpd (/etc/init.d/httpd restart)

これでインストール完了っぽい。

あとは、Apacheのモジュールを有効にして、Subversionのconfを有効にしてapache再起動せよということらしい。

自分は実際には色々とSVN用の設定は別途変更する予定だが、わすれる前に基本設定だけしておこう。

# vi /etc/httpd/conf/httpd.conf

mod_dav.so のコメントアウトを外す

——————–

LoadModule dav_module modules/mod_dav.so

——————–

# vi /etc/httpd/conf.d/subversion.conf

———————–

# Needed to do Subversion Apache server.
LoadModule dav_svn_module modules/mod_dav_svn.so

# Only needed if you decide to do “per-directory” access control.

LoadModule authz_svn_module modules/mod_authz_svn.so

————————-

文法チェックをおこなって問題がなければ、リスタート

# /etc/init.d/httpd configtest

# /etc/init.d/httpd restart

インストールされているバージョンをチェック

# svn –version
svn, version 1.7.4 (r1295709)

compiled Mar 5 2012, 14:55:30

Copyright (C) 2012 The Apache Software Foundation.

This software consists of contributions made by many people; see the NOTICE

file for more information.

Subversion is open source software, see http://subversion.apache.org/

The following repository access (RA) modules are available:

* ra_neon : Module for accessing a repository via WebDAV protocol using Neon.

– handles ‘http’ scheme

– handles ‘https’ scheme

* ra_svn : Module for accessing a repository using the svn network protocol.

– with Cyrus SASL authentication

– handles ‘svn’ scheme

* ra_local : Module for accessing a repository on local disk.

– handles ‘file’ scheme

無事に、1.7.4になっている。ステキ。

 

あとは、既存のSVNからDUMPしてLoadができるかは別な機会に試してみます。

 

さくらのVPS移行備忘録(初期設定)

2012-05-06 CentOS, 環境構築 ,

さくらのVPSを新しく契約したので、古いVPSから色々ともってくる。
青年会のメルマガ配信用のCGIを動かしていたりしたので結構面倒・・・

とりあえず、DNS周りの設定やら、サーバー設定等その他メモっておく。

なお、さくらのVPSのOS初期設定も公開されているので参考にする。

 

OSセットアップ情報; http://support.sakura.ad.jp/manual/vps/ossetup.html

■DNS系

  • Aレコードの設定
    → 新VPSに楽につなげるように利用しているドメインに新VPSのIPでAレコードを追加しておく
  • SPFレコードの設定
    → 同じく新VPSからメール送信されるだろうドメインのSPF(TXT)レコードを修正
    v=spf1 include:_spf.google.com +ip4:新VPSのIP/32 ~all
    同じドメインで、GoogleAppsを利用しているので、↑のようにSPFレコードに新しいVPSのIPを追記する
  • 逆引き設定の変更
    → さくらのVPSコントロールパネルからホスト名を先程登録したAレコードに変更

■OSのホスト名を修正

# vi /etc/sysconfig/network

————————

HOSTNAME=sakura2.eumyang.net

————————

# vi /etc/hosts

————————–
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4 sakura2.eumyang.net
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6 sakura2.eumyang.net

————————–

 

■環境の文字コードを日本語UTF8にする

# vi /etc/sysconfig/i18n

———————————

LANG=”ja_JP.UTF-8″

———————————-

■一度再起動して環境が設定通りになっているか確認

# shutdown -r now

■ユーザーの作成
rootユーザーしかいないのでwheelグループのユーザーを追加しておく。

# useradd -g wheel newuser -p
ぱすわーど入力
再度ぱすわーど入力

newsuser でログインできるかテストしておく。

■SSHの鍵作成
SSHを鍵認証で使用するようにする。
まずはローカルで鍵の作成。ここではsakura2_rsaとして作成

$ ssh-keygen -f sakura2_rsa -t rsa
Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase): ぱすわーど入力
Enter same passphrase again: もっかいぱすわーど入力
Your identification has been saved in sakura2_rsa.
Your public key has been saved in sakura2_rsa.pub.

できたsakura2_rsa.pub をさくらのVPSに転送

# scp sakura2_rsa.pub newuser@新VPSのIP:

新VPSサーバーに接続して公開鍵を登録

$ cat sakura2_rsa.pub >> .ssh/authorized_keys

権限を修正

$ chmod 600 .ssh/authorized_keys

登録したらゴミは削除

$ rm sakura2_rsa.pub

パスワードでのログインを禁止する

# vi /etc/ssh/sshd_config
——-
PasswordAuthentication no
——-
SSHを再起動
# /etc/init.d/sshd restart

これで登録した秘密鍵以外からのSSH接続が禁止完了

■yumのアップデート
前のVPSを契約したころは、デフォルトではyumがはいっていなかったのだが、今はyumが用意されていた。
とりあえず、アップデートだけかましておく

# yum update

■PHPやMySQLくらいはいれておく

自分のメイン言語は完全にPHPなので、PHPとMySQLくらいは基本でいれておく。

# yum install php

5.3.3-3.el6_2.6 がはいった。

 # yum install mysql-server

5.1.61-1.el6_2.1がはいった

もちろんphp-mysqlもいれておく

# yum install php-mysql

5.3.3-3.el6_2.6 がはいった

わすれんうちに、MySQLの初期設定くらいはしておく
# /etc/init.d/mysqld start
#/usr/bin/mysql_secure_installation
■ApacheとMySQLくらいは自動起動にしておく

# chkconfig –list httpd
httpd               0:off     1:off     2:on     3:on     4:on     5:on     6:off
# chkconfig –list mysqld
mysqld              0:off     1:off     2:off     3:off     4:off     5:off     6:off
# chkconfig mysqld on
# chkconfig –list mysqld
mysqld              0:off     1:off     2:on     3:on     4:on     5:on     6:off

さくらのVPSを再契約した

2012-05-06 環境構築

これまで利用していたさくらのVPSの512MBプランが4月からなくなり、
同じ値段で1Gが使えるようになった。
ただ、自動マイグレーション的なものはないので、他作業で移行になるのだが、
5月20日までに申しこめば、新プランが1ヶ月無料で使えるらしく、申し込んでみた。

しかし、1ヶ月無料になる期間が新プランの初期2ヶ月のあとの1ヶ月無料。
万が一請求されていたとしても気づかなさそうなタイミング。
初回請求の2ヶ月分の料金が1ヶ月分になるとかなら、安心して申し込めたような気もする。

オンラインサインアップでログインして新しくVPSを申し込む
申し込み後、これまで利用していた、さくらのVPSの解約申請
すぐさま、新しいVPSの本契約を開始してみた。

しばらくするとメールが5通。仮申込→本申し込み、解約受付とたくさんですね。
*  お申込受付完了のお知らせ
* [さくらのVPS] 仮登録完了のお知らせ
 → これに新VPSのRootの仮パスワードがついてくる
* クレジットカードによるお支払いについてのお知らせ
* [解約申請] 手続きの確認
* 解約手続き完了のお知らせ

解約申請の手続き確認メールと同時に、手続き完了メールがとどいたのだが、これ分ける必要あったのだろうか・・・
なんか、トラブルのある際には、完了メールが遅れてくるのかな?

新しく申し込み→解約 まではひと通りできたので、あとはのちのちに1ヶ月無料が提供されるのを注意深くまってみます。

しかし、サーバー移行ってやっぱ面倒だな・・・