If you require your SQL Server (TCP 1433) to be accessible via the public internet and you do not know the IP addresses of your clients, then there is unlikely to be much you can do about this other than to:
- ensure that all accounts that have access to the SQL server have very strong passwords
- ensure you are installing the latest security patches for SQL Server and for your OS
However, if you require your SQL Server to be accessible, and you know the IP addresses of your clients (say your web host, or a third party that's sending you data) then you can use the built-in windows Firewall to allow access to the TCP 1433 to only the IPs you specifically allow.
A third alternative might be to move the port to something other than the default, but this is not security - only obscurity.