LINUX.ORG.RU

Сообщения firefedot

 

Интернет через OpenVPN на VDS/VPS не подключается

Форум — Admin

Доброе...

Посмотрел много на эту тему и у всех все немного разное...

Не нашел ответа, либо не увидел...

Есть CentOS 6.6x64, стоит OpenVPN 2.3.5. Хочу весь трафик клиентов пустить через впн, шлюз своеобразный сделать.

Проверил на локальных машинах, все работало с таким конфигом впн:

( читать дальше... )

И такой настройкой iptables:

*nat
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
-A FORWARD -m conntrack --ctstate NEW -i tun0 -s 10.68.0.1/24 -j ACCEPT
-P FORWARD DROP
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 1194 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

Решил все перенести на VDS/VPS.

Столкнулся с проблеvой, что клиент подключается, получает адрес и все, пингкует только сам сервер впн и адрес dvs внешний.

Пробовал разнsе варианты и по всей видимости запутался)

вот не много изменил iptables:

*nat
:PREROUTING ACCEPT [0:0].
:POSTROUTING ACCEPT [0:0].
:OUTPUT ACCEPT [0:0].
#-A POSTROUTING -s 10.68.0.0/24 -o venet0:0 -j MASQUERADE
-A POSTROUTING -o venet0:0 -j SNAT --to-source 37.*.*.181
COMMIT
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -i tun0 -j ACCEPT
-A FORWARD -i tun0 -j ACCEPT
-A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
-A FORWARD -m conntrack --ctstate NEW -i tun0 -s 10.68.0.1/24 -j ACCEPT
-P FORWARD DROP
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 1194 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A FORWARD -i tun0 -o venet0:0 -j ACCEPT
-A FORWARD -i venet0:0 -o tun0 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
#-A FORWARD -i tun0 -o venet0:0 -j ACCEPT
#-A FORWARD -i venet0:0 -o tun0 -j ACCEPT
COMMIT

Результат тот же.

Вывод iptables -nvL -t nat выдает:

Chain PREROUTING (policy ACCEPT 373 packets, 65501 bytes)
 pkts bytes target     prot opt in     out     source               destination

Chain POSTROUTING (policy ACCEPT 363 packets, 65069 bytes)
 pkts bytes target     prot opt in     out     source               destination
    0     0 SNAT       all  --  *      venet0:0  0.0.0.0/0            0.0.0.0/0           to:37.*.*.181

Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination

Вывод iptables -v -nL выдает:

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination
    0     0 ACCEPT     all  --  tun0   *       0.0.0.0/0            0.0.0.0/0
  853  295K ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
    1    28 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0
    0     0 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0
    1    52 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:1194
    1    40 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22
    7   312 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           reject-with-icmp-host-prohibited

Chain FORWARD (policy DROP 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination
  741  139K ACCEPT     all  --  tun0   *       0.0.0.0/0            0.0.0.0/0
    0     0 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           ctstate RELA
TED,ESTABLISHED
    0     0 ACCEPT     all  --  tun0   *       10.68.0.0/24         0.0.0.0/0           ctstate NEW
    0     0 ACCEPT     all  --  tun0   venet0:0  0.0.0.0/0            0.0.0.0/0
    0     0 ACCEPT     all  --  venet0:0 tun0    0.0.0.0/0            0.0.0.0/0
    0     0 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           reject-with
icmp-host-prohibited

Chain OUTPUT (policy ACCEPT 728 packets, 98004 bytes)
 pkts bytes target     prot opt in     out     source               destination

Так понимаю, что просто не до конца пробрасывается все) или все не пробрасывается)

Подскажите пожалуйста.

Спасибо.

 , , , ,

firefedot
()

rsync при повторном копировании zimbra (readlink_stat("...") failed: Permission denied (13))

Форум — Admin

Доброе...

Настроил rsync для доступа по ключам, все нормально подключаюсь....

Проверил на папочке /home/netmaster/tmp, нормально скопировал, и нормально синхронизирует при обновлении.

Решил сделать бекам zimbra. остановил ее сделал бекап со всеми правами в папку /home/netmaster/backup/zimbra и запустил команду

rsync -avz /home/netmaster/backup/zimbra/ netmaster@192.168.1.177:/home/netmaster/zimall_backup/zimbra_opt/

Все копировалось... Только в конце пошли штук 20 Permission denied на архивы... Решил проверить и заодно посмотреть будут ли новые файлики заменятся. Поторяю запрос:

rsync -avz /home/netmaster/backup/zimbra/ netmaster@192.168.1.177:/home/netmaster/zimall_backup/zimbra_opt/

и получаю в ответ

sending incremental file list
rsync: change_dir "/home/netmaster/backup/zimbra" failed: Permission denied (13)
rsync: change_dir#1 "/home/netmaster/zimall_backup/zimbra_opt/" failed: Permission denied (13)
rsync error: errors selecting input/output files, dirs (code 3) at main.c(534) [receiver=3.0.6]
rsync: connection unexpectedly closed (9 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(600) [sender=3.0.6]

Как будто с правами проблема, хотя до этого нормально скопировались другие папки ... и на том сервере разрешено все копировать... и почему он сразу так не сказал, а только при повторном обращении...

Подскажите пожалуйста, как быть или может я не правильно запрос настроил?... Конфиг rsync не трогал, там только pid и log

Спасибо

 ,

firefedot
()

Zimbra LDAP + Ejabberd

Форум — Admin

Доброе...

Стоит Zimbra 8.5

Планирую поставить ejabberd и брать пользователей из Zimbra.

Не получается подключится, вот лог с ошибкой:

=WARNING REPORT==== 2014-11-16 12:38:37 ===
W(<0.272.0>:eldap:924) : LDAP bind failed on 192.168.1.155:389
Reason: invalidCredentials

Не могу найти нужные параметры в Zimbra LDAP.

Порт я понял какой , ег найти не сложно было ) - 389

А вот дальше, я брал пример с небольшого мануала

{ldap_servers, [«192.168.1.155»]}.
{ldap_port, 389}.

{ldap_uids, [{«sAMAccountName», "%u"}]}.
{ldap_filter, "(objectCategory=person)"}.

{ldap_base, «DC=developer,DC=com»}.
{ldap_rootdn, «userjabber@developer.com»}.
{ldap_password, «123456»}.

Вот, что не понятно:

{ldap_servers, [«192.168.151.2»]}. - Тут понятно, это адрес лдапа
{ldap_port, 389}. - Тут тоже, порт
{ldap_uids, [{«sAMAccountName», "%u"}]}. - Это не могу найти, где это в лдапе (и не могу найти описание, что бы понять)
{ldap_filter, "(objectCategory=person)"}. - так понял, это фильтр, по каторому рабоет лдап Зимбры, где глянуть, то же не пойму
{ldap_base, «DC=developer,DC=com»}. - ну это понятно, домен
{ldap_rootdn, «userjabber@developer.com»}. - это пользователь. который уже есть
{ldap_password, «123456»}. - пароль, это я понял)

Вот вроде нашел по фильтру

— Берутся только учётки Zimbra, соответственно objectClass=zimbraAccount;
— Учётная запись должны быть активной, соответственно zimbraAccountStatus=active;
— Нужно проверить, не системный ли ресурс данный аккаунт 
(всякие там спамы, хамы): для этого есть атрибут zimbraIsSystemResource и проверка !(zimbraIsSystemResource=TRUE);

Вот такого типа получается фильтр, но как его применить? в конфиге немного другой синтаксис
(&(objectClass=zimbraAccount)(zimbraAccountStatus=active)(!(zimbraIsSystemResource=TRUE))(zimbraFeatureIMEnabled=TRUE))

У меня вопрос больше по самому ЛДАП, где можно почитать про него, по-русски желательно (так просто быстрей).

Нашел это описание, но пока все же не доконца понимаю.

Где посмотреть все нужные параметры в самой Zimbra LDAP?

Спасибо.

 , ,

firefedot
()

Mysql (MariaDB) вместо даты пишет нули

Форум — Development

Доброе... Есть таблица, в которой есть поля с датой в формате DATETIME.

Происходили обработки и вносились изменения даты...все работало нормально, вот пример запроса

echo "UPDATE all_users SET last_connect='$last_date' WHERE name='$uname';" | mysql -uUSER -pPASSWORD user_bd

Вносилось нормально, а сегодня неожиданно заметил, что дата не вносится, точнее только 00-00-00 00:00:00.

И так по всем скриптам, ничего не перегружал.

Даты всегда получал таким образом (написано на bash'e)

last_dt=`awk '{print $2, $3, $5, $4}' uname_status | sed -n ''НОМЕР СТРОКИ' p'`
last_date=`date -d "$dt_new" +%Y.%d.%m-%H:%M:%S`

и дальше запрос как выше

Подобная конструкция в нескольких скриптах хорошо и без проблем работала, как сегодня ночью перестала принимать даты.

Сначала подумал что формат не подходит... поменял, она два раза внесла, но потом все - только нули ...

Что это может быть?

Спасибо.

 , , ,

firefedot
()

OpenVPN Статистика (Принцип)

Форум — General

Доброе... Подскажите пожалуйста по какому критерию можно понять, что пользователь подключился и отключился?

Посмотрел логи и примерно понял что:

С этого начинается подключение 
Sat Nov  8 02:32:21 2014 TCP connection established with [AF_INET]111.56.15.11:63449
Далее проверяем рукопожатие TLS
Sat Nov  8 02:32:21 2014 111.56.15.11:63449 TLS: Initial packet from [AF_INET]111.56.15.11:63449, sid=d8266639 068c33aa

Строка отвечающая за сервер
Sat Nov  8 02:32:21 2014 111.56.15.11:63449 VERIFY OK: depth=1, C=RU, ST=SAM, L=RA, O=LD, OU=server, CN=newzim.do.org, name=server, emailAddress=admin@do.org

Строка отвечающая за пользователя
Sat Nov  8 02:32:21 2014 111.56.15.11:63449 VERIFY OK: depth=0, C=RU, ST=SAM, L=RA, O=RABOta,OU=otdel), CN=client1, name=NameServer, emailAddress=client1@do.org
В этой строке, в первые появляется логин пользователя

Тут уже имя сертификата видно
Sat Nov  8 02:32:21 2014 111.56.15.11:63449 [client1] Peer Connection Initiated with [AF_INET]111.56.15.11:63449

Тут видимо назначается айпишник
Sat Nov  8 02:32:21 2014 client1/111.56.15.11:63449 MULTI_sva: pool returned IPv4=10.8.0.26, IPv6=(Not enabled)
Sat Nov  8 02:32:21 2014 client1/111.56.15.11:63449 MULTI: Learn: 10.8.0.26 -> client1/111.56.15.11:63449
Sat Nov  8 02:32:21 2014 client1/111.56.15.11:63449 MULTI: primary virtual IP for client1/111.56.15.11:63449: 10.8.0.26
Sat Nov  8 02:32:24 2014 client1/111.56.15.11:63449 PUSH: Received control message: 'PUSH_REQUEST'

Это видимо окончание подключения
Sat Nov  8 02:32:24 2014 client1/111.56.15.11:63449 send_push_reply(): safe_cap=940
Sat Nov  8 02:32:24 2014 client1/111.56.15.11:63449 SENT CONTROL [client1]: 'PUSH_REPLY,route 10.8.1.0 255.255.255.0,route 10.8.0.1,topology net30,ping 5,ping-restart 240,ifconfig 10.8.0.26 10.8.0.25' (status=1)

Вот по этой строчке понимаю, что соединение установленно, ищу по слову status=1:

Sat Nov  8 02:32:24 2014 client1/111.56.15.11:63449 SENT CONTROL [client1]: 'PUSH_REPLY,route 10.8.1.0 255.255.255.0,route 10.8.0.1,topology net30,ping 5,ping-restart 240,ifconfig 10.8.0.26 10.8.0.25' (status=1)
Верно понимаю?

А вот по этой, так понимаю, видно когда произошло отключение:

Sat Nov  8 13:59:46 2014 client1/111.56.15.11:63449 Connection reset, restarting [-1]
Sat Nov  8 13:59:46 2014 client1/111.56.15.11:63449 SIGUSR1[soft,connection-reset] received, client-instance restarting
Верно понял?

Если не так , подскажите как правильней или где глянуть , что-то пока не попалось...

И вот вопрос , если я прав в догадках, то почему у одного из клиентов по логам видно 8 входов и только 4 выхода)

Как так или вход и выход как то по особенному логируются? Моя задача определить сколько длился коннект (сколько времени пользователь был в сети)

Вот то что со строчкой status=1

Sun Nov  9 14:36:16 2014 client2/119.14.212.21:55546 SENT CONTROL [client2]: 'PUSH_REPLY,route 10.8.1.0 255.255.255.0,route 10.8.0.1,topology net30,ping 5,ping-restart 240,ifconfig 10.8.0.10 10.8.0.9' (status=1)
Sun Nov  9 14:40:02 2014 client2/119.14.212.21:55556 SENT CONTROL [client2]: 'PUSH_REPLY,route 10.8.1.0 255.255.255.0,route 10.8.0.1,topology net30,ping 5,ping-restart 240,ifconfig 10.8.0.10 10.8.0.9' (status=1)
Mon Nov 10 20:08:47 2014 client2/119.14.212.21:57410 SENT CONTROL [client2]: 'PUSH_REPLY,route 10.8.1.0 255.255.255.0,route 10.8.0.1,topology net30,ping 5,ping-restart 240,ifconfig 10.8.0.10 10.8.0.9' (status=1)
Mon Nov 10 20:10:24 2014 client2/119.14.212.21:57430 SENT CONTROL [client2]: 'PUSH_REPLY,route 10.8.1.0 255.255.255.0,route 10.8.0.1,topology net30,ping 5,ping-restart 240,ifconfig 10.8.0.10 10.8.0.9' (status=1)
Mon Nov 10 22:11:33 2014 client2/119.14.212.21:58419 SENT CONTROL [client2]: 'PUSH_REPLY,route 10.8.1.0 255.255.255.0,route 10.8.0.1,topology net30,ping 5,ping-restart 240,ifconfig 10.8.0.10 10.8.0.9' (status=1)
Mon Nov 10 22:14:25 2014 client2/119.14.212.21:58435 SENT CONTROL [client2]: 'PUSH_REPLY,route 10.8.1.0 255.255.255.0,route 10.8.0.1,topology net30,ping 5,ping-restart 240,ifconfig 10.8.0.10 10.8.0.9' (status=1)
Tue Nov 11 00:58:53 2014 client2/119.14.212.21:61326 SENT CONTROL [client2]: 'PUSH_REPLY,route 10.8.1.0 255.255.255.0,route 10.8.0.1,topology net30,ping 5,ping-restart 240,ifconfig 10.8.0.10 10.8.0.9' (status=1)
Tue Nov 11 10:13:52 2014 client2/119.14.212.21:63692 SENT CONTROL [client2]: 'PUSH_REPLY,route 10.8.1.0 255.255.255.0,route 10.8.0.1,topology net30,ping 5,ping-restart 240,ifconfig 10.8.0.10 10.8.0.9' (status=1)

8 раз входил, по-моей версии)))

А вот якобы выходил 4 раза и одна сессия сейчас висит:

Sun Nov  9 14:36:16 2014 client2/119.14.212.21:55546 SIGUSR1[soft,connection-reset] received,client-instance restarting
Sun Nov  9 23:58:15 2014 client2/119.14.212.21:55556 SIGUSR1[soft,connection-reset] received,client-instance restarting
Mon Nov 10 20:08:47 2014 client2/119.14.212.21:57410 SIGUSR1[soft,connection-reset] received,client-instance restarting
Tue Nov 11 01:09:32 2014 client2/119.14.212.21:61326 SIGUSR1[soft,connection-reset] received,client-instance restarting

И что-то я потерялся и не могу найтись с собакой ...

Подскажите пожалуйста... Спасибо.

 , ,

firefedot
()

Полностью перенести систему на карту памяти, возможно?

Форум — Mobile

Доброе...

Подскажите, можно и как можно перенести полностью всю систему android'а на карту памяти, то есть чтоб система сразу грузилась с карты памяти внешней.

Менять память внешнюю и внутреннюю понятно как - меняем точки монтирования в /system/etc/vold.fstab (или аналоги)

А вот как сделать полный перенос системы и загрузку ее с карты, чтобы система стояла на карте памяти - не понятно)

понятно, что надо будет делать разделы на карте под систему и память...

А вот как все это реализовать не пойму, хотел искать на англоязычных ресурсах, но что-то пока не удачно...

Так понимаю, что надо в биосе, если можно так выразится, поставить приоритет .. но вот пока не нашел...ни биос, ни что-то подобное) прошивку пока под свой девайс не нашел, которая бы это могла...

устройство у меня explay squad 7.01, но это не суть. хочу такое сделать и на других планшетах...

на вопрос зачем ответить не могу, так как пока не придумал ответ )

Подытоживая: Как перенести систему на карту памяти и как потом грузиться с этой карты?

Спасибо.

 ,

firefedot
()

mysql устанавливается, но не работает

Форум — Admin

Доброе...

CentOS 6.5x 64.

Выполняю yum install mysql-server. Качается и ставить как обычно. Так собственно позовчера делал без проблем.

После установки ввожу

mysql_secure_installation

В ответ получаю:

Can't find a 'mysql' client in PATH or ./bin

Посмотрел /usr/bin - там он есть, mysql.

Попробовал руками все настроить, пароль забил руками, попробовал из phpmyadmin'a подключиться, тот не видит ничего. firewall отключен.

Решил обновить через как тут )

yum upgrade mysql-server

Обновляется до версии 5.6, было 5.1 помоему ...

Результат тот же с добавкой:

MySQL Daemon failed to start. Запускается mysqld: [СБОЙ ]

Хотя до это запускалось, пароль же менял)

При запуске:# mysql_secure_installation

