Sakura VPS Ubuntu 12.04 に Ruby on rails と PHP、 メールサーバ構築までまとめてみる。 その1

スポンサーリンク

何回やっても躓くサーバー建て。
勉強を兼ねてまとめてみることにする。

OSの再インストール

さくらの管理画面から、再インストールをクリック、Ubuntu 12.04 を選択してインストール開始
この辺は手順通りに行うだけだから説明不要

インストール完了後、下記2つのコマンドを入れて、GUI環境を構築
sudo tasksel install ubuntu-desktop
sudo shutdown -h now

日本語化

System Settings -> Language Support -> Install
日本語をインストールし、一番上にもってくる
Apply System Wide
再起動

Ultra VNCで繋げるようにする

デスクトップの共有を起動
それなりに設定する。
ユーザーアカウントで自動ログインをオンにする

ssh と winscpの設定

sudo apt-get install ssh
mkdir ~/.ssh
cd ~/.ssh
chmod 700 .
ssh-keygen
エンター3つ。
chmod 600 id_rsa*
cat ~/.ssh/id_rsa.pub
sudo gedit /etc/ssh/sshd_config
ポート番号を変更する
port 10022
rootでのログインを無効にしておく
PermitRootLogin no

sudo /etc/init.d/ssh restart

WinScpから接続(port 10022)し、作成したid_rsaとid_rsa.pubをクライアントに保存し、
サーバ上のid_rsa.pubファイルをauthorized_keysにリネーム
id_rsaは削除
sudo gedit /etc/ssh/sshd_config

#PasswordAuthentication yes
PasswordAuthentication no #パスワードでログインしない
#AuthorizedKeysFile %h/.ssh/authorized_keys
AuthorizedKeysFile %h/.ssh/authorized_keys #ログインアカウントの認証鍵ファイルの場所を指定

sudo sshd -t
で間違いがないか確認。何も表示されなければOK

sudo service ssh restart

ローカルに保存しておいたid_rsaをputtygenで conversion -> importkey
parameterをdsaに設定して、save private key
そのkeyファイルでwinscpの秘密キーに設定すれば完了。

SSLの設定

http://www.kazutoyo.com/ubuntu/?page_id=135

$ sudo su

# cd /etc/ssl
# cp openssl.cnf openssl.cnf.org
# gedit openssl.cnf

openss.cnfをいじる。

[ CA_default ]
dir = /etc/ssl/CA  # Where everything is kept   <42行目> ./demoCA → /etc/ssl/CA に変更します

default_days = 3650  # how long to certify for    <73行目> 365日→3650日(10年)にしておきます

# This is OK for an SSL server.
nsCertType = server  <176行目> #のコメントアウトを外します

# Some might want this also
nsCertType = sslCA, emailCA <248行目> #のコメントアウトを外します

[ proxy_cert_ext ]
………………
# This is OK for an SSL server.
nsCertType = server <281行目> #のコメントアウトを外します

# For normal client use this is typical
nsCertType = client, email <287行目> #のコメントアウトを外します

[ tsa_config1 ]
# These are used by the TSA reply generation only.
dir = /etc/ssl/CA  # TSA root directory <330行目> ./demoCA → /etc/ssl/CA に変更します

cd /etc/ssl
mkdir CA
cd /etc/ssl/CA
cat /dev/null > index.txt
echo ’01’ > serial
echo ’01’ > crlnumber
mkdir private
chmod 700 private
mkdir newcerts
mkdir crl

鍵の作成

openssl genrsa -out private/cakey.pem 1024

証明書の作成

openssl req -new -x509 -days 3560 -key private/cakey.pem -out cacert.pem

You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter ‘.’, the field will be left blank.
—–
Country Name (2 letter code) [AU]:JP
State or Province Name (full name) [Some-State]:Kanagawa
Locality Name (eg, city) []:Yokohama
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Private
Organizational Unit Name (eg, section) []: [エンターを入力します]
Common Name (eg, YOUR name) []:www.inter.com ホスト名(FQDN)を入力します
Email Address []:nagatomo@inter.com

サーバ証明書の作成

mkdir /etc/ssl/Server
cd /etc/ssl/Server
openssl genrsa -out private.pem 1024
openssl req -new -key private.pem -out request.pem

You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter ‘.’, the field will be left blank.
—–
Country Name (2 letter code) [AU]:JP
State or Province Name (full name) [Some-State]:Kanagawa
Locality Name (eg, city) []:Yokohama
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Private
Organizational Unit Name (eg, section) []: [エンターを入力します]
Common Name (eg, YOUR name) []:www.inter.com ホスト名(FQDN)を入力します
Email Address []:nagatomo@inter.com

Please enter the following ‘extra’ attributes
to be sent with your certificate request
A challenge password []: [エンターを入力します]
An optional company name []: [エンターを入力します]

CAで署名

cd /etc/ssl/Server
cp /etc/ssl/openssl.cnf ./.
openssl ca -config openssl.cnf -policy policy_anything -out ./cert-ca.pem -infiles request.pem

Using configuration from openssl.cnf
Check that the request matches the signature
Signature ok
Certificate Details:
Serial Number: 1 (0×1)
Validity
Not Before: Dec 29 13:45:53 2011 GMT
Not After : Dec 26 13:45:53 2021 GMT
Subject:
countryName = JP
stateOrProvinceName = Kanagawa
localityName = Yokohama
organizationName = Private
commonName = www.inter.com
emailAddress = nagatomo@inter.com
X509v3 extensions:
X509v3 Basic Constraints:
CA:FALSE
Netscape Cert Type:
SSL Server
Netscape Comment:
OpenSSL Generated Certificate
X509v3 Subject Key Identifier:
06:E0:9E:8F:53:0D:42:71:ED:59:8D:44:75:24:BB:B6:3A:38:1E:D3
X509v3 Authority Key Identifier:
keyid:A2:39:AC:D1:CA:6F:6F:7F:B2:D2:57:7E:2D:51:A7:8F:33:80:78:EB

Certificate is to be certified until Dec 26 13:45:53 2021 GMT (3650 days)
Sign the certificate? [y/n]:y [y と入力します]

1 out of 1 certificate requests certified, commit? [y/n]y [yと入力します]
Write out database with 1 new entries
Data Base Updated

メールサーバ証明書の準備

openssl x509 -in cert-ca.pem -out cert.pem
cat private.pem cert.pem > mail.pem
cd /etc/ssl/Server
openssl verify -CAfile /etc/ssl/CA/cacert.pem cert-ca.pem
openssl verify -CAfile /etc/ssl/CA/cacert.pem cert.pem

ca証明書 をインストール

cd /etc/ssl/CA
openssl x509 -inform pem -in cacert.pem -out ca.der -outform der

ここで作った ca.der を Windows のデスクトップにコピーしてインストールします
ca.der をダブルクリックして証明書のインストールを開始します
インポート先は 「信頼されたルート証明機関」 にインポートします
SSL設定完了

コメント

タイトルとURLをコピーしました