Wizard In The Market
システムトレードの魔術師

*

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

公開日: : 最終更新日:2015/01/13 PHP, Rails, Ruby, Ubuntu

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

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設定完了

にほんブログ村 為替ブログへ 
Fx-Kirin

About Fx-Kirin

2009年10月にFXを開始、翌年2010年5月から脱サラをしてFX業界に専念。 2012年10月頃から本格的に勝ち始め、一月で資産を倍にする、2年半月間負けなし等、安定した収支で2013年11月に生涯FX収支が1億を超える。 投資スタイルはシステムトレード。プログラミングの知識がほぼない状態から、独学で自分がしたいと思うことであればほぼ実現することが可能なレベルまで成長。好きな言語はRuby, Python。必要となればC++からVBA、Pascal等なんでも行う。MT4/MT5のプログラミングも得意。 2011年にはFXで稼いだ資金をもとにシンガポールに移住し、留学も兼ねて起業をチャレンジするほど、ビジネスを興すことに熱意がある。国内の業者を主に使い始めたことから、2012年に帰国。零細株式会社経営中。

Adsense

  • このエントリーをはてなブックマークに追加
  • Pocket
  • 63 follow us in feedly

関連記事

no image

Railsの日本語化

前もやったけど、メモってなかったからメモhttp://hajimete-ruby.jugem.jp/?cid=7gem

記事を読む

no image

RubyでActiveRecordをMySQLの管理ライブラリとして使う (Railsは使わない)

Windows7 64bitRuby192 mingw32Rails3 インストール済 Ruby on Rails

記事を読む

no image

rcov によるカバレッジテスト

これもとっても素敵仕様テスト結果をhtmlで分かりやすくまとめてくれる。http://webos-goodies.jp/

記事を読む

chmod で やらかしてしまったときの対処法

メモ書きです。 find | xargs とかを普通にやってしまうと、すぐに arguments too long

記事を読む

no image

テスト駆動開発を使おう テストできるように設計する

勉強を始めてるのでノートがてらまとめていこうと思う。 テスト稼働開発(TDD, Test-Driven Develop

記事を読む

no image

require と loadの違い

require は同じファイルは一度だけしかロードしませんが、 load は無条件にロードします。また、requir

記事を読む

no image

CSSファイルにRailsコマンドを書きたいとき

拡張子に.erbをつける。

記事を読む

no image

Ruby on Rails を Radrails on Eclipse で動かすとターミナルの表示がバグる

Aptana Studio 3のスタンドアローン版を使えば直るAptana StudioのServerを使いたければ、

記事を読む

no image

Send Mail with ActionMailer using Postfix and Openssl through SMTP

If you want to send Email with ActionMailer through smtp un

記事を読む

no image

railsアプリとphpを共存するためには。

http://ameblo.jp/uriyo/entry-10698197670.html指定フォルダ下をphpのディ

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Adsense

Python 2, Python 3 で更新したファイルを調べてreloadするパッケージを作った。

pdbでのデバッグにはreload機能がない IPythonには優秀なautorelaod機能

Python での Log 収集

プロジェクトが大きくなるにつれて、プログラムの不備を見つけるのにログの構成、ログデザインを考える

Flast-Sockets + redis-py で簡単 Websocket サーバー実装

参考にしたサイト Using WebSockets on Heroku with Python

Rust で Python の拡張ライブラリ作成 と numpy との性能比較

この記事は Python Advent Calendar 5日目の記事です。遅れてすみません。

システムトレードを始める前に知っておきたかったこと

今日の勉強会で発表してきました。nbviewer に共有しておきます。 システムトレードを始め

→もっと見る

PAGE TOP ↑