Con la configurazione di default è possibile invocare webservices remoti solo tramite HTTP SOAP (per i test da locale i webservices sono abilitati per ricevere chiamate sia HTTP SOAP che HTTP POST)
E' possibile però cambiare questo comportamento agendo su delle chiavi di configurazione, sia a livello di macchina (machine.config) che per singola applicazione del web.config.
La configurazione dei web services sta dentro al blocco <system.web>, racchiuso nel tag <webServices>.
Questa è la configurazione di default (i valori sono abbastanza auto-esplicativi): basta quindi abilitare anche HttpPost nel machine.config per permettere di connetersi a tutti i propri webservices via HttpPost, oppure basta mettere solo <add name="HttpPost"/> nel web.config dell'applicazione per la quale dev'essere abilitata.
Nella prima versione del framework (1.0) erano tutti abilitati per default, poi, per problemi di sicurezza, sono stati disabilitati (HttpPostLocalhost è stato aggiunto per permettere i test da locale).
Detto questo ricordate che abilitare il POST verso un WebService è in ogni caso una pratica da limitare solo ai casi strettamente necessari perchè rende più "facile" chiamare il webservice e quindi ci si rende più esposti ad attacchi di vario tipo.
Per maggiori dettagli sulla configurazione e sulle impicazioni di sicurezza c'è questo interessante articolo sul sito MSDN:
Configuration Options for XML Web Services Created Using ASP.NET.