Avatar billede bio Novice
18. november 2016 - 20:02 Der er 9 kommentarer

Begrænse adgang til html-webside så kun adgang fra visse IP-adresser

En del biblioteker eller skoler har adgang til visse websider - fordi de har oplyst deres IP-adresser til websidens ejer.

Hvordan laves denne IP-adresse begrænsning på en webside med html ?

Samme spørgsmål for en WordPress-underside.
Avatar billede kurt54 Ekspert
18. november 2016 - 20:13 #1
Nu ved jeg ikke hvad formålet er men rigtig mange kører med dynamisk IP adresse dvs deres adresse skifter og den IP adresse du har godkendt går til en anden.
Avatar billede bio Novice
18. november 2016 - 20:30 #2
Formålet er at lade en webside være åben for visse computere - som jeg skrev: "En del biblioteker eller skoler har adgang til visse websider - fordi de har oplyst deres IP-adresser til websidens ejer. "

Hvordan kan et bibliotek få adgang til et tidsskrifts hjemmeside - du ved, at når du går hjem til din egen computer har du ikke adgang til det, som du så på bibliotekets computer.

Altså - jeg har en hjemmeside, som for visse undersider ønskes åben for nogle, men ikke for alle.  (siden er lavet i manuel html; jeg kan læse at .htaccess filen kan justeres når der er tale om php, men det er der ikke tale om her (traditionel asp); i øvrigt er der jo også problemet med dynamiske ip-adresser når talen er om .htaccess filen, og det vil jeg også gerne lære om).
Avatar billede acore Ekspert
18. november 2016 - 22:13 #3
Du kan sagtens checke hvilken IP-adresse, der sendes i headeren. Og reagere på den information ved at give adgang til nogle og ej ytil andre.

Problemer er, at klienten selv kan styre headeren og at oplysningerne ikke behøver være korrekte. jeg mener det er svært (og nok umuligt) at gardere sig mod det.
Avatar billede Slater Ekspert
18. november 2016 - 22:20 #4
IP-adressen sendes ikke i en header. Mange sprog tilgår den som om den er en header, men den er en del af TCP-protokollen og kan ikke bare ændres af klienten. Med mindre klienten går gennem en proxy eller lignende, er den pålidelig nok.

Et bibliotek vil ofte have en fast IP. De fleste udbydere tilbyder det også for en overkommelig sum, og det bliver sandsynligvis gratis eller standard, når IPv6 vinder ordentlig indpas. Og det er ganske trivielt i ethvert web-rettet programmeringssprog eller serveropsætning, at lave en liste over IP'er der må tilgå siden. Dette omtales ofte som en ACL eller access control list.
Avatar billede Slettet bruger
19. november 2016 - 08:04 #5
hvis du vil blocke ip adresser, kan det kun gøres i webserveren router, eller en firewall software på serveren.

som eksempel, i min router har jeg spærret hele rusland og kina
Avatar billede Slater Ekspert
19. november 2016 - 08:37 #6
Eller i koden. Det kan gøres stort set i alle lag på serveren.
Avatar billede bio Novice
19. november 2016 - 13:37 #7
Tak for svar. I fortæller at det kan gøres i stort set alle lag på serveren, webserverens router, eller med en firewall software på serveren. Og/eller via udbyderen. Og at man i ethvert web-rettet programmeringssprog eller serveropsætning kan lave en liste over IP'er, der må tilgå siden, hvilket ofte omtales som en access control list (ACL).

God ide at blokere for trafik fra Kina og Rusland. Jeg kan se på en Sellfy.com -side for salg af en af mine bøger på dansk kommer hovedparten af besøgende fra Kina og Rusland (og fra USA), selv om det må være irrelevant for siden (da bogen er på dansk). En af mine hjemmesider (lavet i wordpress) blev for 10 dage siden hacket (og begyndte at udsende tusindvis af emails). Så det kan sikkert være en rigtig god ide at blokere for trafik fra visse steder. 

Mit ønske er dog her at blokere for al trafik til visse FOLDERE og kun tillade trafik for visse abonnenter til noget pdf-bilag eller web-bilag til en bog.

Desværre er jeg ikke kyndig nok - så det er dejligt at få at vide at det er nemt, men er det muligt at oplyse om hvordan jeg faktisk gør (jeg tænker at jeg måske i en FOLDER kan skrive en kode i index.html filen, men det er måske ikke sådan man gør???). (Jeg har en side, der er med gammel asp, og som jeg koder manuelt med .html og .asp filer)

Jeg kan også læse noget om en fil der hedder .htaccess (med punktum foran som skrevet her), og som vist så vidt jeg forstår kun er relevant for php-webhoteller såsom f.eks. Wordpress. Det vil jeg også gerne lære mere om, da jeg jo har nogle wordpress-websider.

Jeg har ikke min egen, private server stående online 24/7 hjemme, så skal jeg kontakte mine wethotel-udbydere (onecom, unoeuro osv.) for mine hjemmesider for at få indført disse ting?
Avatar billede Slater Ekspert
19. november 2016 - 13:51 #8
HTML er et af de få steder, det ikke kan lade sig gøre at lave noget i den stil.

.htaccess er ikke kun relevant for PHP, men for alle servere der benytter Apache som webserver, hvilket inkluderer de fleste PHP-hoteller, men ikke ASP, da det som regel kører på Windows-maskiner. Dog kan du også få extensions til IIS, der gør at .htaccess-filer kan bruges der. Jeg brugte engang en der hed ISAPI_Rewrite.

For at gøre det der, skal du bare oprette en fil der hedder ".htaccess" (husk puntum forrest, og husk at Windows ikke vil lade dig oprette en fil med det navn - du skal gemme den fra et program,  hvis du vil have den på Windows), og i den skriver du f.eks.

Order Deny,Allow
Deny from 12.12.12.12
Deny from 34.34.34.34

osv. med IP-adresser der skal blokeres. For at blokere en bestemt undermappe, skal filen bare placeres i denne undermappe.

I PHP-kode kan du f.eks. skrive øverst i index-filen for den relevante mappe:

if (in_array($_SERVER['REMOTE_ADDR'], [
    '12.12.12.12',
    '34.34.34.34'
])) exit;

Jeg er dog temmelig rusten i klassisk ASP, så kan ikke lige sige dig, hvordan det kan gøres der.
Avatar billede acore Ekspert
19. november 2016 - 19:57 #9
Tak til skater for #4, der gjorde mig klogere.

Som en tilføjelse til #8 - mange CMS systemer har indbygget ip-kontrol, som måske kan bruges.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester