Files
roa2web-service-auto/ssh-tunnel/docs/BITVISE_SSH_SETUP.md
Marius Mutu 6b13ffa183 Initial commit: ROA2WEB - FastAPI + Vue.js + Telegram Bot
Modern ERP Reports Application with microservices architecture

Tech Stack:
- Backend: FastAPI + python-oracledb (Oracle DB integration)
- Frontend: Vue.js 3 + PrimeVue + Vite
- Telegram Bot: python-telegram-bot + SQLite
- Infrastructure: Shared database pool, JWT authentication, SSH tunnel

Features:
- FastAPI backend with async Oracle connection pool
- Vue.js 3 responsive frontend with PrimeVue components
- Telegram bot alternative interface
- Microservices architecture with shared components
- Complete deployment support (Linux Docker + Windows IIS)
- Comprehensive testing (Playwright E2E + pytest)

Repository Structure:
- reports-app/ - Main application (backend, frontend, telegram-bot)
- shared/ - Shared components (database pool, auth, utils)
- deployment/ - Deployment scripts (Linux & Windows)
- docs/ - Project documentation
- security/ - Security scanning and git hooks
2025-10-25 14:55:08 +03:00

6.2 KiB

🔐 Bitvise SSH Server Setup pentru ROA2WEB

Instrucțiuni pentru configurarea cheii SSH în Bitvise SSH Server pe Windows.

🔑 Cheia SSH Publică

📋 Format OpenSSH (încercați primul):

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCcRM+WWxoBqCSpaTo+vNCrvCLx1UFmKqqSh6smS4c/lh1Hkku+oiq65iUHwRMu5X9jDXSGUR1Fmig+OgIhoTnT4Hd3v4Fe2zienOFiJ/AZOTE+pgxpwmIrkScGTSv7ZSp4xFcXsFwho8W/Li0P0kyB+kGs2tFYaQM192E5Gx9qjlPGSM55fdksElRXKIrRHE4ARjt5+kMt4WFgUXpVNqhHQFEcz/oW6sC0OkufTbzQ+MHefBIlMNUlNHRxbHc3C6CTuMmzMM847y6rmQlDyScX0tizDhUnQ1UgA3ZyICJp9CVF4weAM6ihZhNTFi7drXiCEihUVLNU+EuEpWdWeVNebqBqlkJT0KXR3IgEQ3zKYKuAmICFO056WI3eKcJWuWEFNDrSYsxo+HydAbqBSqEprJFCUSU90175ngnpY4WoH7CFUbCnGjxEnRXUjUktaCdqYhH0ZjGHSGujK+KGPVxvBi1h7BjE33SEH6PAVZBYmdpGDri69n6H+v6dhaW26scFcc6ldrOcbaRsX7q4M8gFIwotAu6jTuid8FensF/j9yQRDkcOS8OWXHr5z2lZTCSDPik83p8mvvEZ/R7dP60ldwz2INX8rbCxi5frEdijqrwZCq9D2tzUJJgG8h3KUKfd3QfThCyq6AdE9X2+EnmU1yP2SJsolgM7euuDBH0/qQ== roa2web-wsl-marius@Mihai-HXG0G

🔧 Format RFC4716 (dacă primul spune "Input is not valid"):

---- BEGIN SSH2 PUBLIC KEY ----
Comment: "4096-bit RSA, converted by marius@Mihai-HXG0G from OpenSSH"
AAAAB3NzaC1yc2EAAAADAQABAAACAQCcRM+WWxoBqCSpaTo+vNCrvCLx1UFmKqqSh6smS4
c/lh1Hkku+oiq65iUHwRMu5X9jDXSGUR1Fmig+OgIhoTnT4Hd3v4Fe2zienOFiJ/AZOTE+
pgxpwmIrkScGTSv7ZSp4xFcXsFwho8W/Li0P0kyB+kGs2tFYaQM192E5Gx9qjlPGSM55fd
ksElRXKIrRHE4ARjt5+kMt4WFgUXpVNqhHQFEcz/oW6sC0OkufTbzQ+MHefBIlMNUlNHRx
bHc3C6CTuMmzMM847y6rmQlDyScX0tizDhUnQ1UgA3ZyICJp9CVF4weAM6ihZhNTFi7drX
iCEihUVLNU+EuEpWdWeVNebqBqlkJT0KXR3IgEQ3zKYKuAmICFO056WI3eKcJWuWEFNDrS
Ysxo+HydAbqBSqEprJFCUSU90175ngnpY4WoH7CFUbCnGjxEnRXUjUktaCdqYhH0ZjGHSG
ujK+KGPVxvBi1h7BjE33SEH6PAVZBYmdpGDri69n6H+v6dhaW26scFcc6ldrOcbaRsX7q4
M8gFIwotAu6jTuid8FensF/j9yQRDkcOS8OWXHr5z2lZTCSDPik83p8mvvEZ/R7dP60ldw
z2INX8rbCxi5frEdijqrwZCq9D2tzUJJgG8h3KUKfd3QfThCyq6AdE9X2+EnmU1yP2SJso
lgM7euuDBH0/qQ==
---- END SSH2 PUBLIC KEY ----

