Geo IP PurePerl Install

apt-get install libdbi-perl libdbd-mysql-perl
apt-get install libgeoip1 libgeoip-dev
wget http://search.cpan.org/CPAN/authors/id/B/BO/BORISZ/Geo-IP-PurePerl-1.25.tar.gz
tar -zxf Geo-IP-PurePerl-1.25.tar.gz
cd Geo-IP-PurePerl-1.25
perl Makefile.PL
make test
make install

MRTG Auto-Scaling of Y-Axis Range

By default, the y-axis is scaled from 0 to the maximum allowed value for the sensor type. This range may be too wide, therefore auto-scaling may be used. To enable auto-scaling, find the entries for „Unscaled“ and replace the text „dwmy“ with „n“. This will allow MRTG to automatically scale the
y-axis to better fit the actual received data.

Replace the lines:

Unscaled[intsens_1]: dwym

with:

Unscaled[intsens_1]: n

This will need done for each sensor you wish to set to auto-scale.

mrtg-autoscale

Source: https://www.networktechinc.com/download/mrtg-autoscale.html

Limit DirectAdmin MySQL usage for users

#!/bin/sh

#Limits (setting these options to 0 removes the limit)
MAX_QUERIES_PER_HOUR=0
MAX_UPDATES_PER_HOUR=0
MAX_CONNECTIONS_PER_HOUR=0
MAX_USER_CONNECTIONS=0

#We get DirectAdmin MySQL root user and password here
DA_MYSQL=/usr/local/directadmin/conf/mysql.conf
MYSQLUSER=`grep „^user=“ ${DA_MYSQL} | cut -d= -f2`
MYSQLPASSWORD=`grep „^passwd=“ ${DA_MYSQL} | cut -d= -f2`

mysql -e „use mysql; UPDATE mysql.user SET
max_questions=${MAX_QUERIES_PER_HOUR},
max_updates=${MAX_UPDATES_PER_HOUR},
max_connections=${MAX_CONNECTIONS_PER_HOUR},
max_user_connections=${MAX_USER_CONNECTIONS} WHERE user!=’da_admin’ AND
user!=’root’ AND user!=’da_roundcube’ AND user!=’da_atmail’; FLUSH
PRIVILEGES;“ –user=${MYSQLUSER} –password=${MYSQLPASSWORD}

echo „Limits have been set.“
exit 0;

Failo teksto turinio keitimas naudojant sed komandą

Norint greitai surasti ir pakeisti tekstą į naują, galime naudoti šias komandas:

Ši komanda pakeis surastą tekstą „senas-tekstas“ į „naujas-tekstas“
sed -i 's/senas-tekstas/naujas-tekstas/g' failas.txt

Norint greitai rasti ir pakeisti tekstą visuose .txt, ar kitokio tipo failuose, naudojame tokią komandą
sed -i 's/senas-tekstas/naujas-tekstas/g' *.txt

Iptables flush

iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

Iptables forwarding

root@sklepas:~# sysctl net.ipv4.ip_forward=1
root@sklepas:~# iptables -A PREROUTING -t nat -i eth0 -p udp --dport 27102 -j DNAT --to 107.161.126.115:27106
root@sklepas:~# iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 27102 -j DNAT --to 107.161.126.115:27106
root@sklepas:~# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Named BIND Log išjungimas

Atsidarome /etc/named.conf

