Dodawanie użytkownika na .htpasswd

92

Używam .htpasswddo ochrony hasłem określonego katalogu na moim serwerze. Zauważyłem jednak, że za każdym razem, gdy to zrobię, sudo htpasswd -c /etc/apache2/.htpasswd newusermoja aktualna zawartość .htpasswdzostanie nadpisana. Każdy katalog mojej witryny ma własnego użytkownika na .htpasswd.

Jak nie nadpisać zamiast tego dodać nowego użytkownika na moim .htpasswd?

fishcracker
źródło

Odpowiedzi:

148

Dokładnie to samo, po prostu pomiń tę -copcję. Dokumentacja Apache na ten temat tutaj .

htpasswd /etc/apache2/.htpasswd newuser

Ponadto htpasswdzazwyczaj nie jest uruchamiany jako root. Zwykle należy do serwera WWW lub właściciela udostępnianych plików. Jeśli używasz roota do edycji zamiast logować się jako jeden z tych użytkowników, jest to akceptowalne (tak sądzę), ale będziesz chciał uważać, aby przypadkowo nie utworzyć pliku jako root (a tym samym mieć roota i nikt inny nie może go edytować).

Corbin
źródło
Dobry Boże! Nigdy nie myślałem, że ten przełącznik jest odpowiedzią, wybacz mi moją niewinność.
fishcracker
Jednak nie pozwala mi modyfikować istniejącego .htpasswd, nalega na użycie -cprzełącznika.
fishcracker
@fishcracker Jaki jest błąd? htpasswd /path/to/file usernamejest całkowicie poprawny (w każdym razie składniowo), a nawet pierwszy przykład w dokumentacji Apache.
Corbin
Mój błąd. Próbuję zrobić htpasswd -c /etc/apache2/.htpasswd newuserna moim serwerze CentOS! Przepraszam, nie zauważyłem, że jestem w złym oknie. Za 5 minut przyjmie Twoją odpowiedź. Dzięki!
fishcracker
19

FWIW, htpasswd -n usernamewyśle ​​wynik bezpośrednio na standardowe wyjście i całkowicie uniknie dotykania plików.

Curtis Mattoon
źródło