fixato sftp

This commit is contained in:
2025-11-03 16:49:48 +01:00
parent b5d3e764e8
commit 5e71d323a9
15 changed files with 118 additions and 98 deletions

View File

@@ -1,70 +0,0 @@
#!/bin/bash
# Script per cambiare la porta SSH delle VM da 22 a 2222
# Questo permette ai container SFTP di usare la porta 22 standard
set -e
NEW_SSH_PORT=2222
SSH_CONFIG="/etc/ssh/sshd_config"
echo "================================================"
echo "Cambio porta SSH della VM da 22 a $NEW_SSH_PORT"
echo "================================================"
echo ""
# Backup della configurazione originale
if [ ! -f "${SSH_CONFIG}.backup" ]; then
echo "Creazione backup di $SSH_CONFIG..."
cp "$SSH_CONFIG" "${SSH_CONFIG}.backup"
echo "✓ Backup creato: ${SSH_CONFIG}.backup"
else
echo "✓ Backup già esistente: ${SSH_CONFIG}.backup"
fi
# Modifica la porta SSH
echo ""
echo "Modifica della porta SSH a $NEW_SSH_PORT..."
# Rimuovi eventuali configurazioni Port esistenti e aggiungi la nuova
grep -v "^Port " "$SSH_CONFIG" | grep -v "^#Port " > "${SSH_CONFIG}.tmp"
echo "Port $NEW_SSH_PORT" | cat - "${SSH_CONFIG}.tmp" > "$SSH_CONFIG"
rm "${SSH_CONFIG}.tmp"
echo "✓ Configurazione SSH aggiornata"
# Verifica la configurazione
echo ""
echo "Verifica della configurazione SSH..."
if sshd -t; then
echo "✓ Configurazione SSH valida"
else
echo "✗ ERRORE: Configurazione SSH non valida!"
echo "Ripristino del backup..."
cp "${SSH_CONFIG}.backup" "$SSH_CONFIG"
exit 1
fi
# Riavvia il servizio SSH
echo ""
echo "Riavvio del servizio SSH..."
systemctl restart sshd
echo "✓ Servizio SSH riavviato"
# Mostra lo status
echo ""
echo "Status del servizio SSH:"
systemctl status sshd --no-pager -l | head -10
echo ""
echo "================================================"
echo "✓ Porta SSH cambiata con successo!"
echo "================================================"
echo ""
echo "IMPORTANTE:"
echo " - SSH ora ascolta sulla porta $NEW_SSH_PORT"
echo " - Connettiti con: ssh -p $NEW_SSH_PORT root@<ip-vm>"
echo " - La porta 22 è ora disponibile per i container SFTP"
echo ""
echo "Per verificare:"
echo " ss -tlnp | grep sshd"
echo ""

6
scripts/sync_modifche_vm.sh Executable file
View File

@@ -0,0 +1,6 @@
#!/bin/bash
rsync -avz --exclude='*.pyc' --exclude '__pycache__/' /home/alex/devel/ASE/src /home/alex/devel/proxmox-ha-setup/vm1/
rsync -avz --exclude='*.pyc' --exclude '__pycache__/' /home/alex/devel/ASE/src /home/alex/devel/proxmox-ha-setup/vm2/
rsync -avz -e "ssh -p 2222" --exclude='*.pyc' /home/alex/devel/proxmox-ha-setup/vm1/ root@192.168.1.201:/opt/myapp/
rsync -avz -e "ssh -p 2222" --exclude='*.pyc' /home/alex/devel/proxmox-ha-setup/vm2/ root@192.168.1.202:/opt/myapp/

View File

@@ -15,12 +15,12 @@ echo "=== Test Failover HA ==="
echo "" echo ""
# Determina chi ha il VIP # Determina chi ha il VIP
if ssh root@$VM1_IP "ip addr show | grep -q $VIP" &>/dev/null; then if ssh -p 2222 root@$VM1_IP "ip addr show | grep -q $VIP" &>/dev/null; then
MASTER_VM=$VM1_IP MASTER_VM=$VM1_IP
MASTER_NAME="VM1" MASTER_NAME="VM1"
BACKUP_VM=$VM2_IP BACKUP_VM=$VM2_IP
BACKUP_NAME="VM2" BACKUP_NAME="VM2"
elif ssh root@$VM2_IP "ip addr show | grep -q $VIP" &>/dev/null; then elif ssh -p 2222 root@$VM2_IP "ip addr show | grep -q $VIP" &>/dev/null; then
MASTER_VM=$VM2_IP MASTER_VM=$VM2_IP
MASTER_NAME="VM2" MASTER_NAME="VM2"
BACKUP_VM=$VM1_IP BACKUP_VM=$VM1_IP

View File

@@ -110,16 +110,18 @@ services:
DB_HOST: ${VIP:-192.168.1.210} DB_HOST: ${VIP:-192.168.1.210}
FTP_INSTANCE_ID: 11 FTP_INSTANCE_ID: 11
FTP_MODE: sftp FTP_MODE: sftp
FTP_PORT: "22"
TZ: Europe/Rome TZ: Europe/Rome
volumes: volumes:
- app-logs:/app/logs - app-logs:/app/logs
- ./aseftp:/app/aseftp - ./aseftp:/app/aseftp
- ./ssh_host_key:/app/ssh_host_key:ro
- /etc/localtime:/etc/localtime:ro - /etc/localtime:/etc/localtime:ro
- /etc/timezone:/etc/timezone:ro - /etc/timezone:/etc/timezone:ro
networks: networks:
- app-network - app-network
expose: ports:
- "22" - "22:22"
labels: labels:
logging: "promtail" logging: "promtail"
@@ -133,7 +135,6 @@ services:
- app-network - app-network
ports: ports:
- "21:21" - "21:21"
- "22:22"
- "8404:8404" - "8404:8404"
labels: labels:
logging: "promtail" logging: "promtail"

View File

@@ -31,11 +31,3 @@ frontend ftp_control
backend ftp_servers backend ftp_servers
mode tcp mode tcp
server ftp1 ftp-server-1:21 check server ftp1 ftp-server-1:21 check
frontend sftp_control
bind *:22
default_backend sftp_servers
backend sftp_servers
mode tcp
server sftp1 sftp-server-1:22 check

View File

@@ -18,7 +18,7 @@ class Config:
c.read([f"{ENV_PARENT_PATH}/env/ftp.ini", f"{ENV_PARENT_PATH}/env/db.ini"]) c.read([f"{ENV_PARENT_PATH}/env/ftp.ini", f"{ENV_PARENT_PATH}/env/db.ini"])
# FTP setting (with environment variable override for Docker) # FTP setting (with environment variable override for Docker)
self.service_port = c.getint("ftpserver", "service_port") self.service_port = int(os.getenv("FTP_PORT", c.getint("ftpserver", "service_port")))
# FTP_PASSIVE_PORTS: override della porta iniziale del range passivo # FTP_PASSIVE_PORTS: override della porta iniziale del range passivo
self.firstport = int(os.getenv("FTP_PASSIVE_PORTS", c.getint("ftpserver", "firstPort"))) self.firstport = int(os.getenv("FTP_PASSIVE_PORTS", c.getint("ftpserver", "firstPort")))

View File

@@ -185,7 +185,6 @@ async def start_sftp_server(cfg, host='0.0.0.0', port=22):
port, port,
server_host_keys=['/app/ssh_host_key'], # You'll need to generate this server_host_keys=['/app/ssh_host_key'], # You'll need to generate this
sftp_factory=SFTPFileHandler, sftp_factory=SFTPFileHandler,
session_encoding=None, # Binary mode for file transfers
) )
logger.info(f"SFTP server started successfully on {host}:{port}") logger.info(f"SFTP server started successfully on {host}:{port}")

49
vm1/ssh_host_key Normal file
View File

@@ -0,0 +1,49 @@
-----BEGIN OPENSSH PRIVATE KEY-----
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
-----END OPENSSH PRIVATE KEY-----

1
vm1/ssh_host_key.pub Normal file
View File

@@ -0,0 +1 @@
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC+i1N/AMsdC/CN8NwdxJTKHdrwMC3+I6MhA9YT7Q55DpRSd62micGOOBe3lL9dNXalX4Aye7izLPsG76QHqiF1PmgDm5Z47O0ovDt3oNY25qJazQDr4u7dMfD49zcF6VO/XAoJqeDmveUZwrAUbm0XGR3uTBbNMI79tHt/FelGrUgY8/q9efFUHyvkEd73UGEcnb3zaRPaD4dkvGGUILiWwE53MBkG4MDISbVIxr6LGyUDLd/SoS8HcVaz0unkPvDODaJcNyyfnp8ckgtu+oDsS6OhYR9rTViCk9NEUi3Iq8Y2PE1IuSMsiEZoEc0sYdyrWIU+XnA/56aeh2A514BKDEwBREpvraiNKAc5uZUWK2eWGRHwlF/bAhqOqiW/fEaWJOb7UdSXXs/E55LMxAVlvJ9FGNs/3gkdlUnBhMmPxcXmI8qthVe5NsqknSDaFR/vn6TLe/hB/jgKUUnsj39fiXKliJpLAGvPSbR2GvIQ+2QEPD0JLwImNDFlbZqlCpvus9USoyeB9y9JP1kQ97V2VF7f8IzZLOoq+CwqRFiL66DfJNdiopeuaIKF1WXYhvy26W1rnjxUDVikJPDlasQBTy2giV33UCun4LRDdkU9A5sbZ60tiLIt67MAHLPODpLkwEZoBiVQWzTABrceoe+/X33LsaUwJvfLcK/BGBVQbw== SFTP-VM1-Host-Key

View File

@@ -84,16 +84,18 @@ services:
DB_HOST: ${VIP:-192.168.1.210} DB_HOST: ${VIP:-192.168.1.210}
FTP_INSTANCE_ID: 12 FTP_INSTANCE_ID: 12
FTP_MODE: sftp FTP_MODE: sftp
FTP_PORT: "22"
TZ: Europe/Rome TZ: Europe/Rome
volumes: volumes:
- app-logs:/app/logs - app-logs:/app/logs
- ./aseftp:/app/aseftp - ./aseftp:/app/aseftp
- ./ssh_host_key:/app/ssh_host_key:ro
- /etc/localtime:/etc/localtime:ro - /etc/localtime:/etc/localtime:ro
- /etc/timezone:/etc/timezone:ro - /etc/timezone:/etc/timezone:ro
networks: networks:
- app-network - app-network
expose: ports:
- "22" - "22:22"
labels: labels:
logging: "promtail" logging: "promtail"
@@ -107,7 +109,6 @@ services:
- app-network - app-network
ports: ports:
- "21:21" - "21:21"
- "22:22"
- "8404:8404" - "8404:8404"
labels: labels:
logging: "promtail" logging: "promtail"

View File

@@ -31,11 +31,3 @@ frontend ftp_control
backend ftp_servers backend ftp_servers
mode tcp mode tcp
server ftp2 ftp-server-2:21 check server ftp2 ftp-server-2:21 check
frontend sftp_control
bind *:22
default_backend sftp_servers
backend sftp_servers
mode tcp
server sftp2 sftp-server-2:22 check

View File

@@ -18,7 +18,7 @@ class Config:
c.read([f"{ENV_PARENT_PATH}/env/ftp.ini", f"{ENV_PARENT_PATH}/env/db.ini"]) c.read([f"{ENV_PARENT_PATH}/env/ftp.ini", f"{ENV_PARENT_PATH}/env/db.ini"])
# FTP setting (with environment variable override for Docker) # FTP setting (with environment variable override for Docker)
self.service_port = c.getint("ftpserver", "service_port") self.service_port = int(os.getenv("FTP_PORT", c.getint("ftpserver", "service_port")))
# FTP_PASSIVE_PORTS: override della porta iniziale del range passivo # FTP_PASSIVE_PORTS: override della porta iniziale del range passivo
self.firstport = int(os.getenv("FTP_PASSIVE_PORTS", c.getint("ftpserver", "firstPort"))) self.firstport = int(os.getenv("FTP_PASSIVE_PORTS", c.getint("ftpserver", "firstPort")))

View File

@@ -185,7 +185,6 @@ async def start_sftp_server(cfg, host='0.0.0.0', port=22):
port, port,
server_host_keys=['/app/ssh_host_key'], # You'll need to generate this server_host_keys=['/app/ssh_host_key'], # You'll need to generate this
sftp_factory=SFTPFileHandler, sftp_factory=SFTPFileHandler,
session_encoding=None, # Binary mode for file transfers
) )
logger.info(f"SFTP server started successfully on {host}:{port}") logger.info(f"SFTP server started successfully on {host}:{port}")

49
vm2/ssh_host_key Normal file
View File

@@ -0,0 +1,49 @@
-----BEGIN OPENSSH PRIVATE KEY-----
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
-----END OPENSSH PRIVATE KEY-----

1
vm2/ssh_host_key.pub Normal file
View File

@@ -0,0 +1 @@
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCpNAD/DQNpTQI5epGWoozsDKKKkyHDWguV6dXXOl2dKkkmBoU6DqVOOYPmaHCDSCbO3MnXY/8hb7yQSOD+IFps2izBOUbPNmvGKfM3M/fxzCOnSsn2/5NoGdF2RA71xwJ0/SKucaKrHfO3fD3XsYaveyICwYV3nMzOhAqR3Fjdcjy/4qbOySIacaVYGUz1nPdcUCmwWoc6qYquldiN+bm0BgtOB0fuVcFbc/WoQ/0uSNwy32ywuu3G4XjSKSccRvBoqayebS6++4JYR38uTGwZNIVGrqwOnaIzG+on1SVfbcvFeHe0K88x1nLDXGbz9Dsbmz2SevsEqgu+FDh1/Na04++EE7ZAXJfj/UUKXcW9fbOI/3WXXbd6/Rc3A+9/D+BLPWB7/mqGw+EaiBUOJizKCiC7txToMDHs3OAJrrSj93WoCj/fFpaCoRaMnlwgPcvhpX74yNLhfnlz0Ur2i7iosnaQJOcoDA01MTT859LgQa03nz/B1qCEB5tb+BcYoqyDPZmFSPg198PlvMRmhoBIvPYoFOVLMEB1Tegk3D9x4pE0ErT57W4R2QNsVqTx/8xx6Bxt2Unnrc72PCVoyxzT6TMgDbkZofkmUEWBDECEhVIBDEbOqj+oMcBtmTD0C8mU3+EggimKGsTJqaItURRfkC9op/kwIjjc343IYypoFw== SFTP-VM2-Host-Key