studlife Опубликовано 26 февраля, 2008 Жалоба Поделиться Опубликовано 26 февраля, 2008 Всем привет. Поставил Линукс столкнулся с проблемкой... Сеть настроил, все работает.. но... не смог пройти авторизацию на сервере для доступа в инет... дело в том что програма авторизатор у нас немного не стандартная...(вложеным фалом прикрепил).. и это для Windows... Для *nix систем вообще идет набор текста.. Цитата: #!/usr/bin/perl # ============================================================ ============= # Авторизатор # ============================================================ ============= use IO::Socket; use Sys::Hostname; use Crypt::Rijndael; # ------------------------------------------------------------ ------------- $yourpass = 'you_password'; # ваш пароль $server = '192.168.7.254'; # сервер авторизации $portno = 7723; # порт # ------------------------------------------------------------ ------------- $ver = 14; # protocol version $v = 0; # 1 - verbose # ============================================================ ============= sub SEND { $sock1->send($_[0]); } sub GET { my ($i,$n,$str,$tmout,$rin,$txt,$ip,$addr) = (0,10,'',5,'','','',''); vec($rin,fileno($sock2),1) = 1; while (select($txt = $rin, undef, undef, $tmout) && ++$i<$n) { $tmout = 0; $addr = recv($sock2, $txt, 100, 0); ($ip, $addr) = sockaddr_in($addr); $ip = join(".",unpack ("C4", $addr)); next if $ip ne $server; $str=$txt; } unless ($str) { $noanswer++; if ($noanswer>10) {$noanswer=0; sleep 20;} print "no answer...\n" if $v; } return($str); } # ============================================================ ================== $passwd_in = substr((substr $yourpass, 0, 3)."Z" x 16, 0, 16); $passwd_out = substr((substr $yourpass, 3, 16)."0" x 16, 0, 16); $sock1 = IO::Socket::INET->new(Proto => 'udp', PeerPort => $portno, PeerAddr => $server); unless ($sock1) {print "Cannot create socket...exit\n"; exit;} $proto = getprotobyname('udp'); unless (socket($sock2, PF_INET, SOCK_DGRAM, $proto) && bind($sock2, sockaddr_in($portno, INADDR_ANY)) ) {print "Cannot bind socket...exit\n"; exit;} $id = substr(rand,2,6); $noanswer = 0; while(1) { $id = 999999 unless $id--; &SEND("$ver$id"); print "BEGIN SESSION\n" if $v; $p = &GET; next unless $p; if ($p !~ /^id(.{16})$ver$id$/s) { &GET; &GET; sleep 1; next; } $cipher = new Crypt::Rijndael $passwd_in,Crypt::Rijndael::MODE_CBC; $key = $cipher->decrypt($1); $cipher = new Crypt::Rijndael $passwd_out,Crypt::Rijndael::MODE_CBC; $skey = $cipher->encrypt($key); &SEND($skey."a$ver$id"); $p = &GET; next unless $p; $stat = substr $p,0,2; $stat = $stat eq 'ok' || $stat eq 'sv' ? "OK" : "NO"; print "AUTH $stat\n" if $v; sleep 40; } как это все мне запустить? человек сидящий у нас на Линуксе в сети написал мне дословно следующие Цитата: Находишь строку $yourpass = 'you_password'; и вместо you_password пишешь свой пароль. Делаешь файл исполняемым. Это делается командой chmod u+x noauth.pl (или любым другим способом) Запускаешь в консоли командой ./noauth.pl Я еще установил переменную $v =1, чтобы наблюдать сообщение "AUTH OK" при удачном обмене паролями. из этого я нифига не понял, а он дальше молчит, и подсказывать не хочет Пожалуйста помогите, а то без инета в самом линуксе очень тяжело его осваивать, приходится постоянно перезагружатся в винду... Не дайте умереть будущему Линуксоиду! Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
studlife Опубликовано 26 февраля, 2008 Автор Жалоба Поделиться Опубликовано 26 февраля, 2008 Забыл добавть - версия openSUSE 10.3 Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Aceler Опубликовано 26 февраля, 2008 Жалоба Поделиться Опубликовано 26 февраля, 2008 Какое слово из инструкции непонятно? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
studlife Опубликовано 26 февраля, 2008 Автор Жалоба Поделиться Опубликовано 26 февраля, 2008 Цитата: Делаешь файл исполняемым. Это делается командой chmod u+x noauth.pl (или любым другим способом) я смог этот пункт выполнить, открыв свойства и тыцнув галочку на "выполняемый" такой способ покатит? если нет то как именно запустить команду? просто в консоли? Цитата: Запускаешь в консоли командой ./noauth.pl когда ввожу в консоли, ноль на массу.... Цитата: Я еще установил переменную $v =1, чтобы наблюдать сообщение "AUTH OK" при удачном обмене паролями. где эту переменную писать? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Aceler Опубликовано 26 февраля, 2008 Жалоба Поделиться Опубликовано 26 февраля, 2008 studlife писал(а) Tue, 26 February 2008 22:12 Цитата: Делаешь файл исполняемым. Это делается командой chmod u+x noauth.pl (или любым другим способом) я смог этот пункт выполнить, открыв свойства и тыцнув галочку на "выполняемый" такой способ покатит? если нет то как именно запустить команду? просто в консоли? Прокатит. Цитата: Цитата: Запускаешь в консоли командой ./noauth.pl когда ввожу в консоли, ноль на массу.... Хм. Значит, всё запустилось, или всё-таки попробуйте поставить $v=1 Цитата: Цитата: Я еще установил переменную $v =1, чтобы наблюдать сообщение "AUTH OK" при удачном обмене паролями. где эту переменную писать? В скрипте. Там где # ------------------------------------------------------------ ------------- $ver = 14; # protocol version $v = 0; # 1 - verbose # ============================================================ ============= Написано $v=0, заменяете $v=1, оно должно быть разговорчивым и скать по английски, что же у неё там не срослось. P.S. Забавный у вас провайдер, однако. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Legalizer Опубликовано 26 февраля, 2008 Жалоба Поделиться Опубликовано 26 февраля, 2008 studlife писал(а) Tue, 26 February 2008 22:12 Цитата: Запускаешь в консоли командой ./noauth.pl когда ввожу в консоли, ноль на массу.... Вы эту команду вводите, находясь в то же директории, что и ваш файл noauth.pl? Если нет, то ничего и не должно заработать Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Aceler Опубликовано 27 февраля, 2008 Жалоба Поделиться Опубликовано 27 февраля, 2008 Был бы в другой директории, получил бы bash: ./noauth.pl: No such file or directory Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Legalizer Опубликовано 27 февраля, 2008 Жалоба Поделиться Опубликовано 27 февраля, 2008 Aceler писал(а) Wed, 27 February 2008 09:25 No such file or directory Может быть это и есть ноль на массу Вопрошающий же не уточняет, что он понимает под этим словосочетанием. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
studlife Опубликовано 27 февраля, 2008 Автор Жалоба Поделиться Опубликовано 27 февраля, 2008 именно так оно и отвечало (правда на русском языке ) но я розабрался более менее)) перешел в нужную папку, теперь при запуске пишет следующие Цитата: oss@linux-nv3h:~/Desktop> ./noauth.pl bash: ./noauth.pl: /usr/bin/perl^M: плохой интерпретатор: Нет такого файла или каталога что делать? по адресу /usr/bin/ никаких perl^M и подобного не наблюдаю... Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
studlife Опубликовано 27 февраля, 2008 Автор Жалоба Поделиться Опубликовано 27 февраля, 2008 и немного не в тему, но вопрос вдогонку)) как уже находясь в иксах взять себе права roota Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Byte Опубликовано 27 февраля, 2008 Жалоба Поделиться Опубликовано 27 февраля, 2008 1. установить perl через yast->управление программным обеспечением 2. su Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
studlife Опубликовано 28 февраля, 2008 Автор Жалоба Поделиться Опубликовано 28 февраля, 2008 Byte писал(а) Wed, 27 February 2008 23:14 1. установить perl через yast->управление программным обеспечением просто выбрать все пакеты к установке? у мея просто perl вроде как установлен... если можно пару скринов)) Byte писал(а) Wed, 27 February 2008 23:14 2. su насколько я понял это права только для терминала/консоли? или вообще? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Legalizer Опубликовано 28 февраля, 2008 Жалоба Поделиться Опубликовано 28 февраля, 2008 1. "Вроде как установлен" не бывает. Бывает либо "установлен", либо "не установлен". 2. Только для конкретного терминала, из которого запущена программа su. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
studlife Опубликовано 28 февраля, 2008 Автор Жалоба Поделиться Опубликовано 28 февраля, 2008 Цитата: 1. "Вроде как установлен" не бывает. Бывает либо "установлен", либо "не установлен". как это точно можно узнать? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Legalizer Опубликовано 28 февраля, 2008 Жалоба Поделиться Опубликовано 28 февраля, 2008 Либо посмотреть в Yast, либо командой rpm -qa | grep perl (rpm -qa опрашивает базу и показывает ВСЕ установленные пакеты, grep perl отфильтровывает названия с выражением 'perl', символ "|" означает конвейер, или pipe, то есть перенаправление стандартного вывода одной программы (в данном случае результата работы rpm -qa) на стандартный ввод другой программы (в данном случае grep). Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
studlife Опубликовано 28 февраля, 2008 Автор Жалоба Поделиться Опубликовано 28 февраля, 2008 сделал как вы написали получил следующие: Цитата: oss@linux-0rom:~> rpm -qa | grep perl perl-Compress-Raw-Zlib-2.005-17 perl-Digest-SHA1-2.11-61 perl-MailTools-1.77-26 perl-TimeDate-1.16-195 perl-MIME-tools-5.420-61 limal-ca-mgm-perl-1.3.2-7 perl-Net-DNS-0.60-16 sax2-libsax-perl-8.1-258 perl-DBD-SQLite-1.13-74 perl-Convert-TNEF-0.17-332 perl-HTML-Tagset-3.10-71 perl-Net_SSLeay-1.30-75 perl-XML-Parser-2.34-107 perl-Bootloader-0.4.32-2 perl-XML-Bare-0.11-15 perl-BerkeleyDB-0.32-13 perl-Config-IniFiles-2.39-72 perl-Cyrus-IMAP-2.3.8-51 perl-File-Tail-0.99.3-71 perl-IO-Zlib-1.06-13 perl-Net-Daemon-0.43-15 perl-TermReadLine-Gnu-1.16-39 perl-Unix-Syslog-0.100-99 perl-libapparmor-2.2-18 perl-Bit-Vector-6.4-71 perl-HTML-Parser-3.56-39 perl-PlRPC-0.2019-18 perl-Compress-Zlib-2.005-13 perl-RPC-XML-0.59-65 apache2-mod_perl-2.0.3-55 perlref-5.004.1-254 perl-base-5.8.8-75 perl-5.8.8-75 perl-Archive-Zip-1.20-19 perl-Config-Crontab-1.21-11 perl-Crypt-SSLeay-0.56-16 perl-Digest-MD4-1.5-71 perl-IO-Multiplex-1.09-36 perl-Net-IP-1.23-73 perl-TermReadKey-2.30-72 perl-URI-1.35-74 perl-gettext-1.05-73 perl-Digest-HMAC-1.01-566 perl-Net-Server-0.96-33 perl-XML-XPath-1.13-12 limal-nfs-server-perl-1.3.2-7 perl-Date-Calc-5.4-72 perl-libwww-perl-5.806-13 perl-IO-Socket-SSL-1.07-22 perl-spamassassin-3.2.3-10 perl-Archive-Tar-1.32-18 perl-Convert-UUlib-1.051-72 perl-IO-Compress-Base-2.005-17 perl-Parse-RecDescent-1.80-318 perl-XML-Writer-0.603-17 perl-Crypt-SmbHash-0.12-72 perl-X500-DN-0.29-15 SDL_perl-1.20.0-471 perl-Carp-Clan-5.9-17 perl-Cyrus-SIEVE-managesieve-2.3.8-51 perl-IO-stringy-2.110-72 perl-Tie-IxHash-1.21-659 limal-perl-1.3.2-8 perl-IO-Compress-Zlib-2.005-16 perl-DBI-1.58-17 yast2-perl-bindings-2.15.3-2 что из этого можно сказать? далее после этого поместил свой файл noauth.pl в директорию /usr/bin и сделал так: Цитата: linux-0rom:/usr/bin # ./perl ./noauth.pl syntax error at - line 1, near "." Execution of - aborted due to compilation errors. что оно может значить? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Byte Опубликовано 28 февраля, 2008 Жалоба Поделиться Опубликовано 28 февраля, 2008 а что это за ^M ? не должно ее там быть Цитата: bash: ./noauth.pl: /usr/bin/perl^M Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Ineu Опубликовано 28 февраля, 2008 Жалоба Поделиться Опубликовано 28 февраля, 2008 Byte писал(а) Thu, 28 February 2008 23:04 а что это за ^M ? Виндозный возврат каретки, он же CR Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
studlife Опубликовано 28 февраля, 2008 Автор Жалоба Поделиться Опубликовано 28 февраля, 2008 так а мне то как быть? подскажате пожалуйста Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Byte Опубликовано 29 февраля, 2008 Жалоба Поделиться Опубликовано 29 февраля, 2008 EvilShadow писал(а) Thu, 28 February 2008 23:18 Byte писал(а) Thu, 28 February 2008 23:04 а что это за ^M ? Виндозный возврат каретки, он же CR угумс, но я не разу не видел, чтобы при попытке выполнить скрипт, в консоль вываливалось. ежели редактировать с помощью MC - да, видно Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
studlife Опубликовано 4 марта, 2008 Автор Жалоба Поделиться Опубликовано 4 марта, 2008 Ребята, ну так как мне быть? подскажите пожалуйста что дальше делать? стоит у меня этот Perl или нет? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Byte Опубликовано 4 марта, 2008 Жалоба Поделиться Опубликовано 4 марта, 2008 судя по выводу rpm -qa | grep perl установлен Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.