📋 Pași pentru Bitvise SSH Server

1. 🖥️ Deschide Bitvise SSH Server Control Panel

  • Lansează Bitvise SSH Server Control Panel pe serverul Windows
  • Ar trebui să fie în System Tray sau în Start Menu

2. 👤 Configurează utilizatorul

În Bitvise SSH Server Control Panel:

  1. Click pe tab "Users"
  2. Găsește utilizatorul tău (sau creează unul nou dacă nu există)
  3. Double-click pe utilizator pentru a-l edita

3. 🔐 Adaugă cheia SSH publică

În fereastra User Properties:

  1. Authentication tab:

    • Setează "Public key authentication" la "Required" sau "Optional"
  2. Public Keys section:

    • Click pe "Import" sau "Add"
    • Paste cheia publică de mai sus în câmpul text
    • Sau salvează cheia într-un fișier .pub și importă fișierul
  3. Virtual filesystem:

    • Asigură-te că utilizatorul are acces la directorul de lucru dorit
    • De obicei setează Root directory la C:\ sau un folder specific

4. Salvează configurația

  1. Click "OK" pentru a salva setările utilizatorului
  2. Apply Configuration în Control Panel principal
  3. Restart SSH Server dacă este necesar

🔧 Configurare WSL SSH Tunnel Script

Editează ssh_tunnel.sh cu username-ul corect:

nano /mnt/d/PROIECTE/roa-flask/ssh_tunnel.sh

# Găsește și actualizează:
SSH_USER="your_bitvise_username"  # Numele utilizatorului din Bitvise

🧪 Testarea conexiunii

1. Test manual SSH:

ssh -p 22122 -i ~/.ssh/roa_oracle_server your_username@83.103.197.79

2. Test tunnel SSH:

cd /mnt/d/PROIECTE/roa-flask/roa2web
./ssh_tunnel.sh start

3. Test Oracle pool:

source venv/bin/activate
python shared/database/test_pool.py

🎯 Output așteptat

SSH Connection Test:

$ ssh -p 22122 -i ~/.ssh/roa_oracle_server marius@83.103.197.79
Welcome to Bitvise SSH Server!
Microsoft Windows [Version 10.0.19044]
(c) Microsoft Corporation. All rights reserved.

C:\Users\marius>exit

SSH Tunnel Start:

================================
 ROA2WEB SSH Tunnel Manager
================================
🔄 Starting SSH tunnel...
   Server: 83.103.197.79:22122
   Local:  127.0.0.1:1521
   Remote: localhost:1521

🔍 Testing SSH connectivity...
✅ SSH connectivity OK

🚀 Creating SSH tunnel...
✅ SSH tunnel started successfully (PID: 12345)
🔍 Testing tunnel connectivity...
✅ Tunnel is working! Port 1521 is accessible

Troubleshooting Bitvise

"Permission denied (publickey)"

  • Verifică: Cheia SSH este corect adăugată în User Properties
  • Verifică: Authentication method include "Public key"
  • Verifică: Username-ul din script este corect

"Connection refused"

  • Verifică: Bitvise SSH Server este pornit și funcționează
  • Verifică: Portul 22122 este configurat corect în server
  • Verifică: Windows Firewall permite conexiuni pe port 22122

"User access denied"

  • Verifică: Utilizatorul există în lista Users din Bitvise
  • Verifică: Utilizatorul are permisiuni de login (Account enabled)
  • Verifică: Virtual filesystem este configurat corect

"Input is not valid" în Bitvise

  • 🔧 Soluție 1: Folosește formatul RFC4716 (vezi mai sus)
  • 🔧 Soluție 2: Salvează cheia într-un fișier .pub și importă fișierul în loc să faci paste
  • 🔧 Soluție 3: Asigură-te că nu ai spații extra la începutul/sfârșitul cheii
  • 🔧 Soluție 4: Încearcă să ștergi și să adaugi din nou utilizatorul în Bitvise

Cheia SSH nu este acceptată

  • Format cheie: Asigură-te că ai copiat toată cheia, inclusiv header-ul și comment-ul
  • Tip cheie: Bitvise suportă RSA, DSA, ECDSA, Ed25519 - folosim RSA 4096
  • Import method: Dacă paste nu funcționează, salvează într-un fișier și importă
  • Line endings: Verifică că nu sunt caractere ascunse în cheie

📝 Note specifice Bitvise

  1. User management: Bitvise are propriul sistem de utilizatori, independent de Windows users
  2. Virtual filesystem: Poți controla la ce directoare are acces utilizatorul SSH
  3. Port forwarding: Bitvise poate restricționa port forwarding - asigură-te că este permis
  4. Logging: Verifică log-urile din Bitvise pentru detalii despre conexiuni failed

Configurare Bitvise SSH Server pentru ROA2WEB Development 🔐