Can't find a 'mysql' client in PATH or ./bin Cleaning up... Warning: Could not unlink .my.cnf.27326: Нет такого файла или каталога Warning: Could not unlink .mysql.27326: Нет такого файла или каталога

Ну их там реально нет)

Подскажите пожалуйста, где прописать этот PATH и в нем ли дело ...?

Спасибо.

 ,

firefedot
()

kpcli + bash

Форум — Development

Доброе...

Подскажите пожалуйста, в чем может быть косяк.

Поставил kpcli, чтобы создавать файлы .kdb для keepass из консоли (CentOS_6.5x64)

Все работает в ручном режиме, а когда пробую через bash expect, то на вводе строки URL все встает и скрипт не выполняется, просто около 10 секунд тишина и все. Ни ошибок, ничего. Вот скрипт:

#!/bin/bash

expect <<EOF
spawn /usr/bin/kpcli
send "cd eMail\n"   #Перехожу в папку
send new\n          #Создаю новый ключ
send vpn\n          #Его название
send none\n         #username
send password\n     #password
send password\r     #retry-password
send urlText\n      #URL   - вот тут встает наглухо, и пробовал пустую строку и кавычки и все что голову приходило
send \n             #Комментарии
send "saveas /home/netmaster/user2.kdbx\n"
send quit\n

expect
EOF

Вот вывод из консоли:

[root@newzim 2.0]# ./kpcli.sh
spawn /usr/bin/kpcli
cd eMail
new
vpn
none
password
password
urlText

saveas /home/netmaster/user2.kdbx
quit

KeePass CLI (kpcli) v2.4 is ready for operation.
Type 'help' for a description of available commands.
Type 'help <command>' for details on individual commands.

kpcli:/> cd eMail
kpcli:/eMail> new
Adding new entry to "/eMail"
Title: vpn
Username: none
Password:                ("g" or "w" to generate a password)
Retype to verify:
URL: [root@newzim 2.0]#

Подскажите пожалуйста. Спасибо.

 ,

firefedot
()

Keepass2 (или аналоги) создать файли .kdbx з консоли

Форум — Security

Доброе...

Скажите пожалуйста, как можно создать файл с паролями из консоли?

И возможно ли?

Посмотрел на Keepass2 и keepassX, обе с мордами и не нашел документации по созданию базы из консоли. И если keepassX как то еще можно наверно найти, то keepass2 через mono работает...

Находил еще как то веб версию, но сейчас не могу найти, может она может создавать из консоли.

Или может есть аналог, который из консоли без проблем создаст файл с паролями, который (файл с паролями) потом можно без проблем импортировать в keepass2.

CentOS 6.5x64

Спасибо.

 ,

firefedot
()

Безопасное хранение и извлечение паролей (MySQL)

Форум — Security

Добрый день)

Скажите пожалуйста, как лучше всего хранить пароли в базе (mysql)?

Если кешировать, то как их обратно извлекать, в случае утраты пароля (иногда бывает ломается файл keepass'a с паролем от раздела секретного и поменять пароль без старого нельзя). Если сравнивать, то берем пароль введенный, кешируем его и сами кеши сравниваем, а вот как извлечь его в человеский вид?

И каким образом лучше всего шифровать пароли, читал, что md5 не очень, sha1 получше...

Как правильно хранить пароли, так сказать на все случаи жизни. даже если база «ушла»). Тут конечно сразу будет все заблокированно, но тем не менее, как правильно или где можно про это прочитать?

Спасибо.

 , ,

firefedot
()

PHP вызов скрипта через system не ординарно работает)

Форум — Web-development

Доброе... Есть форма передающая данные на сторону php, из php идет вызов скрипта на bash'e через system():

<?php
header( "Content-Type: text/html; charset=utf-8" );
ini_set('display_errors',1);
error_reporting(E_ALL);
$start = microtime(true);

$name_user=$_POST['username'];
$surname=$_POST['surname'];
$otchestvo=$_POST['otchestvo'];
$familiya=$_POST['familiya'];
$country=$_POST['country'];
$oblast=$_POST['oblast'];
$city=$_POST['gorod'];
$godname=$_POST['godname'];

echo "Имя: ".$surname.'</br>';
echo "Отчество: ".$otchestvo.'</br>';
echo "Фамилия: ".$familiya.'</br>';
echo "Создатель: ".$godname.'</br>';

$par='NAME='.$name_user.'; ZIM='.$surname.'; ZIM_O='.$otchestvo.'; ZIM_F='.$familiya.'; RU='.$country.';  
OBL='.$oblast.'; CITY='.$city.'; COMP="RABOta"; OTDEL="otdel)"; NS="NameServer"';
system ("sudo /apps/expect_vpn.sh '$par' 2>&1");

