さくらのVPSに挑戦1(環境構築編)
さくらのVPSを使って、2週間の無料お試し期間の間に設定等をしてみました。
ドットインストールにレッスンがあるので、それを見ながら進めていたのですが、途中ハマった箇所等があったのでメモしておきます。
環境等
ローカルの環境はUbuntu16を使います。
登録後、メールでパスワード等が送られてくるので、ブラウザでそこに記載されているコントロールパネルのURLにアクセスし、ログインします。
OSのインストール
標準OSの中の「CentOS6」を選択します。
管理ユーザー名が「root」であることを覚えておき、あとは好きなパスワードを設定します。
インストールを開始し、稼働中になれば完了です。
作業をしていってどうにもならなくった時に、OSの再インストールをしてやり直すというのを何度かしました(汗)
OSもいくつか試しましたが、インストール自体は30秒くらいで終わるので思ったよりも気軽に出来ます。
インストール後、アップデートをかけるわけですが、CentOS7とUbuntu16はアップデートの時間が結構長いのに対し、CentOS6はアップデートがないためすぐ使えます。(2018/2/12現在)
今回はセットアップの練習用だし、すぐにやり直し出来るCentOS6が良いと思いました。
あと、プライベートではUbuntuをメインに使ってるからサーバーもそうしたいと思ったのですが、サーバー関係の情報はCentOSの方が多いようです。
サーバーにログイン
何度かやり直しているせいか、秘密鍵があるとログイン出来ないようです。
秘密鍵を複数管理したり、設定し直すやり方は知らないので、簡単にするために先に削除しておきます。
/home/ユーザー名/.ssh/ の中にあるので、ディレクトリの中を空にしておく。
準備が整ったらローカルで端末を起ち上げ、
ssh root@xxx.xxx.xxx.xx
でログイン。xxxは記載されているIPアドレス
yesで答え、インストール時に設定したパスワードを入力するとログイン出来ます。
本来ならこの後、秘密鍵を作ったり作業用ユーザーを作ったりするのですが省略してrootのまま続行します。
ポート番号の変更
デフォルトでは22になっていて広く知られているため、適当な番号に変更します。1024~65535の間で設定可。
念の為にバックアップをとってから編集していきます。
sudo vim /etc/ssh/sshd_config
上の方に「#Port 22」と書いてある所があるので、#を外して有効にします。
この次の行に好きな番号を「追記」します。
ここの22を書き換えてもいいのですが、そうするとハマりました。
書き換えた番号のポートでログイン出来るようになるはずですが、ファイアウォールの方も同じ番号を開放しないとログイン出来ません。
なので、書き換えてしまうとログアウトした後に22も使えなくなり、ログイン出来なくなります・・・。
失敗したらOS再インストールすれば大丈夫です(笑)
とりあえずは新しい番号と22の両方を指定しておきます。
Port 22 Port 12345
保存して抜ける。
ファイアウォールの設定
こちらもバックアップをとってから編集していきます。
sudo vim /etc/sysconfig/iptables
dport 22というのが書かれている行をそのままコピーして、こちらも新しい番号を追記していきます。
先ほど設定したPort番号と、あとは80も同じように追記します。
80はhttp通信を行うポートで、これを開けておかないとブラウザから見ることが出来ません。これもハマった・・・。
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 12345 -j ACCEPT
保存して抜けたら、設定を有効にする。
service sshd restart service iptables restart
一旦exitで抜けて、ポート番号を指定してログイン出来るか確認する。
-pの後に先ほど設定したポート番号を入れる
ssh -p 12345 root@xxx.xxx.xxx.xx
ログインに成功したら完了。
まだポート22からアクセス出来る状態なので、
sshd_configとiptablesの22を削除し、設定を有効にすればOKです。
全国送料無料!IT書、ビジネス書、資格書が豊富なSEshop
アパッチのインストール
yum install httpd
chkconfig httpd on
service httpd start
インストール後に設定ファイルを変更するのですが、省略。このままでも動くようです。
アパッチが起動したらブラウザからIPアドレスを入力し、初期画面が表示されたら成功です。
/var/www/html/ のディレクトリにあるファイルを読むので、ここにindex.html等を入れてページを表示させることができます。
PHP7のインストール
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm yum install --enablerepo=remi,remi-php70 php php-mysqlnd php-gd php-xml php-xmlrpc php-mbstring php-mcrypt php-fpm php-opcache php-apcu -y
インストール後、設定ファイルを書き換えます。
/etc/php.ini
error_log = php_erros.log を /var/log/php_errors.log date.timezone = "Asia/Tokyo" mbstring.language = Japanese mbstring.internal_encoding = UTF-8 mbstring.http_input = auto mbstring.detect_order = auto expose_php = on を off
行頭のコメント(;)を外して有効にする、または書き換える。
保存したらhttpd再起動
service httpd restart
MySQL5.7のインストール
yum localinstall http://dev.mysql.com/get/mysql57-community-release-el6-8.noarch.rpm yum install --enablerepo=mysql57-community mysql-community-server chkconfig mysqld on service mysqld start
無事にインストール&起動が出来たらパスワードの変更をしていきます。
/var/log/mysqld.logに初期パスワードが書かれているので開いてメモっておく。
見づらいのですが、6行目にありました。
A temporary password is generated for root@localhost: ★★★
★の所がパスワードです。
なお、パスワードは大小の英文字、数字、特殊文字がそれぞれ1つ以上含み、8文字以上の長さが必要です。
mysql_secure_installation
で先ほどメモったパスワードでログインすると、新しいパスワードを聞かれるので入力、そして再度入力。
他はEnterを押して抜けます。
今回は Pass!555 にしてみました。
続いて /etc/my.cnf を編集していきます。
character-set-server=utf8 default-storage-engine=InnoDB [mysql] default-character-set=utf8
上記を追記して保存、
service mysqld restart
で再起動して設定を有効にします。
これで各種インストール&設定が終わったので次回はこれを使ってプログラムを書いていきたいと思います。
Amazon.co.jpアソシエイト