While VNC implements some sort of encryption for the login process, it’s not fully secure and the login password could be sniffed and cracked by people on the local network or Internet. Plus the actual VNC sessions aren’t encrypted at all.
To fully secure your VNC sessions you can tunnel the traffic through a SSH connection to the server. To do so, you’ll first want to set up an SSH server and open the SSH port 22 on the machine you’re trying to remotely access. Then on the computer you’re remotely connecting from you can set up a port forward in the SSH client.