Apačioje pakeičiame senus nustatymus logging { į:

logging {
category notify { null; };
category lame-servers { null; };
category security { null; };
};

Išsaugom ir perkraunam named servisą

(centos) service named restart

(debian) /etc/init.d/named restart

Swap atminties pridėjimas / praplėtimas

Swap atmintis yra reikalinga, kai pritrūksta RAM virtualiosios atminties.

Viską atliekame prisijungę su root.

1. Susirandame esamus swap diskus:

cat /proc/swaps

Jei randame esamų swap diskų juos galime pašalinti, kad neužimtu bereikalingą vietą diske.

2.  Išjungiame esamą swap atmintį (pvz pas mane buvo esamas swap failas:  /dev/sdb3), tad rašau

swapoff /dev/sdb3

3. Galime ištrinti seną nenaudojamą swap atmintį

rm /dev/sdb3

4. Kuriame naują swap failą (su šia komanda bus sukuriamas 4gb talpos swap failas).

dd if=/dev/zero of=/swap bs=1M count=4096

vietoje 4096 galite rašyti mažiau arba daugiau, pvz 512. Kuriant naują atmintį gali užtrukti, priklausant kokio dydžio kuriamas diskas.

5. Aktyvuojam naujai sukurtą swap atmintį

mkswap /swap

6.  Įjungiame swap atmintį

swapon /swap

5. Padarome, kad swap atmintis pasileistų kartu su sistemos paleidimu

Redaguojame /etc/fstab failą:

nano /etc/fstab

apačioje prirašome:

/swap           swap    swap    defaults        0       0

spaudžiame ctrl+x,  y, enter

Lighttpd vhost pavyzdys

Įrašom į /etc/lighttpd/lighttpd.conf apačią

$HTTP["host"] == "domenas1.lt" {
 server.document-root = "/var/www/domenas1.lt/"
 }
$HTTP["host"] == "domenas2.lt" {
 server.document-root = "/var/www/domenas2.lt/"
 }

perkrauname lighttpd: /etc/init.d/lighttpd/restart

Kietojo disko [HDD] testavimo komanda

Su šia komanda sukuriamas, o po to iškart ištrinamas 1GB apimties failas, parodoma informacija, per kiek laiko ir koku greičiu jis buvo sukurtas.

Komanda Linux aplinkoje:

dd if=/dev/zero of=test bs=64k count=16k conv=fdatasync && rm test

Naudotojų draudimas jungtis prie serverio per SSH protokolą

Jei nenorime kad naudotojai turėtų galimybę jungtis prie serverio per SSH protokolą, viską darome pagal šį straipsnį. Šis straipsnis praves tiems, kas norės laikyti FTP serverį ir nenorės, kad naudotojai galėtų jungtis prie serverio per SSH protokolą.

1. Atsisiunčiame nano teksto redagavimo programą (nebūtina bet patogiau naudoti).

apt-get install nano

2. Atsidarome ssh serverio konfiguracinį failą su komanda

nano /etc/ssh/sshd_config

3. Atidaryto failo apačioje įrašome tokią komandą

AllowUsers root

po AllowUsers įrašome kokie naudotojai turės galimybę jungtis prie serverio per SSH protokolą, visi kiti naudotojai, kurių šiame saraše nebus negalės jungtis prie serverio per SSH protokolą.

Tarkime noriu kad prisijungimo galimybę per SSH turetų šie naudotojai: justas, tomas, root, mantas

tada įrašome šią komandą:

AllowUsers justas tomas root mantas

4.Išsaugome pakeitimus konfiguraciniame faile

spaudžiame ctrl+x tada raidę y ir klavišą enter.

5. perkrauname SSH servisą

/etc/init.d/ssh restart

 

Laiko zonos keitimas

Ši komanda yra bendra visoms linux operacinėms sistemoms

ln -sf /usr/share/zoneinfo/Europe/Vilnius /etc/localtime

Debian operacinei sistemai

dpkg-reconfigure tzdata

 

LAMP Serverio konfiguraciniai failai silpniems serveriams

Su šiomis konfiguracijomis LAMP serveris puikiausiai veiks turint 256 RAM operatyviosios atminties. Būdėjimo rėžimu LAMP serveris naudos maždaug 50 RAM.

httpd.conf failas randasi /etc/apache2

StartServers 1
MinSpareServers 1
MaxSpareServers 1
ServerLimit 50
MaxClients 50
MaxRequestsPerChild 5000

my.cnf failas randasi /etc/mysql arba etc

[mysqld] user        = mysql
pid-file    = /var/run/mysqld/mysqld.pid
socket        = /var/run/mysqld/mysqld.sock
port        = 3306
basedir        = /usr
datadir        = /var/lib/mysql
tmpdir        = /tmp
language    = /usr/share/mysql/english
skip-external-locking
skip-innodb

bind-address        = 127.0.0.1

skip-locking
key_buffer = 16K
max_allowed_packet = 1M
table_cache = 4
sort_buffer_size = 64K
read_buffer_size = 256K
read_rnd_buffer_size = 256K
net_buffer_length = 2K
thread_stack = 64K
innodb_file_per_table = 1

[mysqldump] quick
max_allowed_packet = 16M

[mysql] no-auto-rehash

[isamchk] key_buffer = 8M
sort_buffer_size = 8M

[myisamchk] key_buffer = 8M
sort_buffer_size = 8M

[mysqlhotcopy] interactive-timeout

Ir pabaigai, jei naudojate phpmyadmin ir prisijungus jums rodo įspėjimus, kad

„Serveris veikia su Suhosin. Prašome perskaityti dokumentaciją dėl galimų problemų.“

Išjungiame Suhosin

suhosin.ini failas randasi /etc/php5/conf.d

Užkomentuojame antrą elutę

; configuration for php suhosin module
;extension=suhosin.so

ir pakeičiam suhosin.session.encrypt = on į

suhosin.session.encrypt = Off

Viską atlikus perkraunam mysql ir apache2 servisus

/etc/init.d/apache2 restart

/etc/init.d/mysql restart