понедельник, 19 мая 2014 г.

Linux-to-cisco: IPIP

Cisco global IP - xxx.xxx.xxx.xxx
Cisco ipinip IP - 10.1.252.5/30
Linux global IP - yyy.yyy.yyy.yyy
Linux ipinip IP - 10.1.252.6/30

IPIP

host

sudo ip tunnel add tun0 mode ipip remote xxx.xxx.xxx.xxx local yyy.yyy.yyy.yyy
sudo ip addr add 10.1.252.6/30 dev tun0
sudo ip link set up dev tun0

router

interface Tunnel173
 ip address 10.1.252.5 255.255.255.252
 tunnel source xxx.xxx.xxx.xxx
 tunnel destination yyy.yyy.yyy.yyy
 tunnel mode ipip
 keepalive 15
exit

IPSec

host

/etc/racoon/racoon.conf:
log debug;
path pre_shared_key "/etc/racoon/psk.txt";
listen {
        adminsock "/var/run/racoon/racoon.sock" "root" "operator" 0660;
}
remote xxx.xxx.xxx.xxx {
        exchange_mode main;
        initial_contact on;
        proposal_check obey;
        proposal {
                encryption_algorithm 3des;
                hash_algorithm md5;
                authentication_method pre_shared_key;
                dh_group modp1024;
        }
}
sainfo address yyy.yyy.yyy.yyy/32 4 address xxx.xxx.xxx.xxx/32 4 {
        lifetime time 1800 seconds;
        encryption_algorithm 3des;
        authentication_algorithm hmac_md5;
        compression_algorithm deflate;
        pfs_group 2;
}


/etc/ipsec-tools.conf:
#!/usr/sbin/setkey -f
flush;
spdflush;
spdadd yyy.yyy.yyy.yyy/32 xxx.xxx.xxx.xxx/32 ipencap -P out ipsec
        esp/transport/yyy.yyy.yyy.yyy-xxx.xxx.xxx.xxx/require;
spdadd xxx.xxx.xxx.xxx/32 yyy.yyy.yyy.yyy/32 ipencap -P in ipsec
        esp/transport/xxx.xxx.xxx.xxx-yyy.yyy.yyy.yyy/require;

router

crypto isakmp key keymaster address yyy.yyy.yyy.yyy
crypto map VPN-CM 173 ipsec-isakmp
 set peer yyy.yyy.yyy.yyy
 set transform-set VPN
 set pfs group2
 match address IPSEC-173
exit
ip access-list extended IPSEC-173
 permit ipinip host xxx.xxx.xxx.xxx host yyy.yyy.yyy.yyy
end

вторник, 11 марта 2014 г.

How to locate path to a file from an inode number

As for Ext4 filesystem next command should help you:
$ sudo debugfs -R 'ncheck 393094' /dev/sda2 2>/dev/null


Answer source: http://unix.stackexchange.com/questions/35292/quickly-find-which-files-belongs-to-a-specific-inode-number#comment47948_35310

четверг, 27 февраля 2014 г.

Touchpad support in Debian on Dell 7720

1. Download the latest driver source code package from here (currently newest package is 1.3): http://www.dahetral.com/public-download

2. Then run these commands:
sudo apt-get install dkms
tar -xf psmouse-alps-dst-X.X.tbz
sudo mv usr/src/psmouse-alps-dst-X.X/ /usr/src/psmouse-alps-dst-X.X/
sudo dkms add psmouse/alps-dst-X.X
sudo dkms autoinstall
sudo rmmod psmouse && sudo modprobe psmouse

вторник, 18 февраля 2014 г.

CryptoPro: Перенос ключей

Для переноса ключей КриптоПро, хранящихся в реестре с одного ПК на другой можно воспользоваться стандартной функцией КриптоПро - копирование контейнеров на закладке Сервис приложения КриптоПро CSP
Можно скопировать контейнер на внешний носитель, например USB-флеш, а затем на новом ПК этой же процедурой с носителя скопировать в контейнер. Однако такой способ сработает, если при генерации ключа вы отмечали галочкой возможность экспорта ключа, по умолчанию возможность экспорта ключей (копирование) запрещено.

В этом случае необходимо проделать следующее:
  • запустить REGEDIT.EXE и найти ключ реестра следующего вида:
HKEY_LOCAL_MACHINE\SOFTWARE\Crypto Pro\Settings\USERS\<SID>\Keys\<KEYID>













