LINUX.ORG.RU

Сообщения MakPol

 

SSH X11Forwarding + su (sudo) = «X11 connection rejected because of wrong authentication»

Доброго времени суток!

Ситуация у меня следующая: есть сервер под управлением centos 6.3 и на нем работает сервер приложений jboss. Ос стоит в минимальной конфигурации т.к. нет смысла ставить все без надобности, лишь бы было. Сервер приложений работает как демон от пользователя jboss, специально созданного для этих целей. Для мониторинга и некоторого администрирования сервера приложений необходимо запускать приложение jconsole, которое работает в «иксах». Для этого я решил воспользоваться ssh с ключем -X для проброса «иксов» на удаленную машину.
Когда запускаю ssh -X root@удаленный_сервер_без_иксов, то вызвав jconsole все работает без проблем, за исключением того, что к серверу, запущенному от jboss подключиться не получится. В общем надо все это делать именно от пользователя jboss, что собственно я и пытался сделать, выполнив sudo -u jboss jconsole или же попробовав su jboss и дальше уже попытаться выполнить jconsole, но меня ждет одна и таже ошибка:

$ jconsole 
X11 connection rejected because of wrong authentication.
Exception in thread "main" java.lang.InternalError: Can't connect to X11 window server using 'localhost:10.0' as the value of the DISPLAY variable.
        at sun.awt.X11GraphicsEnvironment.initDisplay(Native Method)
        at sun.awt.X11GraphicsEnvironment.access$200(X11GraphicsEnvironment.java:65)
        at sun.awt.X11GraphicsEnvironment$1.run(X11GraphicsEnvironment.java:110)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.awt.X11GraphicsEnvironment.<clinit>(X11GraphicsEnvironment.java:74)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:186)
        at java.awt.GraphicsEnvironment.createGE(GraphicsEnvironment.java:102)
        at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:81)
        at sun.awt.X11.XToolkit.<clinit>(XToolkit.java:119)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:186)
        at java.awt.Toolkit$2.run(Toolkit.java:870)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.awt.Toolkit.getDefaultToolkit(Toolkit.java:862)
        at javax.swing.UIManager.getSystemLookAndFeelClassName(UIManager.java:608)
        at sun.tools.jconsole.JConsole.<clinit>(JConsole.java:64)
Я понимаю, что тут надо бы было попробовать ssh -X jboss@удаленный_сервер_без_иксов, но пользователь jboss не имеет пароля и вообще создан только для запуска сервера приложений, с чем отлично и справляется:
groupadd -r jboss
useradd -r -M -g jboss jboss
у этого пользователя по определению не должно быть оболочки и под ним не стоит заходить. Под apache же мы не заходим...
Скорее всего я что-то не учел, прошу помочь разобраться как я могу и на елку влезть и ...

Заранее спасибо!

 , , , ,

MakPol
()

IPSec туннель между двумя CentOS 6.3

Пытаюсь настроить тунель между двумя CentOS 6.3, для этого нашел статейку http://metalcandy.ru/how-to-forge-centos/369-centos-5-configuring-the-ipsec-t... и сделал все по ее примеру. Правда пока не установил репозиторий

rpm -ivH http://repo.nikoforge.org/redhat/el6/nikoforge-release-latest
и только тогда смог поставить ipsec-tools. Ну а дальше все гладко по инструкции, за исключением того, что:
# service network restart
Shutting down interface eth0:                              [  OK  ]
Shutting down loopback interface:                          [  OK  ]
FATAL: Module off not found.
Bringing up loopback interface:                            [  OK  ]
Bringing up interface eth0:                                [  OK  ]
Bringing up interface ipsec0:  Device does not seem to be present, delaying initialization.
                                                           [FAILED]
FATAL: Module off not found.
Не пойму почему так. Я и запускал racoon, хотя в инструкции ничего об этом сказано не было
service racoon start

Куда копать не пойму, гуглить пробовал, но как-то все мимо кассы. Может кто-то настраивал и может подсказать?

Заранее спасибо!

 , , , ,

MakPol
()

Как в bind (named) прописать сайт?

Доброго времени суток!

