Service Unavailable: Timed out establishing connection to (x.x.x.x,7687)

I'm getting connection timed out. I'm using python driver to connect to neo4j.
This is the code i use.

from neo4j import GraphDatabase
driver = GraphDatabase.driver("bolt://x.x.x.x:7687",auth=("neo4j","neo4j"))

Should i create graph locally and then upload the data or once i do transactions, does it create a graph by itself. I tried both ways but getting same error.

Here's my config file:

dbms.connectors.default_listen_address=0.0.0.0
dbms.connectors.default_advertised_address=localhost
dbms.connector.bolt.enabled=true
dbms.connector.bolt.listen_address=0.0.0.0:7687
dbms.connector.http.enabled=true
dbms.connector.http.address=0.0.0.0:7474
dbms.connector.http.listen_address=0.0.0.0:7474

Please help. Thank you.
Peace!