где:
<SID> – идентификатор пользователя, Windows XP/7 может быть определен с по следующему пути (с помощью файлового менеджера FAR или стандартным Windows Explorer с включенной возможностью просмотра скрытых файлов) "C:\Documents and Settings\Имя пользователя\Application Data\Microsoft\Credentials\, папка находящаяся по указанному пути и есть необходимый нам SID пример значения: «S-1-5-21-1636172540-271800513-1139810728-1095»;
<KEYID> – идентификатор контейнера ключа, при входе на сайт высвечивающийся вверху диалогов выбора сертификата или в выпадающем списке напротив типа ключевого носителя; пример: «{026f52a7-e325-4e2a-9088-4be64a18f5dd}»; также можно определить, запустив КриптоПро CSP, далее в закладке Сервис нажать Просмотр сертификата в контейнере, в качестве носителя выбрать «Реестр», в списке напротив перебирать идентификаторы ключевых контейнеров, нажимая «ОК» и «Далее», пока не найдется нужный сертификат;
  • после определения нужного ключа реестра – экспортировать его в файл (меню «Реестр», «Экспорт файла реестра…»),










указанным выше способом определить идентификатор <SID> пользователя на машине, куда будут перенесены ключи
  • в получившемся в результате экспорта файле заменить везде идентификатор старого пользователя на новый (при использовании доменной аутентификации <SID> пользователя не меняется и данный шаг можно пропустить),
открыть этот файл можно, например, в Блокноте (Notepad);
  • импортировать файл реестра на новом ПК, куда переносятся ключи (просто запустив его двойным щелчком мыши);
  • установить сертификат на новом ПК, используя программу КриптоПро CSP - закладка Сервис - Просмотр сертификата в контейнере

(при этом на новом ПК в КриптоПро должен быть, естественно, добавлен считыватель Реестр через закладку Оборудование кнопка Настроить считыватели)

Взято из руководства пользователя Райффайзен Банка.

суббота, 15 февраля 2014 г.

Windows 8.1 PPTP disconnection issue (Solved)

After upgrade my Windows 8 to 8.1 I've lost stability in connection to PPTP-Server on Cisco 1841. Windows client connects to the server, passes authentication, gets address and routes, and disconnects after 15-20 seconds. A solution is to turn on data encryption in VPN's settings.


среда, 22 января 2014 г.

DHCP Failover Configuration

Primary server:
failover peer "failover-partner" {
    primary;
    address dhcp-primary.example.com;
    port 519;
    peer address dhcp-secondary.example.com;
    peer port 520;
    max‐response‐delay 60;
    max‐unacked‐updates 10;
    mclt 3600;
    split 128;
    load balance max seconds 3;
}

Secondary server:

failover peer "failover-partner" {
    secondary;
    address dhcp-secondary.example.com;
    port 520;
    peer address dhcp-primary.example.com;
    peer port 519;
    max‐response‐delay 60;
    max‐unacked‐updates 10;
    load balance max seconds 3;
}
Both servers:
omapi-port 7911;
omapi-key omapi_key;
key omapi_key {
    algorithm hmac-md5;
    secret Ofakekeyfakekeyfakekey==;
}
subnet 10.100.100.0 netmask 255.255.255.0 {
    option domain-name-servers 10.0.0.53;
    option routers 10.100.100.1;
    pool {
        failover peer "failover-partner";
        range 10.100.100.20 10.100.100.254;
        }
}
Key generation:
dnssec‐keygen ‐a HMAC‐MD5 ‐b 512 ‐n USER DHCP_OMAPI


Source: https://kb.isc.org/article/AA-00502/31

четверг, 31 октября 2013 г.

How to install Java plugin in Chrome browser under Linux


Just link libnpjp2.so which is in <your-java-dir>/lib/i386 to/opt/google/chrome/plugins (you need to create this directory beforehand).

Example:

mkdir /opt/google/chrome/plugins
cd /opt/google/chrome/plugins

Restart Chrome and enjoy!

вторник, 15 октября 2013 г.

Удаление всех писем старше года

В дополнение к старому-старому посту.

Проверенная строчка:
find -depth -type f -mtime +365 -path "*/var/mail/domain_name/user_name/Maildir/*/cur/*" -printf "%Ty%Tm%Td-%p\n" -delete

