ITスキルを身につけて、キャリア・チェンジを目指しているそこのあなた。プログラミングスクールに通うことを検討していませんか?
この記事では、侍エンジニア塾に入って心底良かったと思っている僕が、塾でのプログラミング学習内容をレポートします。
侍エンジニア塾のプログラミング学習ってどんな感じ?他のスクールとの違いは?
と気になっている方は是非参考にしてください。
第7週の学習内容
- WordPressセキュリティ対策(SSH設定)
- WordPress復旧作業(ドメイン初期化)
プロと一緒に学習。安心感がハンパない。
第7週目は、WordPressのセキュリティ対策と復旧作業を手取り足取り教えてもらいました。
予定では、「Laravel」を学習するつもりだったのですが、このブログが、「ウイルスの攻撃」に遭ってしまい、サイト閉鎖されたのです。
なぜ僕のブログは、ウイルスに犯されてしまったのでしょうか・・・。
理由は、脆弱性(ぜいじゃくせい)。レンタルサーバーの「SSH設定を行っていなかった」のです。
暗号化通信のことです。自分のパソコンと、レンタルサーバーでデータをやり取りするときに、通信内容を暗号化しないと、外にバレバレ。ログインパスワードなどもバレて、やられ放題です。詳しくは、このサイトで
だから、学習内容を急遽変更して、WordPressのセキュリティ対策と、復旧作業を行いました。
とにかく手取り足取りでした。僕のPC画面をインストラクターと共有しながら、「まずSSH設定をクリックして」「次はこのポート番号をコピペして、ここに貼り付けて」という感じの遠隔操作でした。
でも、それで良かったです。
SSH設定や復旧作業は、どんなにマニュアルを読んでも、素人の僕にとっては本当にこれで間違いないのかどうか不安なんですよね。1つでも間違ったらPCやデータが全て壊されてしまうような気がして。。。
でも、プロのインストラクターが一緒だと、「安全保証」感がハンパなく大きいです!とにかく、教えてもらうがままに作業を進めました。
ついでに、このSSH設定(セキュリティ通信)の概念を簡単に説明してくれるサイトも紹介してくれました。
おかげさまで、サイトも復旧しましたし、SSHの基本的概念も勉強になりました。
セキュリティ対策の設定は、プロと一緒に作業できると安全・安心。
侍エンジニア塾では、希望を出せば、学習内容を変更してくれる。
まとめ
今回のレポートは以上です。侍エンジニア塾のレッスンは、
①学習内容の変更が柔軟にできること
②プロと一緒に作業できることは安心感があること
が伝わっていたら嬉しいです。
以下は、今回学習できた内容の備忘録なので、同じ境遇にある方や、興味がある方は読んでみてください。
WordPressセキュリティ対策(SSH設定)
SSH設定手順
- サーバーパネルから、アカウント→SSH設定をクリック。
- SSH設定をON。
- 公開鍵認証用鍵ペアの生成のパスフレーズを入力し、確認画面へ進むボタンを押す。
※パスフレーズはスクショなどで必ず保管! - 秘密鍵がダウンロードされるので、自分のパソコンのローカルディスクに.sshフォルダを作って保存。
WordPress復旧作業(ドメイン初期化)
復旧作業の手順
- Cyberduckでバックアップ
- ドメイン初期化
- WordPress再インストール
- バックアップファイルを戻す
- データベースと紐付け
①Cyberduckでバックアップ
SSH設定は終わっているので、FTPソフトを使ってバックアップを取る。
上記の項目を全て埋めて、接続を押せばSSH通信ができます。
バックアップを取るフォルダは3つ。
- wp-content/thems(ワードプレステーマ)
- wp-content/plugins(プラグイン)
※悪さ(ウイルス)をしているプラグインはとりません。 - wp-content/uploads(画像イメージなど)
これだけでした。
②ドメイン初期化
WordPressのマニュアル通りに進めます。
③WordPress再インストール
WordPressのマニュアル通りに進めます。
④バックアップファイルを戻す
CyberDuckでバックアップしたファイルを、新しくインストールしたWordPressファイルに戻す。
⑤データベースと紐付け
WordPress簡単インストールでは、データベースも新しくなっているので、以前使っていたデータベースを使用するように変更する。
/tozan-miyage.com/public_html/wp-config.phpを開く
// ** MySQL 設定 - この情報はホスティング先から入手してください。 ** //
/** WordPress のためのデータベース名 */
define( 'DB_NAME', 'この部分を以前のDB名にする' );
/** MySQL データベースのユーザー名 */
define( 'DB_USER', 'この部分を以前のユーザー名にする' );
/** MySQL データベースのパスワード */
define( 'DB_PASSWORD', 'この部分を以前のパスワードにする' );