- reorder app.sh to run cert before commit/push (fixes workflow failure on first run) - quote $SSH_ORIGINAL_COMMAND in authorized_keys to prevent command injection - add port validation in service.sh nginx command - pin host key in deploy-beszel.yml workflow - fix append vs overwrite for known_hosts in deploy-nginx.yml
This commit is contained in:
@@ -13,6 +13,7 @@ jobs:
|
||||
- name: Deploy via SSH
|
||||
run: |
|
||||
mkdir -p ~/.ssh
|
||||
echo "${{ vars.DEPLOY_HOST_KEY }}" > ~/.ssh/known_hosts
|
||||
echo "${{ secrets.DEPLOY_SSH_KEY }}" > ~/.ssh/deploy_key
|
||||
chmod 600 ~/.ssh/deploy_key
|
||||
ssh -o StrictHostKeyChecking=accept-new -i ~/.ssh/deploy_key deploy@${{ vars.DEPLOY_HOST }} deploy-beszel
|
||||
ssh -o StrictHostKeyChecking=yes -i ~/.ssh/deploy_key deploy@${{ vars.DEPLOY_HOST }} deploy-beszel
|
||||
|
||||
@@ -15,8 +15,7 @@ jobs:
|
||||
- name: Deploy via SSH
|
||||
run: |
|
||||
mkdir -p ~/.ssh
|
||||
echo "${{ vars.DEPLOY_HOST_KEY }}" >> ~/.ssh/known_hosts
|
||||
chmod 644 ~/.ssh/known_hosts
|
||||
echo "${{ vars.DEPLOY_HOST_KEY }}" > ~/.ssh/known_hosts
|
||||
echo "${{ secrets.DEPLOY_SSH_KEY }}" > ~/.ssh/deploy_key
|
||||
chmod 600 ~/.ssh/deploy_key
|
||||
ssh -o StrictHostKeyChecking=yes -i ~/.ssh/deploy_key deploy@${{ vars.DEPLOY_HOST }} deploy-nginx
|
||||
|
||||
@@ -99,7 +99,7 @@ fi
|
||||
echo "==> Setting up deploy SSH key..."
|
||||
mkdir -p /home/deploy/.ssh
|
||||
chmod 700 /home/deploy/.ssh
|
||||
echo "command=\"sudo /opt/hantim/scripts/deploy.sh \$SSH_ORIGINAL_COMMAND\",no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-pty $DEPLOY_PUBKEY" > /home/deploy/.ssh/authorized_keys
|
||||
echo "command=\"sudo /opt/hantim/scripts/deploy.sh \\\"\$SSH_ORIGINAL_COMMAND\\\"\",no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-pty $DEPLOY_PUBKEY" > /home/deploy/.ssh/authorized_keys
|
||||
chmod 600 /home/deploy/.ssh/authorized_keys
|
||||
chown -R deploy:deploy /home/deploy/.ssh
|
||||
|
||||
|
||||
+1
-1
@@ -529,6 +529,7 @@ cmd_monitor() {
|
||||
cmd_all() {
|
||||
cmd_dns
|
||||
cmd_repo
|
||||
cmd_cert
|
||||
cmd_files
|
||||
|
||||
echo "==> Committing and pushing hantim-server..."
|
||||
@@ -541,7 +542,6 @@ cmd_all() {
|
||||
git push
|
||||
fi
|
||||
|
||||
cmd_cert
|
||||
cmd_garage
|
||||
cmd_build
|
||||
cmd_verify
|
||||
|
||||
@@ -256,6 +256,11 @@ cmd_nginx() {
|
||||
local port="$2"
|
||||
local fqdn="$name.hantim.net"
|
||||
|
||||
if ! [[ "$port" =~ ^[0-9]+$ ]]; then
|
||||
echo "Error: port must be a number."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -e "$REPO_ROOT/docker/nginx/conf.d/$fqdn.conf" ]; then
|
||||
echo " docker/nginx/conf.d/$fqdn.conf already exists, skipping."
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user