echo "Пользователь создан".'</br>';
echo "Время выполнения: ".(microtime(true) - $start);

?>

Все хорошо работало, пока неожиданно при нажатии на кнопку формы не стала выводиться как обычно иноформация из system(). Просто echo php-скрипта и все.

При этом вызываемый скрипт на bash'e может выполниться, а может и нет. Можно только по (microtime(true) - $start) определить скрипт выполнен или нет. 9 секунд примерно на выполенние скрипта нужно.

safe_mode=off

Началось с того, что я стал делать перенос строк. и после echo ставил .</br>.

Решил вернуть все как было раньше, но не помогло.

В выводе system() иногда выдает такое:

/etc/openvpn/easy-rsa/2.0/expect_vpn.exp: line 20: warning: here-document at line 3 delimited by end-of-file (wanted `EOF')

При этом скрипт выполняется.

Запускаю еще раз и ни одной ошибки.

Может он устает?)))

С чем это может быть связано?

Прочитав первый комент от сюда и применив его, информация снова пошла, но не постоянно.

Может как то можно проверять на предмет пошел ли скрипт на исполенение или нет.

И как можно узнать скрипт исполнен или нет?

Может какойнить процресс бар)))

Спасибо.

firefedot
()

Передать перенную из PHP в BASH скрипт

Форум — Web-development

Доброе...

Подскажите, как передать переменную (ые) из php в bash. Как правильно определить переменную в баше?

вот простой скрипт на баше:

#!/bin/bash
export NAME="Имя"
echo $NAME

Вот код на php:

<?php
$name1="Иванов Иван Петрович";
system ('sudo /etc/apps/ect_user.sh');
?>

Что мне поменять, чтобы я смог передать из php имя в bash?

пробовал так:

system ('sudo /etc/apps/ect_user.sh', $name1);

Но результата нет...

в логах ошибки нет...

Прочитал про print('echo 123'), но не понял как ее поймать в баше... Подскажите пожалуйста)

firefedot
()

Не полностью запускается скрипт bash из php

Форум — Web-development

Доброе...

Запускаю bash скрипт через php, скрипт начинает запускатся и доходит до места, где есть expect -c 'spawn

Вот такой код страницы:

<?php
exec('sudo /etc/openvpn/easy-rsa/2.0/expect_vpn.sh');
echo exec('sudo /etc/openvpn/easy-rsa/2.0/expect_vpn.sh');
echo "php работает)";
?>

После запуска выдает в браузере:

spawn /etc/openvpn/easy-rsa/2.0/build-key-pass userfree_php

Вот сам запускаемый скрипт (expect_vpn.sh):

#!/bin/bash
/etc/openvpn/easy-rsa/2.0/expect_vpn.exp

))) от запускает другой скрипт, просто я пока мудрил с правами, у меня только так завелось)

А вот тот скрипт, к которому обращается этот скрипт) (expect_vpn.exp):

#!/bin/bash
#!/usr/bin/expect
export USER="userfree_php"
export USER_PASS="password"
export USER_RU="RU"
export USER_OBL="SAM"
export USER_CITY="Samara"
export USER_COMP="YES"
export USER_OTDEL="NOOTDEL"
export USER_NAMESERVER="Server"
export USER_MAIL="$USER@domen.svoi"

expect -c 'spawn /etc/openvpn/easy-rsa/2.0/build-key-pass $env(USER)
send $env(USER_PASS)\n
send $env(USER_PASS)\n
send $env(USER_RU)\n
send $env(USER_OBL)\n
send $env(USER_CITY)\n
send $env(USER_COMP)\n
send $env(USER_OTDEL)\n
send $env(USER)\n
send $env(USER_NAMESERVER)\n
send $env(USER_MAIL)\n
send \n
send \n
send y\n
send y\n
interact
'

В логах апача, errors.log, была только ошибка на несуществующий файл, поменяв путь на полный, ошибка ушла.

Я так понимаю, что php не правильно принимает expect в скрипте или просто игнорирует?

Подскажите. что может быть не так?) Спасибо.

 , ,

firefedot
()

expect openvpn

Форум — Admin

Доброе... Для автоматического заведения пользователей в openvpn я дошел до expect'a ) Посчитал, сколько нужно раз вводить данные, получается 14 раз. В начале два пароля.

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

#!/bin/bash
#!/usr/bin/expect
expect -c 'spawn ./build-key-pass tester9
exp_internal 1

expect password;
send password\n;
expect again;
send password\n;
expect continue;
send RU\r;
expect continue;
send SA\r;
expect continue;.
 send Sa\r;.
 expect continue;
  send Company\r;
  expect continue;
  send New\r;
  expect continue;
  send tester9\r;
  expect continue;
  send ServerName\r;
  expect continue;.
  send tester9@domen.rs\r;
  expect continue;
  send \r;
  expect continue;
  send \r;
  expect continue;.
   send yes\r;
   expect continue;
     send yes\r;'

но естественно, не работает)

Получаю такой бесконечный вывод на экран:

expect: does "Generating a 2048 bit RSA private key\r\n....................
...............+++\r\n.." (spawn_id exp4) match glob pattern "password"? no

подскажите пожалуйста, что не так?

Или скажите, где документация есть по expect'у

Меня вилимо гугл забанил), нашел только примеры. но они многие для ssh...

Какой принцип то?

Expect сначала перехватывает ввод. а потом даем свое значение?

и в чем разница между /n и /r n - перенос строки, типа Enter, а r? Спасибо.

 , , ,

firefedot
()

Zimbra отправить сообщение из консоли с аттачем...

Форум — Admin

Доброе...

Подскажите, как правильно отправить из консоли сообщение с файлом.

Стоит Zimbra 8. Centos 6.5 x64.

Само сообщение могу отправить:

(echo «Subject: SUBJECT_TO_BE_CHANGED»;echo «MESSAGE_TO_BE_EDITED») | /opt/zimbra/postfix/sbin/sendmail admin@domen.rus

А как ему указать. какой файл прикрепить, н пойму. Если ставлю "-а", т говорит, что не верный аргумент.

Возможно можно самой Зимброй это сделать через zmmtactl, но прочитав документацию. все что смог) я так не понял, как этой сделать) Как быть?

Подскажите пожалуйста.

Спасибо)

 , ,

firefedot
()

OpenVPN создать сного пользователей (автоматизация)

Форум — Admin

Доброе... Подскажите, как можно завести 700 пользователей? Руками можно, проверено) но можно как автоматизировать этгот процесс? Или как в скрипт прописать, чтобы он в нужное месо ставил нужные символы или имитировал нажатие Enter. Есть потоков перенаправление входящих способ типа

 скрипт.ш < файл_с_ответами.тхт 
Но яне пойму как ему показать. чтобы он автоматом все вбил. Вообще моя задача помимо внести 700 пользователей сделать так, чтобы я ввел сразу все данные и ключ сгененировался. Фух, написал) Пожскажие как можно это сделать или может естьготовые решение, кготорые можно использовать иил разобрать и посмотреть? Спасибо)

firefedot
()

OpenVPN пускает только из локалки.

Форум — Admin

Доброе... Поскажите пожалуйста. Есть openvpn 2.2.2 (Думаю стоит обновить до последней или нет?))) суть проблемы такая: из локальной сети подключается нормально. Но стоит пробовать подключаться из не локалки), то на сервере в логах появляется следующее:

Thu Apr 10 17:36:30 2014 192.168.1.1:65464 TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
Thu Apr 10 17:36:30 2014 192.168.1.1:65464 TLS Error: TLS handshake failed

На клиенте все зависает на этом месте:

Thu Apr 10 16:14:15 2014 Local Options hash (VER=V4): 'a5d50645'
Thu Apr 10 16:14:15 2014 Expected Remote Options hash (VER=V4): '14d315e7'
Thu Apr 10 16:14:15 2014 UDPv4 link local: [undef]
Thu Apr 10 16:14:15 2014 UDPv4 link remote: 5.*.*.*:1194
Thu Apr 10 16:14:15 2014 TLS: Initial packet from 5.*.*.*:1194,
sid=8e9352f1 d6a7b290

Вот конфиг сервера:

port 1194

proto udp

dev tun

ca  /etc/openvpn/keys/ca.crt
cert  /etc/openvpn/keys/server.crt
key  /etc/openvpn/keys/server.key

dh /etc/openvpn/keys/dh2048.pem

server 10.8.0.0 255.255.255.0

ifconfig-pool-persist ipp.txt

push "route 10.8.1.0 255.255.255.0"

client-config-dir ccd
route 10.8.3.0 255.255.255.0
route 10.8.4.0 255.255.255.0
route 10.8.5.0 255.255.255.0
route 10.8.6.0 255.255.255.0
route 10.8.7.0 255.255.255.0
route 10.8.8.0 255.255.255.0

keepalive 5 240

tls-server
tls-auth /etc/openvpn/keys/ta.key 0.
tls-timeout 120

auth SHA512

cipher AES-256-CBC   # AES


comp-lzo

status-version 2

user nobody
group nobody

persist-key
persist-tun

status openvpn-status.log

log-append /etc/openvpn/openvpn-tun.log

verb 3

mute 10
management localhost 7557

Вот клиент:

client
dev tun
remote 5.*.*.* 1194
remote 192.168.1.155 1194

proto udp
resolv-retry infinite
nobind
pull
ca ca.crt
cert client.crt
key client.key
dh dh2048.pem
tls-client
tls-auth ta.key 1
auth-nocache
auth SHA512
cipher AES-256-CBC
keysize 256
ns-cert-type server
comp-lzo
persist-key
persist-tun
verb 3

route-method exe
route-delay 2

А вот iptables:

*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
#-A INPUT -i tun -j ACCEPT
-A INPUT -i eth0 -j ACCEPT
-A INPUT -p tcp --dport 1194 -j ACCEPT
-A INPUT -p udp --dport 1194 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 1194 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 1194 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 7557 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 7557 -j ACCEPT

-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

У меня ощущение. что пакету режуться, на роутере проброс портанастроен. Сервер пингуется из интернета. Где то правилах может ... А вообще цель такая. что клинты подключаются к серверу и видят только нужные сервисы, ни какого интернета. такая закрытая локалка с https сайтами и фтп.

Что еще нужно показать. что бы картина была более ясной... Что сделать, чтобы люди из инета могли нормально подключиться? Ось: CentOS 6.5 x 64 Спасибо.

 ,

firefedot
()

centos luksUUID - не видит

Форум — Admin

Доброе...
Есть сервак на centos 5.9, разделы Lusk, несколько ...
и вот не ожиданно при перегрузе выледает такое

http://s020.radikal.ru/i719/1402/d8/07fa40635601.jpg

Они все (разделы) монтируются и запрашивают пароль при загрузке системы.
Начинаю по одному проверять, все показывают что надо, кроме одного
Как раз на картинке его не существующий UUID.

запускаю cryptsetup luksUUID /dev/sda2 (на этом разделе проблемный момент)
получаю uuid как на картинке, то есть он на месте, но при запуске ls /dev/mapper/ мне выдается для каждого раздела свой uuid и раздел, а для sda2 нет uuid

ls /dev/mapper/

control sda3
luks-6yu7778i-9369-59l8-5214-fght67jikouh sda5
luks-5yuvhu78i-9696-59r8-5154-fgh56ujikouh sda6
luks-6yu7778i-9659-59h8-5244-fghtyuj67uuh sda7
sda2

cryptsetup luksDump /dev/sda2 выдает нормальный uuid, который не видит система, на картинке.

Что может быть и куда смотреть.
Спасибо.

 , ,

firefedot
()

luks + неразмеченная область на диске.

Форум — Admin

Доброе, подскажите пожалуйста как быть.
Был диск 500 Гб (raid зеркало), на нем luks (внутри 8 томов). Затем была сделана копия всего диска с помощью clonzilla и перенесено на диск в 1Тб. Следовательно, половина нового диска осталась не задествована.
Как могу не задействованную часть прикрутить к одному из разделов?
fdisk -l выдает только разделы известные.

[root@srv netmstr]# /sbin/fdisk -l

Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          65      522081   83  Linux
/dev/sda2              66       49444   396636817+  83  Linux
/dev/sda3           49445       55971    52428127+  83  Linux
/dev/sda4           55972       60801    38796975    5  Extended
/dev/sda5           55972       58582    20972826   83  Linux
/dev/sda6           58583       59887    10482381   83  Linux
/dev/sda7           59888       60540     5245191   83  Linux
/dev/sda8           60541       60801     2096451   82  Linux swap / Solaris
df -h соотвественно тоже (выводит уже группы luks)

[root@srv netmstr]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/luks-30dd9a35f6
                      9.4G  1.6G  7.4G  18% /
/dev/mapper/luks-58e4945ae9
                      4.7G  142M  4.4G   4% /tmp
/dev/mapper/luks-34d7dc7b5b
                       19G  1.3G   17G   7% /usr
/dev/mapper/luks-2e90824344
                       47G  7.2G   38G  17% /var
/dev/mapper/luks-31898ea684
                      355G  335G  981M 100% /opt
/dev/sda1             494M   39M  430M   9% /boot
tmpfs                 5.9G  4.0K  5.9G   1% /dev/shm

Подскажите куда копать... Не могу посмотреть где эта область не размеченная. Спасибо.

p.s. CentOS 6.4

 ,

firefedot
()

RSS подписка на новые темы