@maissam_asgari Thank you for such as detailed response and looks like you are doing pretty much everything right.... except for 1 last thing, you are so close.
It Turns out once you set / create / manually configure security... you can no longer use the token enrollment process to enroll Kibana .... I wrote this up here.
Ugggh yes sorry about that
So all you need to do is manually configure kibana with the following
elasticsearch.hosts: ["https://<elastic_ip_or_host>:9200"]
elasticsearch.username: "kibana_system"
elasticsearch.password: "pass"
# The CA you created the elasticsearch HTTP cert with, copy to where you want and reference it
elasticsearch.ssl.certificateAuthorities: /etc/kibana/elasticsearch-ca.pem
I think the basic directions are here
If you did not setup the kibana_system
user account you can set it up with the command here
Let us know if it works...