Для тотальной чистки можно user_name заменить на *

P.S.: Чистка корзин -
find /var/mail/domain_name -depth -path "*/Maildir/\&BCMENAQwBDsENQQ9BD0ESwQ1-/cur/*" -type f -print -delete

воскресенье, 11 августа 2013 г.

Cisco VPN (ISAKMP + IPSec)

Yesterday I have found a great channel on youtube: CBTvideochannel. There are a lot of video about Cisco CCNA espetially about security.
Youtube playlist: http://www.youtube.com/playlist?list=PL6ED021B0FA97EFB1
CBT Nuggets official website: http://www.cbtnuggets.com/

Here is a checklist to make Site-to-Site VPN using IPSec (c) CBTNuggets:

Creating Site‐to‐Site VPNs with Pre‐Shared Keys 

Documentation: 

1. Document your IKE Phase 1 negotiation criteria (example below)
• Hashing: SHA‐1
• Authentication: pre‐shared
• Key exchange: Diffie‐Hellman Group 2

2. Document your IPSec (IKE Phase 2) negotiation criteria (example below)
• Encryption algorithm: esp‐aes 128
• Authentication: esp‐sha‐hmac

Configuring IKE Phase 1: 

1. Enable ISAKMP
• Router(config)#crypto isakmp enable

2. Create ISAKMP Policy :
• Router(config)#crypto isakmp policy <1-10000>
• Router(config)#crypto isakmp policy 100
• Router(config-isakmp)#encryption aes 128
• Router(config-isakmp)#authentication pre-share
• Router(config-isakmp)#group 2
• Router(config-isakmp)#hash sha
• Router(config-isakmp)#exit

3. Configure ISAKMP Identity:
• Router(config)#crypto isakmp identity <address/hostname>
• Router(config)#crypto isakmp identity address

4. Configure ISAKMP Key:
• Router(config)#crypto isakmp key 0 <Pre-Shared-Key> address <remote IP address>
• Router(config)#crypto isakmp key 0 SUPERSECRETKEY address

Configuring IKE Phase 2: 

1. Create transform sets:
• Router(config)#crypto ipsec transform-set <name> <methods>
• Router(config)#crypto ipsec transform-set SET-NAME esp-aes 128 esp-sha-hmac
• Router(cfg-crypto-trans)#mode tunnel
• Router(cfg-crypto-trans)#exit

2. (optional) Configure IPSec lifetime :
• Router(config)#crypto ipsec security-association lifetime <seconds/kilobytes> <value>
• Router(config)#crypto ipsec security-association lifetime seconds 86400

3. Create mirrored ACLs defining traffic to be encrypted and the traffic expected to be received
encrypted.
• Router(config)#ip access-list extended <name>, Router(config)#permit ip <source network | wildcard> <destination network | wildcard>
• Router(config)#ip access-list extended S2S-VPN-TRAFFIC
• Router(config-ext-nacl)#permit ip 172.30.2.0 0.0.0.255 192.168.1.0 0.0.0.255
• Router(config-ext-nacl)#exit

4. Set up IPSec crypto‐map : Router(config)#crypto map <name> <seq> ipsec-iskmp
• Router(config)#crypto map S2S-VPN 100 ipsec-isakmp
   o Router(config-crypto-map)#match address S2S-VPN-TRAFFIC
   o Router(config-crypto-map)#set peer 1.1.1.2 <remote IP>
   o Router(config-crypto-map)#set pfs group2 <group1/2/5 optional>
   o Router(config-crypto-map)#set transform-set SET-NAME <set>

Apply to Interface: 

1. Apply crypto‐map to interface
• Router(config)#int fa4
• Router(config-int)#crypto map S2S-VPN

Create Interesting Traffic: 

1. Ping from source network to destination network.
Verify:
2. Show and debug commands (QM_IDLE is good)
• Router#show crypto isakmp sa
• Router#show crypto ipsec sa
• Router#debug crypto isakmp
• Router#debug crypto ipsec
• Router#show crypto map
• Router#show crypto isakmp policy
• Router#show crypto ipsec transform-set
• Router#clear crypto sa

вторник, 9 июля 2013 г.

Java: установка проприетарщины на debian

Оказывается, есть замечательный пакет под названием java-package, который позволяет собрать пакеты из файлов .tar.gz, скаченных с http://www.oracle.com
Пример использования:

