First-time Epoptes User (How do I set this thing up?)

Asked by Andrew Plett on 2016-02-04

I am a new epoptes user. At least I would like to be. I am running Ubuntu 14.04 on 21 machines in a computer lab and would like to be able to monitor them...
I am trying to install Epoptes. I don't have a DNS server.
What I have read states that I might need to put my epoptes server IP to /etc/hosts in all clients, before installing epoptes client. I'm not exactly sure what this means.
I am not a programmer and have very little experience working in the terminal.
I need a basic step-by-step to walk me through this setup.
When I say step-by-step. I mean, don't assume that I know anything, because I probably do not.
Thanks for any help that you can provide.

Question information

Language:
English Edit question
Status:
Solved
For:
Epoptes Edit question
Assignee:
No assignee Edit question
Solved by:
Alkis Georgopoulos
Solved:
2016-02-06
Last query:
2016-02-06
Last reply:
2016-02-04
Alkis Georgopoulos (alkisg) said : #1

Hi,

so basically the question is, how do I tell one computer (client) to "see" another computer (server) under Linux.
Since there are many many ways to do that, it's not really an epoptes question, one can find a lot of good and extensive answers about that in google.

Nevertheless, let me sum up a few of the most common answers here:

1) Use a DNS server, e.g. dnsmasq. OK, say you don't have that, let's go to the next option.

2) Use a static IP for the epoptes server. There's an easy part and a hard part in this.
The easy part is using network manager to assign a static IP to your epoptes server.
The hard part is going to your router's web interface to make sure that this static IP is outside of its DHCP pool.
If you do use a static IP for the epoptes server, then you'd run this in a terminal on each client:
sudo nano /etc/hosts
and you'd put the following there, replacing "1.2.3.4" with your server's IP:
1.2.3.4 server
Note that you should not put the epoptes server hostname in that file, you should put the word "server", as epoptes-client searches this name by default.

3) So let's go to the third and easier option.
Windows computers automatically "see" each other with a protocol named WINS. Ooops, we don't have that, we're in Linux.
Linux does have something similar though, it's called "avahi" (in MacOS the same thing is called "zeroconf").
Without going into details, if your epoptes PC is called "epoptes-server", then all the clients see that with avahi as "epoptes-server.local", with a .local appended at the end of the hostname.
That means that if you have the server and a client booted, you can do this from a terminal on the client:
ping epoptes-server.local
If this works, then put that name in /etc/default/epoptes-client. On each client, run:
sudo nano /etc/default/epoptes-client
and replace the line that says
#SERVER=server
with
SERVER=epoptes-server.local

After you do (2) or (3), you should also fetch the epoptes certificate on each client:
sudo epoptes-client -c
And then you should restart the client:
sudo reboot

Hope this helps! :)

Andrew Plett (plettski) said : #2

So, if I do option 3, I should rename my computer to "epoptes-server"?

Best Alkis Georgopoulos (alkisg) said : #3

No, this was just an example, use you existing hostname.

Andrew Plett (plettski) said : #4

Thank you Alkis. I was able to get it to work!
I did change the name of my computer to epoptes-server simply because it is easy to remember.
But, I see now that that is not necessary.

I am going to post my procedure for anyone else who might need it:

Setting up Epoptes for school computer lab management

Setting up the Server:
For the host machine, I would recommend changing the computer name to “epoptes-server” (This is not necessary, but it is easy to remember)

Then Install epoptes on the server (the teacher’s computer).
type:
sudo apt-get install epoptes

Add a user type:
sudo gpasswd -a username epoptes

To change a computer name:
Open a terminal and type
sudo nano /etc/hostname
press enter
You should be able to see the previous hostname (computer name)
After changing the computer name, press ctrl-o to save and then press Enter
Then press ctrl-x to exit the editor

Now type: sudo nano /etc/hosts
then press enter
then go to the second line and and change your computer name to the name that you changed it to in the previous step (ex. “epoptes-server”).
You will have to restart your system to complete the changes

Optional:
Now, in the client computers you can open a terminal and type
ping epoptes-server.local
This will tell you whether or not the client computer can find the server.
I also like to change the names of the client computers.
You can do this by repeating the steps above on each of your client computers. This makes it easy in a lab setting to keep all of the computers straight.

Client Computers
Now you are ready to install epoptes on the client computers.
Open a terminal and type:
sudo apt-get install epoptes-client
When it asks to continue type:
y
Press Enter when it asks to continue.
after epoptes installs, you will have to tell the client computer where to find the server.
So, in a terminal type:
sudo nano /etc/default/epoptes-client
this will open up an editor. Replace the line that says #SERVER=server
with
SERVER=epoptes-server.local
(remember to delete the # at the beginning of the line.)
press Ctrl-o to save
press enter
press ctrl-x to exit the editor

Now you need to fetch the epoptes certificate on the client:
sudo epoptes-client -c
Then you should restart the client:
type:
sudo reboot

You will need to repeat this on all of the client computers.

The above worked for me. I hope it helps someone else.