I have a small VPS, without control panel, I will use it to host a single website. I want to setup DNS server for just this website on the server.
I read couple of tutorials but it never worked for me. They are all complex and talks about many details which I don't need.
I use centos5 with BIND. Is there any simple tutorial (or script!) which do this?
For only one domain on a small web infrastructure, you should really look into your provider DNS system.
However, if you really want to build the system by yourself and maintain it, look into DNSMASQ. This is WAY easier to 'configure and forget' than BIND will ever be for non-sysadmin.
While it is not made for 'public use', it will be able to withstand quite a bit of beating before folding. System is easy enough: you create a file with IP DNS-NAME combo (as seen in /etc/hosts) and you start dnsmasq.
If you are on CentOS, don't forget to open your firewall for it to work.
Here is CentOS's BIND documentation: http://www.centos.org/docs/5/html/Deployment_Guide-en-US/ch-bind.html