What out bound connections are permitted from Azure applications? From what I understand the worker role can only communicate via queues (is this correct) and it is recommended that web role communications be managed through the service bus. However, if I am porting an application that already establishes low level connections directly will this be possible on the Azure plaform? If this is the case how can connections to common services such as FTP, SMTP, SSH etc be handled (if at all)?
Worker roles currently cannot listen for incoming connections - you have to use .NET services to connect to the service bus to receive messages. Web roles can host endpoints for incoming connections on ports 80 and 443.
You should be able to use FTPWebRequest, SMTP Client, etc. though as all outbound ports are open on Web and Worker Roles.
All roles can make outbound connections to Internet resources via HTTP or HTTPS and via Microsoft .NET APIs for TCP/IP sockets. Only web roles may listen for incoming requests over HTTP and/or HTTPS.