miyupaca log

2020-07-17 yps学習記録その1

2020/07/17

学習記録をブログで残していきたいと思いつつやれてなかったのですが、現役ITエンジニアのyotaroさんがtwitter上で無料で行うプログラミングスクール(yps)に参加することにしたので、その記録を残しておこうと思います。
web制作の知識から始め、その後はひたすらJavaScriptの学習をやっていた私ですが、AWS、Linux、データベース、バックエンドの技術を教われるということで、視野を広げるチャンスだと思い、食らいついていくことに決めました。
以下が今回のタスクです。

AWSのEC2上にCentOS7でインスタンス作成

初期設定の色々。先生に言われた通りの設定を行なってインスタンスを無事作成。

SSH接続、環境設定

ダウンロードしてきたキーペアの配置の際にターミナルの操作を行なったがディレクトリの指定だったりファイルのコピーだったりすごくシンプルな操作だったけど手こずった。ターミナルと仲良くならないといけないと痛感。
指示通りデスクトップのキーペアを.ssh以下にコピーして、権限の設定を行なって SSHログインをした。

cp ~/Desktop/XXX.pem ~/.ssh/
chmod 600 ~/.ssh/XXX.pem
ssh centos@xx.xx.xx.xx -i  ~/.ssh/XXX.pem

そしてSELinuxの状態を有効から無効に変更する。

sudo setenforce 0
sudo vi /etc/selinux/config

config内の「SELINUX=enforcing」を「SELINUX=disabled」に変更することで無効化できる。このときviの操作に慣れず少しアタフタ。ググりつつなんとか変更を行いました。最初うまく操作できず入力が乱れ何度も:q!で強制終了させましたorz

getenforce

でPermissiveが表示されれば設定の変更がうまくいっている。
まだSELinux無効化する理由はちゃんとわかっていないけど、ざっくりググった感じだと有効化しているとシステムが複雑になってしまいうまく動かなかったりするかららしい。。。

SSH接続、環境設定(つづき)

ここからは脳死でとりあえず設定を進めた。。クラッキングされないようにrootユーザーのSSHログイン禁止してポート番号変える対応!!

  • インバウンドルール編集で新しいポート番号を設定する
  • 設定をいじる

    sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.org
    sudo vi /etc/ssh/sshd_config

    configで以下の変更を行う。
    #Port 22 → Port XXXXX
    #PermitRootLogin yes → PermitRootLogin no
    2点変更して保存。その後以下のコマンド。

sudo sshd -t //エラーが表示されないことを確認
sudo systemctl restart sshd //sshd再起動
  • ターミナルを新しく開き新しいポート番号でログインしてみる

    ssh -p XXXXX centos@xx.xx.xx.xx -i ~/.ssh/XXX.pem
  • ログインできたらインバウンドルール編集でSSHの方を削除
  • ルールをアップデートする

    sudo yum update -y

とにかく分からないことだらけなので言葉が乱暴で備忘録メモみたいになっていますがご容赦を。。。

気づきなど

設定をするだけで四苦八苦しながら進めた。何やってるか分からないなりになんとか設定は完了でき、クラウドに入れたらしい!vi慣れるぞー。

学習中調べたこと

  • AWS EC2・・・Amazonが提供している仮想サーバー構築サービス。 OSを乗せた仮想環境をクラウド上に作ることができるすごいやつ。
  • キーペア・・・秘密鍵と公開鍵を合わせた2つの鍵のこと。(そして秘密鍵・公開鍵は言葉は知ってるけど意味曖昧だから別途調べる。。。)
  • クラッキング・・・コンピュータを不正に利用すること。ちなみによく聞くハッキングは本来悪い意味はなく、不正利用などの悪い意味を持つのはクラッキングらしい。
  • sudo・・・須藤さん。ではなく、コマンド単位で一時的にroot権限を使う方法。
  • setenforce・・・SELinuxの動作モードを一時的に変更するコマンド。
  • getenforce・・・SELinuxの動作モードを表示するコマンド。
  • SELinux・・・Secure-Enhanced Linux の略で、Linuxのセキュリティ機能を強化するための仕組み。

miyupaca

miyupacaの学習記録ブログです。