ユーザーデータ名"handson-cli-ec2-ssh_port-userdata"のファイルを作成します。
手順に必要な設定値を変数に格納をします。
1. ユーザーデータ用ディレクトリの指定
ユーザーデータ用ディレクトリを指定します。
変数の設定: DIR_USER_DATA="${HOME}/environment/conf-handson-cli-ec2"
変数の設定:
DIR_USER_DATA="${HOME}/environment/conf-handson-cli-ec2"
ディレクトリが存在することを確認します。
コマンド: ls -d ${DIR_USER_DATA} 結果(例:存在する場合): ${HOME}/environment/conf-handson-cli-ec2
コマンド:
ls -d ${DIR_USER_DATA}
結果(例:存在する場合):
${HOME}/environment/conf-handson-cli-ec2
存在しない場合は作成します。
コマンド: mkdir -p ${DIR_USER_DATA} 結果(例): (出力なし)
mkdir -p ${DIR_USER_DATA}
結果(例):
(出力なし)
2. ユーザーデータファイル名の指定
ユーザーデータファイル名を指定します。
変数の設定: USER_DATA_NAME='handson-cli-ec2-ssh_port-userdata' 変数の設定: FILE_USER_DATA="${DIR_USER_DATA}/${USER_DATA_NAME}.bash" \ && echo ${FILE_USER_DATA} 結果(例): ${HOME}/environment/conf-handson-cli-ec2/handson-cli-ec2-ssh_port-userdata.bash
USER_DATA_NAME='handson-cli-ec2-ssh_port-userdata'
FILE_USER_DATA="${DIR_USER_DATA}/${USER_DATA_NAME}.bash" \ && echo ${FILE_USER_DATA}
${HOME}/environment/conf-handson-cli-ec2/handson-cli-ec2-ssh_port-userdata.bash
3. SSHポート番号の指定
SSHポート番号を指定します。
変数の設定: PORT_SSHD='22022'
PORT_SSHD='22022'
各変数に正しい設定値が格納されていることを確認しながら保存します。
変数の確認: cat << END # 1. DIR_USER_DATA:"${HOME}/environment/conf-handson-cli-ec2" DIR_USER_DATA="${DIR_USER_DATA}" # 2. FILE_USER_DATA:"${HOME}/environment/conf-handson-cli-ec2/handson-cli-ec2-ssh_port-userdata.bash" FILE_USER_DATA="${FILE_USER_DATA}" # 3. PORT_SSHD:"22022" PORT_SSHD="${PORT_SSHD}" END
変数の確認:
cat << END # 1. DIR_USER_DATA:"${HOME}/environment/conf-handson-cli-ec2" DIR_USER_DATA="${DIR_USER_DATA}" # 2. FILE_USER_DATA:"${HOME}/environment/conf-handson-cli-ec2/handson-cli-ec2-ssh_port-userdata.bash" FILE_USER_DATA="${FILE_USER_DATA}" # 3. PORT_SSHD:"22022" PORT_SSHD="${PORT_SSHD}" END
下段の変数が入っていない、もしくは上段と同等の値が入っていない場合は、それぞれの手順番号に戻って変数の設定を行います。
ユーザーデータファイルを作成します。
変数の確認: cat << END # FILE_USER_DATA:"${HOME}/environment/conf-handson-cli-ec2/handson-cli-ec2-ssh_port-userdata.bash" FILE_USER_DATA="${FILE_USER_DATA}" # PORT_SSHD:"22022" PORT_SSHD="${PORT_SSHD}" END コマンド: cat << EOF1 > ${FILE_USER_DATA} #!/bin/bash # configure sshd cat << EOF >> /etc/ssh/sshd_config Port ${PORT_SSHD} EOF systemctl restart sshd.service # yum yum update -y EOF1 cat ${FILE_USER_DATA} 結果(例): #!/bin/bash # configure sshd cat << EOF >> /etc/ssh/sshd_config Port 22022 EOF systemctl restart sshd.service # yum yum update -y
cat << END # FILE_USER_DATA:"${HOME}/environment/conf-handson-cli-ec2/handson-cli-ec2-ssh_port-userdata.bash" FILE_USER_DATA="${FILE_USER_DATA}" # PORT_SSHD:"22022" PORT_SSHD="${PORT_SSHD}" END
cat << EOF1 > ${FILE_USER_DATA} #!/bin/bash # configure sshd cat << EOF >> /etc/ssh/sshd_config Port ${PORT_SSHD} EOF systemctl restart sshd.service # yum yum update -y EOF1 cat ${FILE_USER_DATA}
#!/bin/bash # configure sshd cat << EOF >> /etc/ssh/sshd_config Port 22022 EOF systemctl restart sshd.service # yum yum update -y
「ユーザーデータファイル名"${HOME}/environment/conf-handson-cli-ec2/handson-cli-ec2-ssh_port-userdata.bash"が存在する。」ことを確認します。
コマンド: ls ${FILE_USER_DATA} 結果(例): ${HOME}/environment/conf-handson-cli-ec2/handson-cli-ec2-ssh_port-userdata.bash
ls ${FILE_USER_DATA}