Server

Conohaのサーバーを借りて、CentOS+MySQL+nginxの環境を作ってみた。

投稿日:2017年4月24日 更新日:

はじめに

こんにちは。

最近、個人的にConohaサーバーを借りてみました。
折角なので勉強用サーバーにしようと思い、環境を作ってみました。

はじめてであったため、色々不足している設定などもあるかと思いますが、その場合は指摘していただけると嬉しいです。
今回はRailsを入れる前の、nginx、MySQLのインストールまで記載したいと思います。

また、本ブログでは既に「WordPressのサーバー移設とnginxで無料SSLをやってみた」を公開しております。
こちらと似た内容もございますので、合わせてご覧ください。

環境

  • CentOSはConohaで用意されている7.3
  • nginx、MySQLは最新版をインストール(後述します。)

Conohaでサーバーをレンタル

https://www.conoha.jp/

こちらでサーバーをレンタルします。
このとき、OSのイメージも選択できるので、CentOS 7.3を選択しました。

また、秘密鍵も設定できるようですが、このときには作成しませんでした。

サーバーの初期設定

サーバーにrootユーザーでログイン

まずは最初から用意されているrootユーザーを使って設定をしていきます。
sshコマンドを使用してサーバーにログインしますが、ここでは対象サーバーのIPアドレスを「111.222.333.444」とします。

ユーザー作成

rootユーザー以外のユーザーを用意したいので、「hoge」という名前のユーザーを作成します。

また、visudoをしてwheelグループでsudo使用時の設定を確認します。
今回は面倒なので、sudo時にパスワードを尋ねないようにします。

「hoge」ユーザーに変更しておきます。

SSHログインを許可

サーバーを再起動します。

秘密鍵を生成

それでは鍵を作ります。
作成するファイル名などを聞かれますが、全て「conoha」とします。

ローカルに秘密鍵をコピー

まずは、生成した秘密鍵をコピーします。

ここで1度ログアウトして、ローカルPCに戻ります。

また、あらかじめ ssh_config に記載しておけば後々ログインが楽になります。

ログインできるかテストしてみます。

rootユーザーからのログインを禁止する

hogeユーザーでログインできることを確認できたら、rootユーザーを禁止しておきます。

再起動します。

SSHのポート番号を変更

CentOS7にはデフォルトでiptablesが入っていないようなので、インストールします。

ここで、iptablesを再起動します。

ポート番号を変更したことに伴い、 sshd_config を修正します。

ローカルの ssh_config も修正しておきます。

これで22番ポートからのログインができなくなりました。

iptablesの自動起動

nginxのインストール

設定ファイルを編集

yumでインストールしたいのですが、CentOS 7用のリポジトリを登録しておきます。

https://www.nginx.com/resources/wiki/start/topics/tutorials/install/?highlight=centos

インストール

あとはyumでインストールしますが、 enablerepo オプションを使用することで、設定ファイルを読み込みます。

インストールが完了したら、バージョンも確認しておきます。
そして、nginxを起動します。

111.222.333.444:80 にアクセスすると、nginxのデフォルトページが表示されるかと思います。

MySQLのインストール

インストール

CentOS7にはMariaDBがデフォルトでインストールされているので、そちらを削除します。

MySQLのyumリポジトリを登録します。

https://dev.mysql.com/downloads/repo/yum/

mysql-community-serverという名前のパッケージでインストールします。

インストールが完了したらバージョン情報も確認しておきます。
また、起動もさせておきます。

MySQLの初期設定

MySQL5.7ではrootユーザーには初期パスワードが設定されます。
ファイルは /var/log/mysqld.log になります。
そこで、 [Note] A temporary password is generated for root@localhost というメッセージを探して控えておきます。

mysql_secure_installationコマンドで初期設定をします。

このコマンドを実行すると、以下の内容を聞かれます。
(詳細は割愛します。)

  • root ユーザーのパスワードの変更
  • VALIDATE PASSWORDプラグインのインストール(y)
  • VALIDATE PASSWORDのポリシーに沿ったroot ユーザーパスワードの設定(8文字以上で、数字、特殊文字が入っていると良いようです。)
  • anonymous ユーザーの削除(y)
  • リモートホストからrootユーザーでログインするのを禁止する(y)
  • testデータベースの削除 (y)

設定ファイルも修正しておきます。

再起動してログインの確認もしておきます。

さいごに

今回は、nginxとMySQLをインストールするところまで記載しました。
本当は、Railsの勉強用にしたいので、次回はRubyやRailsのインストールも記載したいと思います。

blog-page_footer_336




blog-page_footer_336




-Server
-

執筆者:


comment

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

CAPTCHA


関連記事

DockerでRuby2.5、Rails5.2betaの環境をつくる【Compose file v3】

1 はじめに2 Dockerのインストール3 ファイルの準備3.1 Gemfile3.2 Gemfile.lock3.3 Dockerfile3.3.1 Ruby(Rails)3.3.2 MySQL3 ...

WordPressとRailsアプリケーションを相乗りさせた時の話

1 はじめに1.1 前提条件2 サブドメインを設定する3 Nginxの設定3.1 ステージング環境用の設定3.2 ステージング環境の設定を読み込ませる3.3 Nginxの再起動4 SSL化する4.1 ...

aws

EC2インスタンスのメモリとディスクのメトリクスモニタリングでハマったこと

1 はじめに2 メモリとディスクのメトリクスモニタリング3 ハマりポイント4 対応方法5 さいごに はじめに AWSのEC2インスタンスでディスク容量やメモリの使用率をCloudWatchで監視をする ...

CentOS6のLAMP環境でTLS1.2対応

1 はじめに2 業界団体レベルでのTLS1.2移行3 構成4 ssl.confを編集する5 ジェネレータ任せでOK6 設定変更の影響7 さいごに はじめに ものすごくひさしぶりにLAMP環境のSSL設 ...

InnoDBでauto_incrementの値が戻る?

はじめに 花粉症が辛い季節になりました。 花粉症も困りますが、本日はMySQL関連で困って調べたことをまとめたいと思います。 タイトルですが、InnoDBだとDBを再起動した際にauto_increm ...

フォロー

blog-page_side_responsive

2017年4月
 1
2345678
9101112131415
16171819202122
23242526272829
30  

アプリ情報

私たちは無料アプリもリリースしています、ぜひご覧ください。 下記のアイコンから無料でダウンロードできます。