Synology-Forum.nl
Overige software => Web Station => Topic gestart door: keeseminentie op 12 januari 2012, 17:31:40
-
L.s.
Heb net een Synology DS212j gekocht na de vorige (DS107+)
Alles werkt flitsend en precies als verwacht. Dus daar heel tevreden over.
M.b.v. de DS121j host ik nu ook een via internet benaderbare website (eigen domeinnaam met doorlink).
De vraag is echter hoe ik deze website met een inlognaam en een wachtwoord kan beveiligen.
Inmiddels uren studerend op internet doorgebracht en een .htpassword en een .htacces aangemaakt en in de map Web gezet.
Daarna is de hele site niet meer zichtbaar.
Na verwijdering van beide bestanden weer wel.
Vrees dat ik iets verkeerd doe....
Wie kan mij echt vertellen wat ik moet doen om een website te beveiligen?
B.v.d.
-
...Vrees dat ik iets verkeerd doe....
Wie kan mij echt vertellen wat ik moet doen om een website te beveiligen? ...
Het gebruik van .htaccess en .htpassword lijkt de meest simpele weg.
Het is lang, lang geleden dat ik daarmee gespeeld heb ...
Ik neem aan dat je al hier hebt gekeken: http://www.synology.com/support/faq_show.php?lang=nld&q_id=347
Begin anders eens je .htaccess file met ons te delen, dan kunnen we je mogelijk helpen.
Deel uiteraard niet je .htpassword file.
Je schrijft dat je .htaccess- en .htpassword-file beide in de folder Web staan.
Ik weet niet eens zeker of beide in dezelfde folder mogen staan, maar het is
zeker niet aan te raden.
Om dezelfde redenen genoemd in stap 4 in de link compleet te omzeilen wordt vaak aangeraden je .htpassword-file uit veiligheid niet in Web of een subfolder daarvan te zetten, maar juist buiten de folder Web.
Je moet voor AuthUserFile sowieso bij voorkeur een absoluut pad specificeren; een relatief
pad kan wel, maar is complex omdat dat geldt ten opzichte van de ServerRoot en niet t.o.v. je websiteroot. Misschien zit daar ook wel je probleem?
Ik weet niet of je websiteroot op de Synology wel werkt met "/volume1/web", omdat "web" een
systeemfolder is, maar geen "fysieke" folder.
Weet iemand zo te vertellen wat op de Syno's de absolute paden van ServerRoot en de websiteroot precies zijn?
Denk ook aan hoofdlettergevoeligheid!
Als alternatief kan je uiteraard in PHP zelf precies maken wat je wil hebben,
maar dat vraagt alleen maar meer kennis en kunde, zeker omdat het "secure" moet zijn.
Er zijn ook wel methodes voor Javascript beschreven, maar die zijn
zelden echt robuust (lees: veilig) te maken.
Plerry
-
Als kleine aanvulling op Plerry's reactie:
Als je die twee bestanden met Notepad aangemaakt hebt, gaat het zeker niet werken. Notepad plaatst einde-regel markeringen (CRLF = Carriage Return Line Feed) waar Linux niet mee overweg kan.
Lees even:
viewtopic.php?f=32&t=5216#msg22664 (http://www.synology-forum.nl/viewtopic.php?f=32&t=5216#msg22664)
Dus, als je Notepad gebruikt hebt, gebruik Notepad++ (of VI, maar dat gaat uitsluitend via de command line van je DS).
-
L.s.
Beide heren hartelijk dank voor jullie uitstekende en snelle commentaren en adviezen.
Ik begrijp inmiddels, dat ik het helemaal verkeerd gedaan heb (en het dus niet werkt) en ga opnieuw beginnen en daarbij de richtlijnen volgen zoals in de link aangegeven.
Alvast een vraagje over het eerste gedeelte van de instructie.
AuthName "Title"
AuthType "Basic"
AuthUserFile "/volume1/web/passwd/admin.pw"
require valid-user
Moet ik dit zo letterlijk overnemen of moet "Title" en "Basic" nog voor iets anders worden vervangen?? Voorlopig zal ik nog niets anders doen dan dat aangegeven wordt, voor wat betreft het pad, totdat iemand kan vertellen waar ik de map dan wel neer moet zetten.
Ook het advies van het gebruik van de tekstverwerker neem ik me ter harte.
De twee bestanden heb ik aangemaakt op een MacBookPro met het programma "teksteditor" , een standaard programma van OS X Lion. Als dat niet het juiste is, wat is dan een werkbaar alternatief voor een Mac??
Tenslotte een vraagje over het genereren van een password. Zoals wel meer gebruikers, heb ook ik niet de beschikking over een linux machine om wachtwoorden mee om te zetten. Ik heb in plaats daarvan op internet gezocht en iets gevonden.
Heb je een advies waarmee ik alternatief een wachtwoord mee kan maken?
-
Ik heb even gekeken naar de link die Plerry verstrekte.
Ik vind de Official Synology Wiki iets duidelijker:
http://forum.synology.com/wiki/index.ph ... s_controls (http://forum.synology.com/wiki/index.php/Using_the_Apache_web_page_access_controls)
(In die tekst staat ook een link naar web password generators)
Mijn .htaccess ziet er zo uit (alleen quotes om de Authname parameter, het tekstje dat de inlogger ziet):
AuthUserFile /var/log/.htpasswd
AuthType Basic
AuthBasicProvider file
AuthName "Log in voor toegang tot HENKS WEB"
require valid-user
Voor tests kun je .htpasswd eerst even in /volume1/web zetten. De naam van dit bestand is vrij. Laat het wel met een puntje beginnen, bestanden beginnend met een puntje zijn hidden bij web-access. (voorbeeld: AuthUserFile /volume1/web/.htpasswd). Als alles werkt, verplaatsen naar ergens waar alleen admin bij kan, hoeft uiteraard niet in /var/log, elke fatsoenlijke plek buiten /volume1 is goed.
Dat kan echter alleen als je als gebruiker root (en pw van admin) je DS via telnet/SSH benadert. Alleen dan kun je systeemmappen, bestanden (dus buiten volume1) benaderen.
Dat schijnt met een Mac bijvoorbeeld zo te gaan (Mac heeft SSH standaard aan boord):
http://www.webhostingtalk.nl/shared-web ... r-mac.html (http://www.webhostingtalk.nl/shared-webhosting/108393-putty-voor-mac.html)
Je kunt dan op de Linux command line van je DS de ingebouwde editor (vi) gebruiken, is wel een antieke editor.
Editor voor Mac. Ik heb nog nooit met een Mac gewerkt, maar deze leek me wel wat:
http://www.barebones.com/products/TextWrangler/ (http://www.barebones.com/products/TextWrangler/)
Zoals ik al schreef: Ik heb nog nooit een Mac van zeer dichtbij gezien. Een Mac forumlid kan het wellicht beter uitleggen.
-
L.s.
Ben onder de indruk van de snelle en uitgebreide reacties!
Wil jou / jullie ook even bedanken in woord!
Laat jullie asap de resultaten weten!
Thanx!
-
Heren,
Inmiddels een .htaccess en een .htpasswd gemaakt met de geadviseerde tekstverwerker "TextWrangler" en .htaccess in de sub directory /volume1/web/BADD gezet en de .htpasswd in /volume1/web en inderdaad verschijnt er een inlog venster..... Dus dat ziet er als test goed uit!!
Maar waar moet ik nu het bestand .htpasswd veiligheidshalve dan zetten?
Ik heb nog niet zoveel mappen behalve de standaard; moet ik een speciale map eerst aanmaken? En wordt dan .htaccess zonder meer gevonden? Sorry ben nog maar een hele kleine beginner......
-
Heren,
Toch nog een kink in de kabel....
Het inlogscherm wordt keurig gepresenteerd, dus mag ik aannemen dat het bestand .htaccess goed is.
Het gaat echter fout bij het inloggen zelf. Dat wordt niet geaccepteerd en er volgt de melding dat de pagina niet kan worden weergegeven.
Ik veronderstel dat het bestand .htpasswd fout is of op een verkeerde plek staat.
Ga nogmaals een paswoord genereren en opnieuw plaatsen.
-
Wel een inlogschrm? -> .htaccess staat op de goede plek.
Inloggen gaat niet? -> verkeerd pad in .htaccess naar .htpasswd, of foutieve passwords daarin.
Goede plek voor .htpasswd? -> Elke plek buiten /volume1/web voldoet, best is uiteraard een plek waar alleen admin bij kan.
Meest makkelijk is het plaatsen in een te maken aparte share, wel alleen toegankelijk voor admin. Iets als 'zadminonly' (de 'z' zorgt ervoor dat ie onderaan gesorteerd wordt)
Maar eerst even testen met een .htpasswd op dezelfde plek als je .htaccess, met uiteraard het goede pad naar .htpasswd
-
Heren,
Na veel gebroddel en getob (anders kan ik het helaas nog niet noemen) ben ik weer zover, dat het .htaccess bestand blijkbaar goed is, want het inlog scherm is zichtbaar en invulbaar maar na het invullen is het weer "sorry enz..."
Wat heb ik gedaan:
Ik heb een map gemaakt (voorlopig even) in: /volume1/web/password en in die map password, staat het bestand .htpasswd
In de .htaccess heb ik aangegeven:
AuthType Basic
AuthName "website Kees!"
AuthUserFile /volume1/web/password/.htpasswd
AuthGroupFile /dev/null
require valid-user
Het bestand .htpasswd heb ik gemaakt in de website :
http://www.oscommerce.nl/htaccess_generator.php waar een inlognaam en een versleuteld password uit komt (althans dat denk ik)
Is het een juiste gedachte, dat er iets mis is met het versleutelde password of deugt het programma niet waar ik het mee heb gemaakt.
Overigens, waarom moet je een pasword eigenlijk versleutelen als je .htpasswd toch in een beveiligde map neerzet. Werkt het niet als je gewoon opgeeft:
kombinnen:kloppen ipv kombinnen: en dan een moeilijke versleuteling?
Of is dit een echte domme vraag??
-
Na mijn laatste vraag was het nogal stil, maar inmiddels ben ik er toch helemaal uit.....
Het maken van een .htacces, zoals eerder omschreven, werkt uitstekend, zoals in het vorige bericht al aangegeven.
Echter het wachtwoord bestand .htpasswd werd niet herkend.
Na wat rond zoeken en rond vragen, kwam ik tot de ontdekking dat het genereren van een password moet geschieden op de eigen Mac met behulp van het programma "terminal" .
Daar voer je dan het volgende commando line in:
"htpasswd -nb inlognaam password" en sla dit op. Kopieer de gegenereerde versleuteling en maak met behulp van een juiste tekstverwerker een htaccess.txt bestand aan enzovoort..... Zo simpel kan het leven zijn, maar zoals altijd: je moet het maar weten.......
Het werkt!!!
Bedankt voor alle hulp.