.htaccess tutorialai
Parašė ozzWANTED 2007 kovo 3 12:03:36
Vienas iš būdų apsaugoti savo tinklapį nuo nulaužimų.
[1] Susikuriate .htaccess į jį įrašote:
AuthName "Section Name" (čia vardas turi būti vietoj section name)
AuthType Basic
AuthUserFile /full/path/to/.htpasswd (irašykite savo duomenys iki failo .htpasswd)
Require valid-user
Tada susikuriate .htpasswd ir įrašote norimo username-vartotojo arba vartotojų(galima ir kelis) nicką kuriuo užsiregistravęs žmogus ir slaptažodį kuriuo jis bus įleidžiamas:
nickas:slaptažodis
galima duoti priėjimą keliems vartotojams norint duoti keliems rašykite tą patį į kitą eilutę.
Įėjimas prie užrakinto folderio vartotojams kuriems davėte priėjimą.
Eikite šiuo adresu pakeisdami duomenys:
http://nickas:slaptažodis@www.adresas.lt/nurodykite_užrakintą_aplanką/
[2] Redirektinimas iš vieno failo į kitą
Susikuriate ir įrašote :
Redirect /kur_randasi/iš/root/file.ext http://www.adresas.lt/new/file/failas.xyz
[3] Blokavimas IP adreso iš .htaccess.
Susikuriate ir įrašote:
deny from 000.000.000.000 (IP adresas vietoj 000.000 ir t.t.)
[4] Suvedus adresą neteisingai iki failo kurio pas jūs nėra arba kitaip pavadintas meta įvairias klaidas pvz. 404 taigi išmoksime padaryti,kad vietoj įvairių klaidų numestų į jūsų pradinį arba norimą puslapį.
Susikuriam ir įrašom:
ErrorDocument errornumber /file.html (vietoj file.html jūsų norimą puslapį į kurį redirektintų,vietoj errornumber rašome klaidos skaičių pvz. 404)
Jei failas nėra root direktorijoje tada jums reikia rašyti :
ErrorDocument 500 /direktorija/file.html
Paaiškininmai:
401 - reikalingas autorizavimas
400 - bloga užklausa
403 - draudimas įeiti (visiems)
500 - serverio klaida (Internal Server Error)
404 - blogas puslapis
[5] Jeigu norit,kad jūsų saitas nebūtų atakuojamas spammerių?Tai galima padaryti,ir spammeriams bus daug sunkiau surasti jus.
Įrašome į .htaccess :
RewriteCond %{HTTP_USER_AGENT} Wget [OR]
RewriteCond %{HTTP_USER_AGENT} CherryPickerSE [OR]
RewriteCond %{HTTP_USER_AGENT} CherryPickerElite [OR]
RewriteCond %{HTTP_USER_AGENT} EmailCollector [OR]
RewriteCond %{HTTP_USER_AGENT} EmailSiphon [OR]
RewriteCond %{HTTP_USER_AGENT} EmailWolf [OR]
RewriteCond %{HTTP_USER_AGENT} ExtractorPro
RewriteRule ^.*$ X.html [L]
[6] Jei nenorite,kad žmones naudotų jūsų paveikslėlius savo puslapyje tam tiks šis .htaccess įrašome :
RewriteEngine on RewriteCond %{-http-referer-} !^$ RewriteCond %{-http-referer-} !^http://(www.)?adresas.lt/.*$ [NC] RewriteRule .(gif|jpg)$ - [F]
Kur paryškinau keisti į jūsų puslapio adresą
Beto galima priskirti šį dalyką,ne vien uždraustri naudoti jūsų paveiksliukus,bet ir failus.
[7] Beje pamiršau paminėti,jog galima padaryti,kad į saitą įleistų tik kelis arba vieną IP.
allow from 000.000.000.000
[8] Dinaminiai linkai (kažkas forume jau minėjo,bet čia kitoks mano variantas)
Pvz.:
Paprastas linkas: http://adresas.lt/tutorials.php?cat=php&id=1
Dynaminis linkas: http://adresas.lt/tutorials/php/1//
Įrašom :
Options +FollowSymLinks
RewriteEngine on
RewriteRule tutorials/(.*)/(.*)/$ /tutorials.php?cat=$1&id=$2
Paryškintą vietą pasikeisite kaip tik norite,pagal savo tinklapį.
[9] Tinklapio ugniasienė. Blokuoja bandymus laužtis, žinoma, tai neapsaugos nuo rimtesnių crackerių.
#!/bin/bash
NAME="firewall"
IPTABLES="/sbin/iptables"
case "$1" in
start)
echo -n "Starting firewall.."
#Flush then restrict
$IPTABLES -F
$IPTABLES -P FORWARD DROP
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
# For ping and traceroute
$IPTABLES -A INPUT -p icmp --icmp-type 0 -j ACCEPT
$IPTABLES -A INPUT -p icmp --icmp-type 8 -j ACCEPT
$IPTABLES -A INPUT -p icmp --icmp-type 3 -j ACCEPT
$IPTABLES -A OUTPUT -p icmp --icmp-type 4 -j ACCEPT
$IPTABLES -A OUTPUT -p icmp --icmp-type 12 -j ACCEPT
$IPTABLES -A INPUT -p icmp --icmp-type 11 -j ACCEPT
$IPTABLES -A INPUT -p icmp --icmp-type 30 -j ACCEPT
# For traceroute
$IPTABLES -A INPUT -i eth0 -p udp --source-port 32769:65535
--destination-port 33434:33523 -j ACCEPT
$IPTABLES -A OUTPUT -p udp --source-port 32769:65535
--destination-port 33434:33523 -j ACCEPT
$IPTABLES -A OUTPUT -p icmp --icmp-type 0 -j ACCEPT
$IPTABLES -A OUTPUT -p icmp --icmp-type 8 -j ACCEPT
$IPTABLES -A OUTPUT -p icmp --icmp-type 3 -j ACCEPT
$IPTABLES -A OUTPUT -p icmp --icmp-type 4 -j ACCEPT
$IPTABLES -A OUTPUT -p icmp --icmp-type 12 -j ACCEPT
$IPTABLES -A OUTPUT -p icmp --icmp-type 11 -j ACCEPT
$IPTABLES -A OUTPUT -p icmp --icmp-type 30 -j ACCEPT
$IPTABLES -A INPUT -i lo -j ACCEPT
$IPTABLES -A OUTPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
$IPTABLES -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
###########################################
#Custom ports from low to high
$IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
###########################################
#query #Soort #poort #accpet/deny #Protecol
$IPTABLES -A INPUT -p tcp --destination-port 20:21 -j ACCEPT # FTP
$IPTABLES -A INPUT -p tcp --destination-port 22 -j ACCEPT # SSH
$IPTABLES -A INPUT -p tcp --destination-port 25 -j ACCEPT # SMTP
$IPTABLES -A INPUT -p tcp --destination-port 53 -j ACCEPT # DNS
$IPTABLES -A INPUT -p udp --destination-port 53 -j ACCEPT # DNS
$IPTABLES -A INPUT -p tcp --destination-port 143 -j ACCEPT # IMAP
$IPTABLES -A INPUT -p tcp --destination-port 443 -j ACCEPT # HTTPS
$IPTABLES -A INPUT -p tcp --destination-port 666 -j ACCEPT # HTTPS monit
$IPTABLES -A INPUT -p udp --destination-port 666 -j ACCEPT # TeamSpeak cold server
$IPTABLES -A INPUT -p udp --destination-port 7777 -j ACCEPT # Tactical Ops server
$IPTABLES -A INPUT -p udp --destination-port 7778 -j ACCEPT # Tactical Ops server query
$IPTABLES -A INPUT -p udp --destination-port 32768 -j ACCEPT # DNS
$IPTABLES -A INPUT -p tcp --dport auth --j REJECT # Reject sunrpc 111
###########################################
$IPTABLES -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
###########################################
#query #Soort #poort #accpet/deny #Protecol
$IPTABLES -A OUTPUT -p tcp --destination-port 20:21 -j ACCEPT # FTP
$IPTABLES -A OUTPUT -p tcp --destination-port 25 -j ACCEPT # SMTP
$IPTABLES -A OUTPUT -p tcp --destination-port 80 -j ACCEPT # HTTP
$IPTABLES -A OUTPUT -p tcp --destination-port 110 -j ACCEPT # POP
$IPTABLES -A OUTPUT -p tcp --destination-port 143 -j ACCEPT # IMAP
$IPTABLES -A OUTPUT -p tcp --destination-port 666 -j ACCEPT # HTTPS monit
$IPTABLES -A OUTPUT -p udp --destination-port 666 -j ACCEPT # TeamSpeak cold server
$IPTABLES -A OUTPUT -p tcp --destination-port 993 -j ACCEPT # SIMAP
$IPTABLES -A OUTPUT -p tcp --destination-port 995 -j ACCEPT # SPOP
$IPTABLES -A OUTPUT -p udp --destination-port 7777 -j ACCEPT # Tactical Ops server
$IPTABLES -A OUTPUT -p udp --destination-port 7778 -j ACCEPT # Tactical Ops server query
$IPTABLES -A OUTPUT -p tcp --destination-port 8090 -j ACCEPT # FrontPage extension
$IPTABLES -A OUTPUT -p tcp --destination-port 14534 -j ACCEPT # TeamSpeak admin page
###########################################
#End custom ports
###########################################
$IPTABLES -A INPUT -p tcp --dport auth --j REJECT # Reject sunrpc 111
$IPTABLES -A INPUT -p tcp -i lo -d 0/0 -j ACCEPT
echo "..done"
;;
stop)
echo -n "Stopping firewall.."
$IPTABLES -F
$IPTABLES -P FORWARD DROP
$IPTABLES -P OUTPUT ACCEPT
$IPTABLES -P INPUT ACCEPT
echo "done"
;;
*)
echo "Usage: $NAME {start|stop}"
exit 1
;;
esac
Pagal ©Scripterz.info