Just thought id share how ive managed to get beef working over the internet.
First things first, you need to make sure you have these ports forwarded on your router. On mine it shows in the advance settings NAT >
< Port Forwarding.
then i can add all the ports i need for beef to work.
now once you have forwarded your ports correctly you can move onto the kali 2.0 machine. open up a terminal and type
root@kali:~# cd /usr/share/beef-xss/
root@kali:/usr/share/beef-xss# leafpad config.yaml
this should now open up the beef config file as so.
dnshost "your public ip" put your public ip in here
now close and save that file.
now once that is saved and closed you should still see
Type Cd Extensions/Metasploit/
then while in there type leafpad config.yaml
And where i have put !!your ip here!! on the picture above^ put your public ip
Host " Your Public Ip"
and also make sure when you do its only numbers , no http://
now save this file and close.
now when you load beef framework up again.
Replace Your Public Ip Before >>> :3000/Ui/Authentication
Replace [Http://127.0.0.1 ]
with Your Public Ip
>>>>> [Http://127.0.0.1:3000/Ui/Authentication ]
Beef should now be setup to use your public ip for connections back.
you should also look into setting up ddns these seem ok and free. http://www.noip.com