make-jpkg jre-7u25-linux-x64.tar.gz
sudo dpkg -i oracle-java7-jre_7u25_amd64.deb

вторник, 28 мая 2013 г.

Cygwin + SSHd + Windows 2012 = login error?

When I was installing Cygwin under Windows 2012 I met trouble with connecting to SSH-server. Every time I tried to connect to server via SSH I got messages "Operation not permitted" and "Connection closed".

That problem was because Windows 2012 as Windows 7 and Vista has UAC (User Account Control). So special account (cyg_server) hasn't enough rights to utilize SSH-server.

The solution is to give some more rights: SeAssignPrimaryTokenPrivilege, SeCreateTokenPrivilege, SeTcbPrivilege, and SeServiceLogonRight.

List of current token rights can be got with command: 


editrights -l -u cyg_server

By next commands you can add missing rights:

editrights -a SeAssignPrimaryTokenPrivilege -u cyg_server
editrights -a SeCreateTokenPrivilege -u cyg_server
editrights -a SeTcbPrivilege -u cyg_server
editrights -a SeServiceLogonRight

среда, 6 марта 2013 г.

Install Sun JDK 1.7 on Debian


There are a couple of things that you need to be sure prior to upgrade. The most important that your app is supported by the latest Sun JDK. Once you are sure start up by downloading the latest JDK package direct from sun.
Using wget:
http://download.oracle.com/otn-pub/java/jdk/7u3-b04/jdk-7u3-linux-x64.tar.gz
In the above example we downloaded the latest 64bit version of JDK for Linux.
Extract the tar file let's say in your /home directory and follow the instructions below:
cd /home/
tar xzvf jdk-7u3-linux-x64.tar.gz
update-alternatives --install /usr/bin/java java /home/jdk1.7.0_03/bin/java 1
update-alternatives --install /usr/bin/javac javac /home/jdk1.7.0_03/bin/javac 1
update-alternatives --set java /home/jdk1.7.0_03/bin/java
update-alternatives --set javac /home/jdk1.7.0_03/bin/javac
That's all, verify that is working properly and that the right binary is called:

$:/home# java -version
java version "1.7.0_03"
Java(TM) SE Runtime Environment (build 1.7.0_03-b04)
Java HotSpot(TM) 64-Bit Server VM (build 22.1-b02, mixed mode)


понедельник, 4 февраля 2013 г.

Monitoring DNS Query with TCPDUMP

В логах DNS-сервера встречались ошибки связанные с резольвированием tassweq. Google подсказал, что такой и подобные запросы генерирует злой троян. Осталось найти зараженную банку. Для этого решил изучить DNS-запросы с этим доменом.

tcpdump -vvv -s 0 -l port 53 | grep tassweq

-s - не обрезать пакет
-l - выводить результаты полинейно в stdout
-vvv - большой объем выводимых данных

четверг, 15 ноября 2012 г.

Cisco: резкое ухудшение канала без видимых причин. Лечение.

День с утра как-то не задался. То вирусы, то провайдеры.
Началась беда-беда. Которая бывает, как уже предположили, раз в пол-года - интернет-канал стал безобразно себя вести:
- скорость резко снижается, почти до нуля;
- пинги теряются пачками;
- работать невозможно.

Трассировка показывала, что потери происходят на границе наш_маршрутизатор - PPPoE_концентратор_провайдера. Приглашенный специалист технической поддержки из компании Дом.Ру подключал свой ноутбук - все было нормально, даже не обращая внимания на полностью забитый канал (запускали качаться торрент).

Кусок конфига:

interface FastEthernet0/1
 description R-Telecom
 no ip address
 duplex auto
 speed auto
 pppoe enable group 1
 pppoe-client dial-pool-number 1
 crypto map VPN-RTK
!
interface FastEthernet0/1.1537
 description R-Telecom
 encapsulation dot1Q 1537
 ip address 10.0.0.1 255.255.255.0
 no ip redirects
 no ip unreachables
 pppoe enable group 1
 pppoe-client dial-pool-number 1
 no cdp enable
 crypto map VPN-RTK
!

Решение следующее:
Удалил виртуальный канал FastEthernet0/1.1537.

Причина: либо сам канал, либо (ошибочно?) прописанный запуск звонилки Dialer1. Грешу на второе, но проверять сейчас никто не даст :)