GUI for fdisk ?

If you wish to use GUI for fdisk, just use cfdisk :-)

Categories: Linux Tags:

Как да разберем на кой порт коя услуга “слуша” ?

Под Debian това става с помощта на lsof

sudo apt-get install lsof

Командата е елементарна:

lsof -i :port

Например, за да разберем коя услуга суша на порт 1723:

blagomir@dragonfly:~$ lsof -i :1723
COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
pptpd    6060 root    6u  IPv4 532867      0t0  TCP *:1723 (LISTEN)
blagomir@dragonfly:~$
Categories: Debian Tags:

QR код за адреса на нашия блог :)

За тези, които не знаят какво е QR code могат да погледнат тук (wiki)

Categories: Всичко друго Tags:

May 17th, 2011 No comments

Cisco change ssh default port

How to change cisco default port :

g1r5_router(config)#ip ssh port 2000 rotary 1
g1r5_router(config)#line  vty 0 4 
g1r5_router(config-line)#rotary 1
g1r5_router(config-line)#end
g1r5_router#copy running-config startup-config
Destination filename [startup-config]? 
Building configuration...
[OK]

Now lets try it:

[13:16]vhristev@g1r5:~$uname -a
Darwin g1r5 10.2.0 Darwin Kernel Version 10.2.0: Tue Nov  3 10:37:10 PST 2009; root:xnu-1486.2.11~1/RELEASE_I386 i386 i386
[13:16]vhristev@g1r5:~$ssh 192.168.0.1 -p 2000 
vhristev@192.168.0.1's password: 
 
g1r5_router>en
Password: 
g1r5_router#sh ver 
Cisco IOS Software, 1841 Software (C1841-ADVIPSERVICESK9-M), Version 12.4(13b), RELEASE SOFTWARE (fc3)
Categories: Всичко друго Tags:

Table “mysql.servers” doesn’t exist

Често срещана грешка в PLESK е:

Error: Connection to the database server has failed:
Table ‘mysql.servers’ doesn’t exist

Това се получава след като се upgrade-не mysql сървъра.
За да решим проблема трябва с root през конзолата да изпълним следната команда:

[root@server ~]# mysql_fix_privilege_tables --user=admin --password=<root password here> --verbose

Ще видите доста грешки, но всичко ще е наред и можете да продължите да работите с PLESK без проблеми :)

This script updates all the mysql privilege tables to be usable by
the current version of MySQL
 
You can safely ignore all 'Duplicate column' and 'Unknown column' errors
because these just mean that your tables are already up to date.
This script is safe to run even if your tables are already up to date!
 
ERROR 1060 (42S21) at line 132: Duplicate column name 'File_priv'
ERROR 1060 (42S21) at line 138: Duplicate column name 'Grant_priv'
ERROR 1060 (42S21) at line 139: Duplicate column name 'Grant_priv'
ERROR 1060 (42S21) at line 140: Duplicate column name 'Grant_priv'
ERROR 1060 (42S21) at line 151: Duplicate column name 'ssl_type'
ERROR 1061 (42000) at line 161: Duplicate key name 'Grantor'
ERROR 1054 (42S22) at line 188: Unknown column 'Type' in 'columns_priv'
ERROR 1060 (42S21) at line 210: Duplicate column name 'type'
ERROR 1060 (42S21) at line 220: Duplicate column name 'Show_db_priv'
ERROR 1060 (42S21) at line 237: Duplicate column name 'max_questions'
ERROR 1060 (42S21) at line 247: Duplicate column name 'Create_tmp_table_priv'
ERROR 1060 (42S21) at line 250: Duplicate column name 'Create_tmp_table_priv'
ERROR 1060 (42S21) at line 375: Duplicate column name 'Create_view_priv'
ERROR 1060 (42S21) at line 378: Duplicate column name 'Create_view_priv'
ERROR 1060 (42S21) at line 381: Duplicate column name 'Create_view_priv'
ERROR 1060 (42S21) at line 387: Duplicate column name 'Show_view_priv'
ERROR 1060 (42S21) at line 390: Duplicate column name 'Show_view_priv'
ERROR 1060 (42S21) at line 393: Duplicate column name 'Show_view_priv'
ERROR 1060 (42S21) at line 410: Duplicate column name 'Create_routine_priv'
ERROR 1060 (42S21) at line 413: Duplicate column name 'Create_routine_priv'
ERROR 1060 (42S21) at line 416: Duplicate column name 'Create_routine_priv'
ERROR 1060 (42S21) at line 422: Duplicate column name 'Alter_routine_priv'
ERROR 1060 (42S21) at line 425: Duplicate column name 'Alter_routine_priv'
ERROR 1060 (42S21) at line 428: Duplicate column name 'Alter_routine_priv'
ERROR 1060 (42S21) at line 431: Duplicate column name 'Execute_priv'
ERROR 1060 (42S21) at line 434: Duplicate column name 'Execute_priv'
ERROR 1060 (42S21) at line 447: Duplicate column name 'max_user_connections'
ERROR 1060 (42S21) at line 456: Duplicate column name 'Create_user_priv'
ERROR 1060 (42S21) at line 478: Duplicate column name 'Routine_type'
ERROR 1054 (42S22) at line 603: Unknown column 'Event_priv' in 'where clause'
ERROR 1060 (42S21) at line 619: Duplicate column name 'sql_mode'
ERROR 1060 (42S21) at line 658: Duplicate column name 'originator'
ERROR 1060 (42S21) at line 662: Duplicate column name 'time_zone'
ERROR 1060 (42S21) at line 665: Duplicate column name 'character_set_client'
ERROR 1060 (42S21) at line 671: Duplicate column name 'collation_connection'
ERROR 1060 (42S21) at line 677: Duplicate column name 'db_collation'
ERROR 1060 (42S21) at line 683: Duplicate column name 'body_utf8'
ERROR 1054 (42S22) at line 693: Unknown column 'Trigger_priv' in 'where clause'
done
Categories: PLESK Tags:

Системен потребител с много непрочетени писма във “вътрешната” поща

Както може би знаете, при изпълнението на всеки cron, output-а се изпраща до системния потребител изпълнил cron-a. Точно за това днес получих алерт от един от сървърите, че има необичайно голям mail файл за един от потребителите на машината.

Лесно решение на проблема. Отиваме в папката с mailboxes и разбира се потвърждаваме големината на файла:

server:~# cd /var/spool/mail
server:/var/spool/mail# ls -lh
total 3.8G
-rw------- 1 mail     mail 3.8G 2011-04-27 09:13 user
-rw------- 1 root     mail 5.2K 2011-04-05 16:45 root

Лесно го затриваме :) В моя случай изпразваме съдържанието на файла:

server:/var/spool/mail# echo > user
Categories: Debian, Linux Tags:

OpenVPN под Windows

April 22nd, 2011 2 comments

VPN (Virtual Private Network) стана доста модерна технология днес. OpenVPN е доста добър софтуер, но защо да не го използваме и под Windows. Ето и целия процес на изграждане на мрежата стъпка по стъпка, но преди това някои основни неща. Има три основни вида настойки, който трябва да се направят: настойки на самия VPN Server, настойки на VPN Client и допълнителни настойки на мрежата. Обикновенно VPN мрежата се състои от един VPN Server и няколко VPN Client-а. Потра който използва OpenVPN по подразбиране е UTP 1194, но винаги може да го промените, ако се налага. Ако се намирате зад рутър, той трябва да се препрати до конкретната машина. Използването на статично IP e задължително, освен ако не използвате Dynamic DNS.

Необходимия софтуер може да свалите от: http://openvpn.se/download.html

Инсталирайте, като приемете създаването на TAP-Win32 виртуални устройства. След инсталацията отворете C:\Program Files\OpenVPN\sample-config и копирайте файла “server” в папката ..\Config\. Отворете файла и конфигурирайте необходимите променливи. Ето и примерна конфигуранция:

## server.ovpn ##
port 1194
proto udp
dev tun
ca ca.crt
cert widget.crt
key widget.key
dh dh1024.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push “route 192.168.0.0 255.255.255.0″
push “dhcp-option WINS 192.168.0.1″
push “dhcp-option DNS 192.168.0.1″
push “dhcp-option DOMAIN acme.com.local”
keepalive 10 120
comp-lzo
max-clients 4
persist-key
persist-tun
status openvpn-status.log
verb 3


Генериране на сертификати (CA):

Отворете в cmd:

C:\Program Files\OpenVPN\easy-rsa> init-config
C:\Program Files\OpenVPN\easy-rsa> vars
C:\Program Files\OpenVPN\easy-rsa> clean-all
C:\Program Files\OpenVPN\easy-rsa> build-ca