Развернул я DNS со следующими настройками: named.conf

 options {
  directory "/var/named";
  dump-file "/var/named/data/cache_dump.db";
  statistics-file "/var/named/data/named_stats.txt";

   version                 "[secured]";
   listen-on               port 53 { 127.0.0.1; 192.168.0.1; };
   allow-query             { 127.0.0.1; 192.168.0.0/24; };
   allow-recursion         { 127.0.0.1; 192.168.0.0/24; };
   allow-transfer          { 127.0.0.1; }; 

  forwarders {
          8.8.8.8;
          193.58.251.251;
       };

   };
//

  controls {
  inet 127.0.0.1 allow { localhost; } keys { rndc-key; };
  };
#zone "localhost" IN {
#  type master;
#  file "localhost.zone";
#  allow-update { none; };
#  };
zone "firma.local" IN {
  type master;
  file "/var/named/firma.local.zone";
  allow-update { none; };
  };
zone "0.168.192.in-addr.arpa" IN {
  type master;
  file "/var/named/0.168.192.rev";
  allow-update { none; };
  };

 key "rndc-key" {
       algorithm hmac-md5;
       secret "SsyKRe9rco3cGM+6pbDIvQ==";
 };

 controls {
       inet 127.0.0.1 port 953
               allow { 127.0.0.1; } keys { "rndc-key"; };
 };
firma.local.zone
$TTL            86400
@                 IN SOA            firma.local.  root.firma.local. (
100     ; serial
1H      ; refresh
1M      ; retry
1W      ; expiry
1D )    ; minimum
@                   IN NS              ns1.firma.local.
@                   IN A               192.168.0.1
ns1                 IN A               192.168.0.1
@                   IN MX   10         mail.firma.local.
mail                IN A               192.168.0.1
WWW                 IN A               192.168.0.1
firmaserver         IN A               192.168.0.1     
otherservername     IN A               192.168.0.1
serv-test         IN A               192.168.0.10
0.168.192.rev
$TTL    86400
@                 IN SOA          firma.local. root.firma.local. (
100     ; serial
1H      ; refresh
1M      ; retry
1W      ; expiry
1D)     ; minimum
@                IN NS            ns1.firma.local.
1                 IN PTR          dserv.firma.local.

Мне надо, чтобы компьютеры в моей сети набрав в адресной строке mysite.firma.local попадали на сервер 192.168.0.1, но прописав в зону просто

mysite.firma.local               IN A               192.168.0.1
я не решил проблему. Пожалуйста подскажите как правильно, или что я не так настроил. Заранее спасибо!

 , ,

MakPol
()

KVM через macvtap не видит сеть (Centos 6.3 )

Доброго времени суток!

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

