Update k3s.sh

- added the variable for the ssh config file
- check if the file exist
- if file exist, look for the StrictHostKeyChecking value and update if needed, otherwise add the line
- if file does not exist, create it, change file permissions and add the setting
This commit is contained in:
SimonC 2024-08-22 10:12:44 -04:00 committed by GitHub
parent 379113a824
commit 6503c607b1
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -60,6 +60,9 @@ lbrange=192.168.3.60-192.168.3.80
#ssh certificate name variable
certName=id_rsa
#ssh config file
config_file=~/.ssh/config
#############################################
# DO NOT EDIT BELOW #
#############################################
@ -92,8 +95,31 @@ else
echo -e " \033[32;5mKubectl already installed\033[0m"
fi
# Create SSH Config file to ignore checking (don't use in production!)
sed -i '1s/^/StrictHostKeyChecking no\n/' ~/.ssh/config
# Check for SSH config file, create if needed, add/change Strict Host Key Checking (don't use in production!)
if [ ! -f "$config_file" ]; then
# Create the file and add the line
echo "StrictHostKeyChecking no" > "$config_file"
# Set permissions to read and write only for the owner
chmod 600 "$config_file"
echo "File created and line added."
else
# Check if the line exists
if grep -q "^StrictHostKeyChecking" "$config_file"; then
# Check if the value is not "no"
if ! grep -q "^StrictHostKeyChecking no" "$config_file"; then
# Replace the existing line
sed -i 's/^StrictHostKeyChecking.*/StrictHostKeyChecking no/' "$config_file"
echo "Line updated."
else
echo "Line already set to 'no'."
fi
else
# Add the line to the end of the file
echo "StrictHostKeyChecking no" >> "$config_file"
echo "Line added."
fi
fi
#add ssh keys for all nodes
for node in "${all[@]}"; do