[RUBY] Procédure de déploiement sur AWS ① Paramètres d'environnement réseau

J'écrirai une procédure de déploiement en utilisant AWS, ce qui est difficile pour les débutants

AWS a beaucoup de changements d'interface utilisateur, donc J'écris dans l'actuel (2019/10), (AWS modifie fréquemment son interface utilisateur, elle peut donc paraître un peu différente selon la version ...)

Contenu cette fois [** Préférences réseau STEP1 **](https://qiita.com/tksh8/items/9a8e88a777a3a4ee7a09#step1-%E3%83%8D%E3%83%83%E3%83%88%E3%83% AF% E3% 83% BC% E3% 82% AF% E7% 92% B0% E5% A2% 83% E8% A8% AD% E5% AE% 9A)

  1. Créer un VPC
  2. Créez un sous-réseau
  3. Créez une passerelle Internet
  4. Création d'une table de routage
  5. Liaison avec le sous-réseau
  6. Créez un groupe de sécurité

[** Paramètres STEP2 EC2 **] (https://qiita.com/tksh8/items/9a8e88a777a3a4ee7a09#step2-ec2%E3%81%AE%E8%A8%AD%E5%AE%9A)

  1. Créez une instance avec EC2
  2. Attribution d'adresse IP élastique
  3. SSH dans l'instance

Contenu de la prochaine fois [** STEP3 ou version ultérieure Procédure de déploiement sur les paramètres d'environnement du serveur AWS ② (instance EC2) **] (https://qiita.com/tksh8/items/3d2f2eeaf0e8de291b6d)

* Le serveur ici est une instance AWS EC2 (Amazon Linux).

Paramètres de l'environnement réseau STEP1

1. Créer un VPC

VPC (un réseau virtuel privé qui est logiquement séparé sur le cloud AWS)

https://aws.amazon.com/ Connectez-vous avec Amazon Web Services

Définissez la région dans l'en-tête sur Tokyo et Recherchez «VPC» et accédez à «VPC»

スクリーンショット 2019-10-01 10.13.39.png

Cliquez sur [Créer un VPC] à partir de VPC dans le menu latéral. スクリーンショット 2019-09-29 20.26.18.png

Parce que ce sera un écran de création Cette fois, définissez comme ci-dessous et cliquez sur [Créer].

・ Étiquette de nom:testVPC
・ Bloc d'adresse CIDR IPv4:10.0.0.0/16
・ Bloc d'adresse CIDR IPv4:Aucun blocage
・ Location:Défaut
スクリーンショット 2019-10-01 10.18.41.png

2. Créez un sous-réseau

Un sous-réseau est un groupe de réseaux qui divise initialement le bloc CIDR créé par le VPC.

Le sous-réseau cette fois est configuré pour créer deux sous-réseaux pour placer [RDS].

Cliquez sur [Créer une sous-section] dans le sous-réseau dans le menu latéral. スクリーンショット 2019-09-29 20.30.39.png

Parce que ce sera un écran de création Définissez comme ci-dessous et appuyez sur [Créer]

・ Étiquette de nom:testSubnet
・ VPC:Sélectionnez celui que vous avez créé plus tôt
・ Zone de disponibilité:ap-northeast-1a
・ Bloc CIDR:10.0.0.0/24

Créez-en un autre de la même manière

・ Étiquette de nom:testSubnet2
・ VPC:Sélectionnez celui que vous avez créé plus tôt
・ Zone de disponibilité:ap-northeast-1c
・ Bloc CIDR:10.0.1.0/24
68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f3335353531372f34633731633536382d346231352d653262622d636665612d6333373631643964363634642e706e67.png

3. Créez une passerelle Internet

Qu'est-ce qu'une passerelle Internet (la passerelle requise pour communiquer avec Internet)

Depuis la passerelle Internet dans le menu latéral Cliquez sur [Créer une passerelle Internet]

スクリーンショット 2019-09-29 20.34.02.png

Parce que ce sera un écran de création Définissez comme ci-dessous et appuyez sur [Créer]

Étiquette de nom:testGateway
68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f3335353531372f30303636333333392d383839352d643333632d343637332d6362376530643365353366632e706e67.png

Appuyez sur [Action] puis sur [Joindre au VPC]. 68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f3335353531372f63333666633763662d313638622d626136392d306135652d3365326235653836303433642e706e67.png

Définissez comme ci-dessous et appuyez sur [Joindre]

VPC:Sélectionnez celui que vous avez créé plus tôt
68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f3335353531372f66303032333238392d653838612d326264652d306337632d3661323536666230373264312e706e67.png

4. Création d'une table de routage

La table de routage (qui définit les règles de communication des instances du sous-réseau)

Appuyez sur [Créer une table d'itinéraire] dans la table d'itinéraire dans le menu latéral.

68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f3335353531372f37616534643065332d323862302d613333372d346132632d6630623434383936643238352e706e67.png

Parce que ce sera un écran de création Définissez comme ci-dessous et appuyez sur [Créer]

Étiquette de nom:testTable
VPC:Sélectionnez celui que vous avez créé plus tôt
68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f3335353531372f32623430326161332d633761652d666461622d616163622d6130326265323933383230652e706e67.png

Avec la table de routage créée sélectionnée Cliquez sur l'onglet du bas "Route"> "Edit Route" et appuyez sur [Add Route]

68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f3335353531372f35336331383337372d353137662d613265342d313139352d3263613730396130306661632e706e67.png

Définissez comme ci-dessous et appuyez sur [Enregistrer la règle]

Destination:0.0.0.0/0
cible:Sélectionnez Internet Gateway et sélectionnez l'ID de passerelle que vous avez créé précédemment
68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f3335353531372f63626462313066362d656534352d616239312d613164612d6534363733636333313136662e706e67.png

5. Liaison avec le sous-réseau

Un sous-réseau est un groupe de réseaux qui divise initialement le bloc CIDR créé par le VPC.

→ Sélectionnez "Sous-zone" à gauche
→ Sélectionnez le sous-réseau dont vous souhaitez modifier l'association
→ Sélectionnez le tableau des itinéraires en bas de l'écran
→[Modification des associations de table de routage]presse
スクリーンショット 2019-10-01 10.35.17.png

→ Sélectionnez l'ID de table de routage que vous avez créé précédemment
→[sauvegarder]presse
スクリーンショット 2019-10-01 10.39.06.png

6. Créez un groupe de sécurité

Un groupe de sécurité est un pare-feu virtuel qui résume les règles de sécurité.

Menu d'accompagnement Dans Sécurité> Groupe de sécurité> Cliquez sur [Créer un groupe de sécurité] スクリーンショット 2019-09-29 21.07.37.png

Définissez comme ci-dessous et appuyez sur [Créer]

Nom du groupe de sécurité:testSecurityGroup
La description:そのセキュリティグループのLa description
VPC:Sélectionnez celui que vous avez créé plus tôt
スクリーンショット 2019-10-01 10.43.36.png

Cliquez sur [Modifier la règle] de la règle entrante en bas de l'écran, puis cliquez sur [Ajouter une règle]. Définissez comme ci-dessous et appuyez sur [Enregistrer la règle]

type:SSH
La source:Mon IP
スクリーンショット 2019-09-30 21.23.54.png

Paramètres STEP2 EC2

Si vous souhaitez utiliser DB sur AWS

-Créer une instance avec EC2
・ Utilisez RDS
* Cependant, l'utilisation de RDS est payante, donc
Si vous ne l'utilisez pas, créez la base de données directement sur le serveur.

Il existe deux types de méthodes. Cette fois Créer une instance dans EC2 (créer une base de données directement sur le serveur) Je ferai principalement

1. Créez une instance avec EC2

Si l'instance reste active Vous serez facturé, donc si vous ne l'utilisez pas Il est recommandé de le mettre en état d'arrêt

Recherchez et accédez à "EC2" dans AWS Management Console

スクリーンショット 2019-09-26 23.58.51.png

Cliquez sur [Créer une instance] depuis l'instance dans le menu latéral.

スクリーンショット 2019-09-27 0.02.03.png

Cliquez ici cette fois スクリーンショット 2019-09-27 0.06.56.png

Cliquez sur Étapes suivantes: définir les détails de l'instance

スクリーンショット 2019-09-27 0.08.21.png

Définissez les paramètres suivants et cliquez sur [Étape suivante: Ajouter du stockage]

Réseau: sélectionnez le VPC que vous venez de créer
Sous-réseau: sélectionnez le sous-réseau que vous avez créé précédemment
Attribuer automatiquement une adresse IP publique: activé
D'autres restent par défaut
68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f3335353531372f30353438646266632d333631362d396662392d386166662d6265383133353536653934632e706e67.png

Conservez les valeurs par défaut et cliquez sur [Étape suivante: Ajouter une balise]

Ajouter une balise

Cliquez sur [Ajouter une balise] スクリーンショット 2019-09-30 16.46.54.png

Clé: Nom
Valeur: testInstance

Cliquez sur [Étape suivante: Paramètres du groupe de sécurité]

Configurer un groupe de sécurité

Attribution de groupe de sécurité: existante Sélectionnez-le, sélectionnez le groupe de sécurité que vous venez de créer, Cliquez sur [Confirmer et créer] 68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f3335353531372f39616532356237392d396565342d363531342d396237392d6237333732613434373030322e706e67.png

Puisque ce sera un écran de liste Enfin, cliquez sur [Démarrer]

Il sera affiché comme ci-dessous Choisissez de créer une nouvelle paire de clés, Entrez le nom de la paire de clés, Cliquez sur [Télécharger la paire de clés] (Notez qu'une fois créé, le fichier ne peut plus être téléchargé) スクリーンショット 2019-09-30 19.51.28.png

Après le téléchargement, cliquez sur [Créer une instance]

Une instance sera créée après un certain temps !!

2. Attribution d'adresse IP élastique

Menu d'accompagnement Réseau et sécurité> Appuyez sur Elastic IP [Assign New Address]

68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f3335353531372f36323739383338622d633864352d643366312d383066342d6639613635663234633238612e706e67.png

Cliquez sur [Attribuer] スクリーンショット 2019-09-30 17.06.31.png

Revenir avec [Fermer]

Cliquez sur [Action]> Association d'adresses 68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f3335353531372f34643235323034332d663531632d653261362d396330362d3462626139363734326635662e706e67.png

Sélectionnez l'instance que vous avez créée précédemment et appuyez sur [Associer]. スクリーンショット 2019-09-30 17.09.45.png

Il n'y a pas de frais tant que l'instance à laquelle l'adresse IP Elastic est attachée (associée) est en cours d'exécution. Cependant, si l'instance est "arrêtée" ou n'utilise pas Elastic IP, vous serez facturé. Par conséquent, vous devez supprimer l'adresse IP Elastic que vous n'utilisez pas.

Si l'adresse IP Elastic est toujours associée à l'instance, sélectionnez l'adresse IP à partir des adresses IP Elastic et cliquez sur Actions → Dissocier l'adresse. Un écran de confirmation s'affichera.S'il n'y a pas d'erreur, cliquez sur "Dissocier l'adresse" et détachez l'EIP.

Sélectionnez ensuite à nouveau l'adresse IP et cliquez sur Actions → Libérer l'adresse pour supprimer l'EIP. Désormais, vous ne serez pas facturé.

Le paramètre du côté AWS est terminé une fois

3. SSH dans l'instance

Ouvrez un terminal sur votre PC

Diverses installations

python

$ brew install python

pip (système de gestion de paquets python)

$ easy_install pip

awscli (pour gérer aws depuis la console PC)

$ pip install awscli

Cliquez ici si vous ne pouvez pas https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/install-macos.html

Connectez-vous à l'instance avec ec2-user

Sur AWS En tant qu'utilisateur pouvant se connecter à une instance EC2 Un utilisateur nommé ec2-user est fourni par défaut Ici, connectez-vous d'abord en tant qu'utilisateur ec2

Je mettrai ce qui suit dans le terminal (* TestKey.pem est la clé téléchargée dans STEP2 plus tôt)

$ mv Downloads/testKey.pem .ssh/
(#Déplacer la clé publique créée dans le dossier ssh)

$ cd .ssh/
(#Déplacer le répertoire vers ssh)

$ chmod 600 testKey.pem
(#Accorder le droit d'accès défini par le n ° 600 à la clé publique)

$ ssh -i testKey.pem ec2-user@(@Pour les URL suivantes, utilisez l'adresse IP Elastic associée à l'instance EC2 créée.)
(#Ec2 utilisant la clé publique-Connectez-vous en tant qu'utilisateur)

Exemple:
($ ssh -i testKey.pem [email protected])

On me demande oui / non

Appuyez sur Entrée avec oui スクリーンショット 2019-09-30 21.49.54.png

J'ai pu me connecter avec succès! !! !!

ssh port 22 Operation timed out Cliquez ici si une erreur survient https://qiita.com/yokoto/items/338bd80262d9eefb152e

https://qiita.com/minicoopers0716/items/cac50f29ef79a03f1d8d

Création d'utilisateur (opération sur EC2)

Lorsque vous êtes connecté à l'instance comme décrit ci-dessus

[ec2-user|~]$ sudo adduser testuser
(#Enregistrer un nouveau nom d'utilisateur)
[ec2-user|~]$ sudo passwd testuser
(#Enregistrement du mot de passe pour le nouveau nom d'utilisateur)


Enregistrez le mot de passe

Écrire l'ajout d'autorisations à l'utilisateur avec vim

$ sudo visudo

Aller en mode vim

## Allows people in group wheel to run all commands
# %wheel        ALL=(ALL)       ALL

## Same thing without a password
# %wheel  ALL=(ALL)       NOPASSWD: ALL

## Allows members of the users group to mount and unmount the
## cdrom as root
# %users  ALL=/sbin/mount /mnt/cdrom, /sbin/umount /mnt/cdrom

## Allows members of the users group to shutdown this system
# %users  localhost=/sbin/shutdown -h now

En mode recherche ci-dessous Recherchez "roue" (Entrez "/ wheel" sur le clavier et appuyez dessus, puis appuyez sur "N" pour aller au suivant)

## Same thing without a password
# %wheel  ALL=(ALL)       NOPASSWD: ALL

Appuyez sur «i» sur le clavier en mode édition

# %wheel ALL=(ALL) NOPASSWD: ALL Décommenter

## Same thing without a password
%wheel  ALL=(ALL)       NOPASSWD: ALL

plus loin

Ensuite, la description pour ajouter l'autorité à l'utilisateur créé comme indiqué ci-dessous
testuser   ALL=(ALL)       ALL  
Ajouter
## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
testuser   ALL=(ALL)       ALL

Appuyez sur "esc" sur le clavier Tapez ": wq" et appuyez sur Entrée pour enregistrer

Veuillez changer d'utilisateur ici.

[ec2-user|~]$ sudo su - testuser
(#Changer de nom d'utilisateur)
[testuser@ ~]

C'est OK si [ec2-user | est basculé avec succès sur testuser (nom d'utilisateur créé).

exit

Deux fois Déconnectez-vous une fois avec

Créer une paire de clés pour des utilisateurs supplémentaires

C'est un travail local

$ cd .ssh
[.ssh]$ ssh-keygen -t rsa
(#Créer une clé publique)
-----------------------------
Enter file in which to save the key ():
(#Entrez le nom du fichier ici et appuyez sur Entrée)
test_key_rsa 

Enter passphrase (empty for no passphrase): 
(#Entrez tel quel sans rien faire)
Enter same passphrase again: 
(#Entrez tel quel sans rien faire)
-----------------------------

[.ssh]$ ls
#「test_key_rsa "et" test_key_rsa.Confirmez que "pub" a été généré
[.ssh]$ vi config
(#Démarrez VIM et éditez le fichier de configuration)
-----------------------------

Appuyez sur «i» sur le clavier en mode édition

#Ajoutez ce qui suit
Host test_key_rsa
Nom d'hôte IP Elastic mentionné ci-dessus(#Selon vos paramètres)
  Port 22
  User testuser (#Nom d'utilisateur)
  IdentityFile ~/.ssh/test_key_rsa (#Réglage de la clé privée)
*Supprimez la partie ().
-----------------------------
Appuyez sur "esc" sur le clavier
「:Enregistrer avec "wq"

[.ssh]$ cat test_key_rsa.pub (#Sortir le contenu de la clé sur le terminal)

★ ssh-rsa~~~~Copier vers local

Travail côté serveur

Vient ensuite le travail sur le serveur Connectez-vous en tant qu'utilisateur ec2

$ cd .ssh
$ ssh -i testKey.pem ec2-user@(@Pour les URL suivantes, utilisez l'adresse IP Elastic associée à l'instance EC2 créée.)
[ec2-user|~]$ sudo su - testuser
[testuser@ ~]$ mkdir .ssh
[testuser@ ~]$ chmod 700 .ssh
[testuser@ ~]$ cd .ssh
[testuser@ |.ssh~]$ vi authorized_keys

(Depuis que vim s'ouvre, appuyez sur "i" et
Le ssh que vous avez copié plus tôt avec ★-coller rsa)
Appuyez sur "esc" sur le clavier
「:Enregistrer avec "wq"

[testuser@ |.ssh~]$ chmod 600 authorized_keys

$ exit
encore une fois
$ exit
Se déconnecter
[~]$ ssh test_key_rsa

Si vous pouvez vous connecter, les paramètres utilisateur sont terminés.

De plus, il peut ne pas être possible de se connecter localement au fil du temps, donc dans ce cas,
Groupe de sécurité>Entrant>En édition
Avec source SSH
Sélectionnez Mon IP[sauvegarder]Ensuite, vous pourrez vous connecter

Cliquez ici pour en savoir plus [** Procédure de déploiement sur les paramètres d'environnement du serveur AWS ② (instance EC2) **] (https://qiita.com/tksh8/items/3d2f2eeaf0e8de291b6d)

Recommended Posts

Procédure de déploiement sur AWS ① Paramètres d'environnement réseau
Procédure de déploiement sur les paramètres d'environnement du serveur AWS (2) (instance EC2)
Procédure de création d'un environnement Kube sur Amazon Linux2 (AWS) ~ (avec bonus)
paramètres d'environnement python
Méthode de déploiement (2) (construction de l'environnement EC2 / paramètres Linux / MySQL)
Jupyter sur AWS
# 2 Créez un environnement Python avec une instance EC2 d'AWS (ubuntu18.04)
Procédure de création d'un environnement CDK sous Windows (Python)
Procédure de création d'un Line Bot sur AWS Lambda
Procédure d'installation de l'AWS CLI
Installez Docker sur AWS
Procédure d'installation de l'environnement Anaconda3
Procédure d'installation de l'environnement Scrapy
Création d'un environnement Keras sur une instance AWS E2 G2 Février 2017
Mémo pour la création d'un environnement Python à l'aide de Docker sur Windows 10 Famille
[AWS EC2] Paramètres que vous souhaitez effectuer sur Amazon Linux 2
Création d'un environnement pour exécuter des programmes Python sur AWS EC2
Paramètres d'environnement d'apprentissage automatique basés sur Python3 sur Mac (coexistence avec Python2)