Il nome del file è giusto, deve chiamarsi .htaccess
Anche il contenuto di entrambi i file sembra corretto.
Quindi le cause possono essere due:
1- Ricordati che .htpasswd non lo devi creare tu, ma devi farlo tramite il tool htpasswd di apache.
2- Per impostazione predefinita nell'httpd.conf è settato di negare la ridefinizione delle regole di sicurezza tramite il file htaccess
Per cambiare l'impostazione devi impostare il parametro AllowOverride su All (il predefinito è None).
Attenzione: devi modificarlo solo dove ti indico qua sotto, altrimenti il server potrebbe diventare poco sicuro 
	codice:
	#
# This should be changed to whatever you set DocumentRoot to.
#
<Directory "Cartella dei file">
    #
    # Possible values for the Options directive are "None", "All",
    # or any combination of:
    #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
    #
    # Note that "MultiViews" must be named *explicitly* --- "Options All"
    # doesn't give it to you.
    #
    # The Options directive is both complicated and important.  Please see
    # http://httpd.apache.org/docs/2.2/mod/core.html#options
    # for more information.
    #
    Options Indexes FollowSymLinks
    #
    # AllowOverride controls what directives may be placed in .htaccess files.
    # It can be "All", "None", or any combination of the keywords:
    #   Options FileInfo AuthConfig Limit
    #
    AllowOverride All
    #
    # Controls who can get stuff from this server.
    #
    Order allow,deny
    Allow from all
</Directory>
 
In questo modo apache ti dovrebbe leggere gli .htaccess  
 
Ciao 