Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [VB.NET] Problema porte internet
Forum - C# / VB.NET - [VB.NET] Problema porte internet

Avatar
HackLars (Normal User)
Newbie


Messaggi: 5
Iscritto: 21/05/2012

Segnala al moderatore
Postato alle 18:08
Lunedì, 21/05/2012
Salve ragazzi, sto facendo un programmino che funge da chat privata tra utenti e si appoggia ad un server di mia proprietà per connettere i vari utenti (utilizzo i net.socket).
Ho due principali richieste:
1) Come posso fare un controllo, al momento della connessione dei nuovi client, che le porte x e y siano aperte sulle loro connessioni (servono per la ricezione di file in simultanea).
2) Vorrei far si che i dati del server siano reperibili unicamente con l'utilizzo del programmino, ovvero che sia impossibile connettersi al server mediante le porte aperte (x e y) con un altro programma.

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 5475
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 19:36
Lunedì, 21/05/2012
Testo quotato

Postato originariamente da HackLars:
1) Come posso fare un controllo, al momento della connessione dei nuovi client, che le porte x e y siano aperte sulle loro connessioni (servono per la ricezione di file in simultanea).



La richiesta non è chiara ...

Parli di connessione ... quindi esiste già un collegamento tra client e server su una coppia di porte, no ?

Testo quotato


2) Vorrei far si che i dati del server siano reperibili unicamente con l'utilizzo del programmino, ovvero che sia impossibile connettersi al server mediante le porte aperte (x e y) con un altro programma.



Se l'altro programma "ascolta" su quelle porte, l'unica cosa che puoi farlo è terminarlo. Ma se il server è tuo, non ci possono essere altri processi ... anche questa richiesta non si capisce ...


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
PM Quote
Avatar
HackLars (Normal User)
Newbie


Messaggi: 5
Iscritto: 21/05/2012

Segnala al moderatore
Postato alle 20:36
Lunedì, 21/05/2012
Si ok mi scuso effettivamente sono stato un po incasinato.
Allora questo server accetta le connessioni di più client e li mette in comunicazione tra loro.
Il server funge da tcplistener sulla porta 1000 diciamo ed il client si connette ad essa e può quindi dialogare tranquillamente col server (che poi funge da tramite tra i vari client), quindi per quanto riguarda queste funzioni "di base" non serve che sulla connessione del client siano aperte delle porte.
Nel momento in cui vado ad inviare un file da un client all'altro, il server man mano che riceve i vari pacchetti dal client mittente, li inoltra al client destinatario ma per fare ciò si appoggia ad un altro tcpclient ed ad un altro networkstream rispetto a quelli utilizzati per la chat, facendo in modo che mentre si inviano file di grosse dimensioni è possibile mantenere inalterata la funzionalità della chat.
Il problema è che per inoltrare il file al client destinatario, esso va a fungere da tcplistener ed è il server a fare da tcpclient nei suoi confronti, per tale scopo è necessario aprire una porta (diciamo la 1001) sulla connessione del client destinatario.
Quello che vorrei fare è un controllo, al momento della connessione iniziale del client al server, che tale client abbia la possibilità di ricevere file (abbia cioè la porta 1001 aperta).

Per quanto riguarda la seconda domanda diciamo che io il programma sul server lo tengo sempre avviato, con un TcpListener sempre attivo sulla porta 1000, è possibile che qualcuno riesca ad intromettersi nel disco rigido del server tramite questa porta aperta? se si c'è un modo per impedirlo?
:love: salvatemi

PM Quote
Avatar
Ultimo (Member)
Expert


Messaggi: 513
Iscritto: 22/05/2010

Segnala al moderatore
Postato alle 1:52
Martedì, 22/05/2012

Dovrebbe essere possibile, per impedirlo forse basta un buon firewall


Ultimo (Hai voluto la bicicletta ? ....)

Studiare LINQ, WPF, ASP.NET MVC, Entity Framwork, C#, Blend, XAML, Javascript, HTML5, CSS .....(tanta roba)

https://www.dropbox.com/s/c2aots5x4urgbhf/setup_game_sudoku ...
PM Quote
Avatar
HackLars (Normal User)
Newbie


Messaggi: 5
Iscritto: 21/05/2012

Segnala al moderatore
Postato alle 16:55
Martedì, 22/05/2012
per quanto riguarda il primo quesito come risolvo?

PM Quote