Eseguire tcpdump in remoto mentre memorizza la cattura di pacchetti localmente

Mi sono imbattuto nel block dello stumble durante il tentativo di creare uno script bash che scriverà i file di cattura di pacchetti da tcpdump su un server remoto, visualizzando l'output del command tcpdump in modo che l'utente dello script sa quando fermarlo.

Il command attualmente richiamato viene richiamato sul server in cui il file è memorizzato e puntato sul dispositivo remoto (elencato qui come [AN_IP]). Sembra qualcosa di simile:

ssh -t [USER]@[AN_IP] -R 10000:127.0.0.1:22 "tcpdump -s0 -ei eth1 -w - | ssh -p 10000 [USER]@127.0.0.1 'tee file.pcap | /usr/sbin/tcpdump -r -' 

Questo funziona più o less come desiderato, però, devo essere in grado di dare all'utente la possibilità di eseguire più capture altamente specifiche da un'unica istanza del mio script.

Non riesco a trovare un buon metodo per automatizzare il process di authentication di SSH, che rende inalterata qualsiasi parte di questo estremamente difficile, se non completamente imansible. Finora i methods di background di questo command o di eventuali variazioni che posso fare, sembrano provocano sia un fallimento di uno o entrambi i dialoghi di authorization per presentarsi, o la distruzione del tunnel SSH.

C'è qualche modo per eseguire lo background automatico di questo script dopo che il dialogo di authentication SSH è riuscito, senza rompere il tunnel o arrestare la cattura?