У меня система Centos 6.3 и на ней вращается KVM. С некоторых пор понадобилось виртуальной машине смотреть не только на хост, но и в локальную сеть, причем как будто бы это простая машинка, подключенная к свичу. В общем по опыту на другом сервере, я выбрал macvtap и настроил его в режиме bridge (примерно так же как это было показано тут http://www.linux-kvm.com/content/simple-bridged-networking-virt-manager-using... ) Все бы хорошо, но при загрузке виртуальной системы IP по DHCP не присваивается, хотя в то же время обращения и реакцию dhcp я вижу. А присваивается как я понимаю внутренний IP. Если же задать адрес вручную - адрес само собой присвоится, но толку будет 0 (ноль), т.к. пакеты не идут ни к хосту ни к другим компьютерам сети :(

Nov 15 10:51:05 dnssserver dhcpd: DHCPOFFER on 192.168.0.79 to 52:54:00:a3:40:90 (SERV-TEST) via eth0
Nov 15 10:51:09 dnssserver dhcpd: DHCPDISCOVER from 52:54:00:a3:40:90 (SERV-TEST) via eth0
Nov 15 10:51:09 dnssserver dhcpd: DHCPOFFER on 192.168.0.79 to 52:54:00:a3:40:90 (SERV-TEST) via eth0
Nov 15 10:51:17 dnssserver dhcpd: DHCPDISCOVER from 52:54:00:a3:40:90 (SERV-TEST) via eth0
Nov 15 10:51:17 dnssserver dhcpd: DHCPOFFER on 192.168.0.79 to 52:54:00:a3:40:90 (SERV-TEST) via eth0
Nov 15 10:51:32 dnssserver dhcpd: DHCPDISCOVER from 52:54:00:a3:40:90 (SERV-TEST) via eth0
Nov 15 10:51:32 dnssserver dhcpd: DHCPOFFER on 192.168.0.79 to 52:54:00:a3:40:90 (SERV-TEST) via eth0

опять же, если посмотреть что твориться на сервере, то похоже пакеты идут, но вопрос куда :(

macvtap0  Link encap:Ethernet  HWaddr 52:54:00:A3:40:90  
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2656 errors:0 dropped:0 overruns:0 frame:0
          TX packets:209 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:500 
          RX bytes:292572 (285.7 KiB)  TX bytes:29115 (28.4 KiB)
Сделал все как и на другом серваке, там без проблем, а тут что-то странное твориться... Пожалуйста укажите правильный путь. Заранее большое спасибо!

MakPol
()

Помогите пожалуйста разобраться с работой DNS+DHCP в LAN

Доброго времени суток, уважаемые форумчане!

Развернул на сервере под управлением CentOS DHCP и DNS сервера (dhcpd и named соответственно). Настроил DHCP на раздачу адресов, все работает как часы, там же (/etc/dhcp/dhcpd.conf) указал «option domain-name „firma.local“;», чтобы автоматом дописывалось. В свою очередь в «/var/named/chroot/etc/named.conf» создал: zone «firma.local» IN { type master; file «/var/named/firma.local.zone»; allow-update { none; }; };

А далее в файле «/var/named/firma.local.zone» описал, что есть: $TTL 86400 @ IN SOA firma.local. root.firma.local. ( 100 ; serial 1H ; refresh 1M ; retry 1W ; expiry 1D ) ; minimum @ IN NS ns1.firma.local. @ IN A 10.20.30.1 ns1 IN A 10.20.30.1 @ IN MX 10 mail.firma.local. mail IN A 10.20.30.1 WWW IN A 10.20.30.1 dserv IN A 10.20.30.1 client1 IN A 10.20.30.10 fed IN A 10.20.30.11 fedtmp IN A 10.20.30.11 client0 IN A 10.20.30.50

Так вот не могу понять, почему когда я только добавил например client0 и сохранив файл попробовал его пингануть с клиента сети под управлением winxp и fedora, написав «ping client0» то в ответ получил «При проверке связи не удалось обнаружить узел client0. Проверьте имя узла и повторите попытку.» Тогда попробовал пингануть client0.firma.local и все пингонулось. Далее перезагрузил этот комп (с кторого пинговал) и уже без проблем пинговалось и просто по client0. Причем пинговалось как с виндовой машины так и с никс-овой. Когда добавил fedtmp в файл зоны и прпробовал пингануть уже с fedor-ы, то также получил ошибку «ping: unknown host tmpfed»

Цель я приследую следующую: надо, чтобы компьютеры в сети мог прописывать на dns и пинговать их с других компьютеров офиса, но не дописывая firma.local

Думается мне я что-то важное не сделал и/или не понял, но пока не могу понять что. Очень надеюсь на вашу помощь.

Заранее спасибо!

 , , ,

MakPol
()

Не слышно голос собеседника при звонке в Twinkle (RF17)

Доброго времени суток!

Использую на работе SIP, пользуюсь софтфоном Twinkle и раньше возникали проблемы с микрофоном, которые я решил, а сейчас все как-то более запущено. Сейчас нет звука в наушниках. Меня слышно, а я ничего не слышу. При всем при этом по скайпу общаюсь без проблем. Звук на компьютере воспроизводится (видео, из браузера, из плеера и т.д.). Даже в том же Twinkle я слышу звук звонка, но собеседника не слышу. Естественно проверял на разных телефонах и дело не в микрофоне у другого абонента (проверял на разных). Может кто уже с подобным сталкивался?

Заранее спасибо!

P.S. ОС у меня - RFRemix release 17 (Beefy Miracle)

 , ,

MakPol
()

Помогите разобраться с Bash и Ctrl+C

Доброго времени суток!

На днях писал очередной скрипт автоматизации на bash и столкнулся с забавной штукой - скрипт, который верой и правдой работал на Ubuntu 10.04 перестал корректно отрабатывать на Cent OS 6.2 и 6.3, а также воспроизвел ситуацию на Fedora 16. В общем вот что надо для воспроизведения:

/etc/init.d/testsh

#! /bin/bash # # testsh Test bash # case «$1» in start) /tmp/starttestscript.sh & ;; stop) ;; status) ;; restart|reload|force-reload) $0 stop $0 start rc=$? ;; *) echo $«Usage: $0 {start|stop|status|restart|reload|force-reload}» exit 2 esac

exit $rc

/tmp/sarttestscript.sh

#! /bin/bash - скрипт запуска проекта (когда запускается система, она пишет log-файл, тут я искуственно такой log-файл создал. tcpdump >> /tmp/testfile.log

/tmp/sborkatestscript.sh - скрипт запуска процесса сборки проекта, запуска системы и вывод лога запуска на экран.

#! /bin/bash /etc/init.d/testsh start tail -f /tmp/testfile.log

Так вот, мой порядок действий: 1. Запускаю скрипт /tmp/sborkatestscript.sh и на экране у меня начинает бежать лог. 2. В это время смотрю работает ли моя «служба» при помощи ps -f -C tcpdump --no-headers мне выводится что-то в роде: # ps -f -C tcpdump --no-headers tcpdump 5804 5802 5 15:27 pts/2 00:00:00 tcpdump 3. Как только я «насмотрелся лога» после запуска системы я выхожу из tail -f при помощи Сtrl+С 4. Далее хочу проверить ка там «служба» и вот что получаю # ps -f -C tcpdump --no-headers # т.е. такого демона получается не запущено.

Не могу понять почему так происходит. Ведь запуск был от другого скрипта, да и как я понимаю ctrl+C должен повлиять то был только на прекращение tail. Если посмотреть в pstree, то ИМХО не должно убивать запущенный процесс ├─konsole─┬─bash │ ├─bash───su───bash───sborkatestscrip───tail │ ├─bash───su───bash───pstree │ ├─bash───su───bash │ └─{konsole} ├─starttestscript───tcpdump Ну и самое главное, на Ubuntu то у меня точно таой же скрипт работал. Помогите пожалуйста разобраться как быть, мне надо работать именно по воспроизведенной на простых скриптах схеме и именно через tail.

Заранее большое спасибо!

 , , , ,

MakPol
()

Настройка раздачи интернета через VPN без прокси

Доброго времени суток!

Есть компьютер под управлением Fedora 16 x86_64 (скоро перейду на 17). Дальше буду называть его клиент. Компьютер находится в локальной сети и доступ в интернет через прокси. Сетевой интерфейс eth0. Есть сервер под управлением CentOS 5.3 x86_64. Дальше буду называть его сервер. Сервер находится у провайдера и имеет прямой доступ в интернет. Сетевой интерфейс eth0.

Необходимо ходить в интернет с клиента через сервер, а не через прокси в локальной сети. При всем при этом также не помешало бы ходить по ресурсам локальной сети.

На сервере развернут OpenVPN и с клиентом установлена связь через VPN. IP сервера 10.8.0.1 интерфейс tun0. IP клиента 10.8.0.4 интерфейс tun0.

На сервере настроил маскарадинг: - добавил «net.ipv4.ip_forward = 1» и перезапустил сеть. - настроил iptables, вот файл «/etc/sysconfig/iptables»:

# Generated by iptables-save v1.4.7 on Wed Jun 20 15:25:22 2012
*nat
:PREROUTING ACCEPT [780:170741]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
COMMIT
# Completed on Wed Jun 20 15:25:22 2012
# Generated by iptables-save v1.4.7 on Wed Jun 20 15:25:22 2012
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [42026:9681910]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -p udp -m udp --dport 1194 -j ACCEPT
-A INPUT -p udp -m udp --sport 1194 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
# Completed on Wed Jun 20 15:25:22 2012
После этого я естественно перезагрузил iptables и прописал на клиенте «route add default tun0», но ничего у меня не вышло. Подскажите пожалуйста что я сделал не так и/или как можно сделать лучше. У сервера внешний IP статический и как я понимаю вместо маскарадинга можно и даже лучше в плане ресурсов истользовать SNAT. В общем буду очень благодарен за помощь. Статей в интернете перерыл много, но не получалось добиться желаемого результата.

Заранее спасибо большое за помощь!

 gatway, , , ,

MakPol
()

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