Home / How to / How to change hostname in Kali Linux?

How to change hostname in Kali Linux?

Kali Linux is becoming popular and more and more users are using it to try out different things. When installing kali, you get to choose a hostname, but in case you accepted the default hostname (kali) and later want to change it, here’s a How to guide to change hostname in Kali Linux.

Now just changing hostname to something else might not be enough. How about we change hostname every time you boot your computer to a random one? That could be fun. It also helps to avoid suspicion from System Admins in your network to see “kali” in their network. Like BackTrack, SysAdmins doesn’t like Kali much (I mean why would they? Kali is designed to poke and prod around the network to find vulnerability). Even if you’re using Kali as your primary OS, it just raises eyebrows and you might get a visit from an over-conscious SysAdmin. So we will discuss all possible ways, change hostname to something else permanently and change hostname randomly in each boot.

  1. Change hostname permanently and make it sticky – with reboot
  2. Change hostname permanently and make it sticky  – without rebooting
  3. Change hostname randomly in each boot time.

Change hostname permanently – with reboot

As always, I’ve divided the options into multiple dot points.

Step 1: edit hostname file

Open hostname file from /etc directory and modify the name in there.

leafpad /etc/hostname

How to change hostname in Kali Linux - 1- blackMORE Ops

Let’s say we change the name from kali to aiur

How to change hostname in Kali Linux - 2- blackMORE Ops

Save the file.

Step 2: edit hosts file

Open hosts file from /etc directory and modify the name in there.

leafpad /etc/hosts

How to change hostname in Kali Linux - 3 - blackMORE Ops

Change kali to aiur.

How to change hostname in Kali Linux - 4 - blackMORE Ops

Save the file.

Step 3: reboot

Now reboot to reflect your changes

reboot

And you should see the new hostname coming up in terminal (i.e. root@aiur)

How to change hostname in Kali Linux - 6 - blackMORE Ops

Change hostname permanently – without reboot

Don’t want to reboot?  Here’s how

Follow step 1 and 2 from above

i.e.

  1. Update /etc/hostname
  2. Update /etc/hosts, so local address (es) resolves with the new system name.

Reload configuration files

Type in following 3 commands one at a time.

service hostname.sh start
service networking force-reload
service network-manager force-reload

How to change hostname in Kali Linux - 7 - blackMORE Ops

Now force-reload networking service.

How to change hostname in Kali Linux - 8 - blackMORE Ops

This will temporarily disconnect your system from the network (ssh usually resists short disconnection)

This might definitively disconnect your system from the network because networking might not restore connections; please reboot, which is not lazy, but ensures that your setup is really correct

 

How to change hostname in Kali Linux - 9 - blackMORE Ops

So we need to reload network-manager service as well.

How to change hostname in Kali Linux - 10 - blackMORE Ops

This should reconnect networking again.

How to change hostname in Kali Linux - 11 - blackMORE Ops

Depending on what other services you’re running, i.e. avahi, metasploit, postgresql, cups, openSSH server, ssmtp etc. you might have to restart them all.

Now you must close your existing terminals to have the new hostname coming up at the top. See following screenshot with highlighting.

First screenshot is after re-loading all the required services. Note that it’s still showing root@kali in the top. uname -a or hostname shows correct info though.

How to change hostname in Kali Linux - 12 - blackMORE Ops

If I close this terminal and open a new one, root@kali becomes root@aiur which is what we want.

How to change hostname in Kali Linux - 13 - blackMORE Ops

Change hostname randomly in each boot time

Following procedure will allow you to change your hostname randomly in each boot. That hostname will stick until you reboot again.

 

Create a bash script

Create a script which will automate the procedure

In this terminal create a file.

touch newhostname
leafpad newhostname

How to change hostname in Kali Linux - 14 - blackMORE Ops

Now, add the following lines to your newly created file:

#!/bin/bash
cp -n /etc/hosts{,.old}
idomainname=$(domainname -i)
fdomainname=$(domainname -f)
newhn=$(cat /dev/urandom | tr -dc 'A-Z' | head -c8)
echo $newhn > /etc/hostname
mv /etc/hosts /etc/hosts.old
echo "127.0.0.1 localhost" > /etc/hosts
echo "$idomainname  $fdomainname    $newhn" >> /etc/hosts
echo "# The following lines are desirable for IPv6 capable hosts" >> /etc/hosts
echo "::1     localhost ip6-localhost ip6-loopback" >> /etc/hosts
echo "ff02::1 ip6-allnodes" >> /etc/hosts
echo "ff02::2 ip6-allrouters" >> /etc/hosts
service hostname.sh stop
sleep 1
service hostname.sh start
service networking stop
sleep 1
service networking start
service network-manager stop
sleep 1
service network-manager start
xhost +$newhn
exit

Save it and exit leafpad.

Note: I’ve used only CAPS here for new hostname, 'A-Z'. You can also choose a mixure of uppercase and lowercase ('A-Za-z') or numbers etc.

Also I’ve chosen 8 characters long hostname head -c8, you can change it to any length you like.

Move script to /usr/bin/ folder

We need to move this file to /usr/bin.

mv newhostname /usr/bin/newhostname

Make it executable

Use the following command to make newhostname file executable.

chmod +x /usr/bin/newhostname

How to change hostname in Kali Linux - 16 - blackMORE Ops

Make it run at Startup:

Now that we have the script in right place and it’s executable, we need to add it your Startup applications. This will allow your system to run it every time you reboot your machine and generate a new hostname for you.
Follow the steps below:

  1. Click on “Applications” –> “System Tools” –> “Preferences” –> “Startup Applications”
  2. Click “Add”
  3. Fill in:
    1. Name: Random Host Name
    2. Command: /usr/bin/newhostname
    3. Comment: Start Kali with a random hostname each boot
  4. Click Save
  5. Close Windows

How to change hostname in Kali Linux - 17 - blackMORE Ops

 

How to change hostname in Kali Linux - 18 - blackMORE Ops

How to change hostname in Kali Linux - 19 - blackMORE Ops

Reboot

Finally reboot your machine to load the script at start-up.

reboot

How to change hostname in Kali Linux - 5 - blackMORE Ops

Enjoy your new hostnames. Here’s mine

 

How to change hostname in Kali Linux - 20 - blackMORE Ops

Credits and sources:

Similar procedures were posted in different places:

  1. Telecomix Wiki
  2. Ubuntu Forums by rocksockdoc
  3. Kali forums by testingresults, ,
  4. Notesbit by Jiltin

Thanks for reading. Please share with others.

Check Also

Correct way of installing VirtualBox Guest Additions in Kali Linux 2016.2/2017 (Kali Rolling)

How to install VirtualBox Guest Additions in Kali Linux (Kali Rolling / Kali Linux 2016.2 / Kali 2017)

Since Kali Linux 2016 came out (also known as Kali Rolling), it seems that Official …

Run Kali Linux in Microsoft Azure on SSD for free - blackMORE Ops - 1

Run Kali Linux in Microsoft Azure on SSD for free

Big news for Kali Linux users, now you can run Kali Linux in Microsoft Azure …

12 comments

  1. Thanks awesome! I changed it so it used dictionary words. Makes me a bit less unusual than random gen. numbers I think. Just change the one line to newhn=$(cat /usr/share/dict/american-english | sort -R $FILE | head -1)

    I just put /usr/bin/newhostname in my /etc/rc.local above exit0

  2. I loved this site… I will like to help you “blackMORE” if it’s possible by me.

  3. Nice tutorial sir, But i have a problem, when i applied this, my network manager stopped and i got no network connection. and i was unable to connect to my host network too. my lan connection was showing nothing. Can you help me why this happened and how can i solve this.

  4. nice and I got it.. tq blackmoreops.!

  5. how to change it to normally

  6. HOW DO YOU ADD IT TO START UP IN KALI LINUX 2.0 ?

  7. Just watch this video and apply the /usr/bin/newhostname

  8. The first method worked with me. Thanks for the tip.

  9. Just what I was looking for! Thanks!

Use WordPress.com, Twitter, Facebook, or Google+ accounts to comment (anonymous comments allowed)

This site uses Akismet to reduce spam. Learn how your comment data is processed.