Mmh.. te funcionó así tal cual? me parece raro ya que no tienes un session_start() en el archivo autenticar.php, y sin eso no deberían guardarse las variables de sesion..
Ahora, del paginaprivada.php la forma del if con el que compruebas esta bien, pero la verdad el else sobra. Podria ser simplemente:
Código PHP:
session_start();
if (!isset($_SESSION['usuario']) || $_SESSION['usuario'] == "") {
header("Location: login.php");
exit; //Esto suele ser bueno para prevenir que el script haga alguna otra cosa antes de redireccionar
}
//Aqui ya todo el contenido que quieras, puesto que si esta aqui, significa que esta autentificado