Като на последния файл попълнете исканите данни. Копирайте генерирания файл в Config папката:

C:\Program Files\OpenVPN\easy-rsa> copy keys\ca.crt ..\config\

Генериране на сървърен ключ и сертификат:
След като сме настроили CA, може да генерираме ключ и сертификат за сървъра.

C:\Program Files\OpenVPN\easy-rsa> vars
C:\Program Files\OpenVPN\easy-rsa> build-key-server widget
C:\Program Files\OpenVPN\easy-rsa> build-dh

Последната процедура може да отнеме време. После копирайте файловете:

C:\Program Files\OpenVPN\easy-rsa> copy keys\widget.crt ..\config\
C:\Program Files\OpenVPN\easy-rsa> copy keys\widget.key ..\config\
C:\Program Files\OpenVPN\easy-rsa> copy keys\dh1024.pem ..\config\

Настройки при клиента:

## acme.ovpn ##
client
proto udp
dev tun
remote 1.2.3.4 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert fred.crt
key fred.key
comp-lzo
verb 3

Тук трябва да промените IP, името на сертификата (fred).

Генерирайте на сървъра сертификати за отделните потребители (fred e пример)

C:\Program Files\OpenVPN\easy-rsa> vars
C:\Program Files\OpenVPN\easy-rsa> build-key fred

C:\Program Files\OpenVPN\easy-rsa> copy keys\fred.crt a:\
C:\Program Files\OpenVPN\easy-rsa> copy keys\fred.key a:\
C:\Program Files\OpenVPN\easy-rsa> copy keys\ca.crt a:\

C:\Program Files\OpenVPN\easy-rsa> copy a:\fred.crt ..\config\
C:\Program Files\OpenVPN\easy-rsa> copy a:\fred.key ..\config\
C:\Program Files\OpenVPN\easy-rsa> copy a:\ca.crt ..\config\

После следва десен бутон Connect и готово.

Categories: LAN, Windows, Защита Tags:

Защита от DoS атака с iptables

Тези команди ще ви помогнат да се защитите от DoS атака. Посредством тях, ще блокирате всяко IP, което за 60 секунди има повече от 20 връзки (connections) към текущата машина:

iptables -I INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --set
 
iptables -I INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --update --seconds 60 --hitcount 20 -j DROP

Резултат от командата:

[root@server ~]# netstat -alpn| grep ":80"| awk '{ print $5 }'| cut -d: -f4| sort| uniq -c | sort -n
      1 *
      3 66.249.72.131
     16 81.100.74.82
     17 82.12.246.158
     19 212.183.140.13
     19 78.148.123.94
     20 85.211.47.252
     20 86.166.141.234
     20 87.97.215.7
     20 89.253.191.173
     20 91.92.170.172
     20 94.156.57.170
     20 94.169.158.18
     22 77.78.11.99

Разбира се това е само пример и можете да смените стоностите за секунди (60) и брои връзки (20).
Имайте впредвид, че максималните стойности за –seconds са 60, а за –hitcount са 20

За да премахнете правило (RULE) от iptables използвайте следните команди.
Лист на всички правила в iptables:

iptables -L INPUT -n --line-numbers
[root@server ~]# iptables -L INPUT -n --line-numbers
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination         
1    DROP       tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:80 state NEW recent: UPDATE seconds: 60 hit_count: 20 name: DEFAULT side: source 
2               tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:80 state NEW recent: SET name: DEFAULT side: source 
3    fail2ban-SSH  tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:22 
4    DROP       all  --  67.195.0.0/24        0.0.0.0/0           
[root@server ~]#

За да изтрием правилото за блокиране на IP-тата в този случай пишем:

iptables -D INPUT 1
Categories: bash, Cent OS, Debian, Linux, Защита Tags:

Брой конекции от 1 IP адрес

Как да разберем колко конекции (connections) имаме към определен порт на нашата машина.
Командата дава списък с IP–та и за всяко едно от тях брои връзките, които то (IP-то) е направило към машината. Текущата команда сканира връзките към порт 80:

netstat -alpn| grep ":80"| awk '{ print $5 }'| cut -d: -f4| sort| uniq -c | sort -n
Categories: bash Tags:

iFrame or not?

How to detect if our website is opened inside an iFrame?

if ( window != window.top ) { alert("I'm in a frame!"); }
Categories: JavaScript Tags: