Новости
- Железные новости...............................................................04 - IT новости.................................................................................07
VrIP-Person
- Интервью с Max Diesel.........................................................11
Без рамки
- CMS из стали............................................................................15 - Поднимаем сервер 1С Предприятие 8.0.........................21 - Поднятие почтового сервера..........................................24 - Установка 1С 7.7 на MS SQL Server...................................27 - Надежная антивирусная защита...................................31
Кодинг
- Zend Framework: часть 2....................................................37
Креатифф
- Рассказ “Фантазия”...............................................................42 - Уроки по Photoshop.............................................................46
Security
- Защита от SQL-инъекциии с помощью .htaccess..........54
Школа
- 1С:Предприятие 8.1: Язык запросов................................57 - Обзор Delphi-компонент....................................................61
FAQ...............................................................................................63
ИНТРО
Первый летний месяц огорчил жителей моего города кошмарной погодой. Практически весь июнь шли затяжные дожди и солнце не было видно. Несмотря на это, для меня этот месяц пролтел молниесно. Не успел я выписаться из больницы, как меня завалили работой со всех сторон. Все бы хорошо, но к работе добавилась учеба, а точнее последние испытание. В июне я успешно сдал государственные экзамены и защитил диплом. Так что теперь я дипломированный специалист :) Хотя особой радости окончание универа у меня не вызвало. Я там бывал крайне редко и диплом юриста мне нужен был лишь для “галочки” :) Этот номер получился опять особенным. На этот раз серьезным изменениям коснулся дизайн. Наш тимовец (Soffrick) потрудился на славу и сделал совершенно новое оформление. Получилось очень даже супер. Журнал стал еще больше похож на e-magazine и на него намного приятней смотреть и читать. Я в восторге! Мне очень хотелось бы услышать твое мнение по этому поводу. Потрать несколько минуток и накатай мне письмо со своей критикой. Только вместе мы сможем сделать журнал лучше ;-) По содержанию этот номер получился тоже достаточно интересным. Начиная с мая, мы взяли в привычку брать интервью у интересных людей. В майском таким интересным человеком стал отец VR - Фленов М, а вот в этом номере мы побеседовали с Max Diesel - разработчиком бесплатного файлового менеджера Unreal Commander. Надеемся, что интервью ты оценишь по достоинству. Я обычно всегда выделяю плюсы журнала, но сегодня хочу назвать один минус. Этот номер немного провис в плане статей по кодингу. Увы, материалов подготовить не смогли, но в июльском мы гарантировано исправимся. Идей уже много и остается только выбрать время для воплощения их в жизнь. Приятного чтения! Игорь Антонов
Идея Фленов Михаил Редакторы номера Антонов Игорь (antonov.igor@live.ru) Костенко Роман (lord_of_fear@list.ru) Графика в журнале Васючков Андрей aka Soffrick (soffrick@mail.ru) Текущий состав VR-Team Neon_Kaligula, Soffrick, Egoiste, FrIToOll, Lord_of_fear, Spider_NET Вопросы и предложения по журналу mail@vr-online.ru, antonov.igor.khv@gmail.com
vr-online.ru
июнь 2009
Железные новости NVIDIA официально выпускает 40 нм GPU
NVIDIA анонсировала пять мейнстримных 40 нм мобильных GPU, основанных на 40 нм GT200 с поддержкой DirectX 10.1 и памяти GDDR5. Улучшения в микроархитектуре позволили увеличить время работы от батареи и повысить производительность по сравнению с предыдущим поколением мобильной графики. Тем не менее, в отличие от GT200, самый быстрый GPU имеет всего 96 потоковых процессоров вместо 240.
NVIDIA уверена, что новые графические процессоры будут использоваться уже до конца года в более, чем 100 моделях ноутбуков.
AMD представляет новые процессоры: от шести до двух ядер
Основной упор в моделях был сделан на повышение производительности и снижение энергопотребления. Исходя из результатов тестов независимых экспертов, поставленная цель была достигнута – повышение производительности на 34% при одинаковом энергопотреблении по сравнению с моделями Shanghai можно смело назвать хорошим результатом. Процессоры будут изготавливаться по 45-
Lord_of_Fear (lord_of_fear@list.ru)
нанометровой технологии и оснащаться кэшем второго уровня объемом в 6 Мб. Основой для процессоров станут платформы на разъеме Socket F. Среди других технологий, поддерживающимися устройствами можно отметить HyperTransport 3.0, AMD Virtualization и AMD Power management, которые способствуют оптимизации информационной потоков между процессором и материнской платой. На сегодня в продажу поступили пять моделей из серии, самым дорогим из которых является Opteron 8435 ($2649), а самым дешевым Opteron 2427($455). Компании Dell, HP, IBM и некоторые другие в ближайшие дни обещают анонсировать серверные системы на базе этих процессоров. Благодаря более раннему выходу на рынок процессоров от AMD, у компании появились неплохие шансы отобрать весомую долю рынка у своих конкурентов из Intel, так как 6-ядерные серверные процессоры Dunnington Intel должны появится лишь осенью этого года.
Все материнские платы Gigabyte отныне оснащаются двойным BIOS
Чтобы повредить микрокод материнской платы, порой нет необходимости ставить эксперименты с разгоном - вирус, аппаратный сбой или банальное отключение питания в процессе обновления BIOS способны сделать эту чёрную работу за вас. Компания Gigabyte давно предлагает материнские платы с резервной микросхемой BIOS, но до последнего времени эта функция оставалась привилегией более дорогих моделей плат. Стало известно, что компания Gigabyte недавно начала устанавливать двойной BIOS на все модели своих материнских плат, включая и самые дешёвые продукты. Производитель надеется, что подобные меры позволят ему увеличить рыночную долю.
05
vr-online.ru
июнь 2009 энергии. Пропускная способность составляет 1,6 Гбит/с. Такая плотность памяти и малое потребление энергии в первую очередь востребовано в серверах. Это позволит сократить стоимость датацентров и стоимость их обслуживания, и повысить их общую эффективность работы. Кроме того, возможно уже в недалеком будущем такие объемы модулей памяти будут востребованы в играх также как и сегодня 2 и 4-гб.
Шестиядерные процессоры от Intel Как сообщают тайваньские источники, Gigabyte не теряет надежды продать в 2009 году 20 млн. материнских плат.
Модули ОЗУ объемом 32 Гб – уже реальность
Компания Samsung Electronics, используя недавно освоенный 50-нм техпроцесс, сумела достичь самой высокой плотности хранения данных - чипы новой DDR3-памяти имеют плотность 4 Гбит.
Новая память Samsung 4Gbit DDR3 будет применяться, например, для создания 16-Б модулей памяти RDIMM, используемой в серверах, а также для сборки восьми гигабайтных модулей небуферизированной памяти DIMM, которую можно использовать в рабочих станциях и пользовательских ПК. Усовершенствованная технология упаковки чипов позволяет создавать и более ёмкие модули до 32 ГБ. Разработчиком отмечается, что 4-Гбит память Samsung работает при напряжении питания всего 1,35 В, что ещё ниже, чем у типичной памяти этого типа (1,5 В). По сравнению со стандартной 2-Гбит памятью новинка потребляет до 40 процентов меньше
06
Если верить последним новостям, компания Intel хочет значительно преобразить ассортимент дорогих настольных процессоров. К концу года место младших моделей Core i7 в исполнении LGA 1366 займут процессоры Lynnfield в исполнении LGA 1156, а для самых щедрых и требовательных пользователей будет предложена новая версия платформы Skulltrail, подразумевающая использование в одной системе двух процессоров с восемью ядрами
Платформа LGA 1366 в этом сценарии будет использоваться для эксплуатации процессоров Core i7 Extreme Edition, а в дальнейшем и для шестиядерных процессоров Gulftown, выпущенных по 32 нм технологии. Свободный множитель и большой объём кэша уже не могут оправдать высокой стоимости процессоров с суффиксом Extreme Edition, поэтому Intel старается привлечь покупателя большим количеством ядер. В принципе, Intel вполне по силам начать поставки товарных 32 нм процессоров в этом году. Даже процессоры Clarkdale с интегрированным
vr-online.ru
июнь 2009
видеоядром фактически начнут поставляться на OEM рынок в этом году, но будут официально представлены только в первом квартале следующего года. Если учесть, что объёмы поставок шестиядерных процессоров Gulftown будут не так велики, рассчитывать на более ранний анонс они вполне могут.
Осенью прошлого года стало известно, что компания
Albatron
собирается
выпустить
видеокарту GeForce 9500 GT с интерфейсом PCI Express x1. В суете будней этот продукт затерялся, но вновь напомнил о себе, появившись на прилавках японских магазинов. Как и многие сородичи с интерфейсом PCI
GeForce 9500 GT с интерфейсом PCI Express x1
Express x1, видеокарта имеет низкопрофильное исполнение. Силовые элементы вынесены к задней панели, а видеочип и микросхемы памяти скрываются под аккуратным прямоугольным кулером ближе к «корме». На задней панели хватило места для портов DVI и S-Video, порт D-Sub соединяется с печатной платой гибким шлейфом. Видеокарта оснащается 512 Мб памяти типа DDR-3 и работает на частотах
550/1375/1400
МГц,
разрядность
шины памяти составляет 128 бит. Как и любая экзотика, эта видеокарта оценивается не совсем адекватной суммой - $148 в масштабе цен японской розницы.
IT-новости
Spider_NET aka Игорь Антонов (antonov.igor.khv@gmail.com)
В Windows 7 не будет 3D видеокодек открыт ограничений на запуск для всех желающих В самом начале июня, компания Nokia порадовало приложений всех открытием исходных Представители компании Microsoft, в начале июня сделали заявление в своем блоге о том, что ограничение на одновременный запуск нескольких приложений будет снято. Напомним, ранее предполагалась, что в версии Windows 7 Starter Edition пользователи смогут одновременно запускать не больше трех программ. По мнению компании, такой подход позволил бы сэкономить объем потребляемой памяти. Экономия памяти очень актуальна, при использовании Windows 7 на нетбуках.
текстов видеокодека H.264/MPEG-4 MVC. Любой желающий может скачать и ознакомиться с исходным кодом кодека и при необходимости доработать его под свои задачи. Стоит отметить, что видеокодек оптимизирован для работы на мобильных устройствах. Его восхитительные возможности были продемонстрированы на выставке Nokia World 2008. В качестве теста была произведена демонстрация воспроизведения 3D видео в реальном времени.
07
vr-online.ru
Геймеры ликуйте! Анонсирован Crysis 2
Компании Crytek и Electronic Arts сделали анонс второй части известного шутера – Crysis. В этот раз насладиться игрой смогут не только PC-геймеры, но и ярые приверженцы консолей. В качестве движка игры будет использоваться CryENGINE 3. Главный плюс, которого – отличные мультиплатформенные возможности.
Релиз Windows 7 намечен на 22 октября
Представители компании Microsoft сообщили, что в разработке операционных систем Windows 7 и Windows Server 2008 R2 достигнута определенная точка. В связи с этим, партнеры компании смогут получить финальный релиз новой Windows уже в июле этого года, а для всех остальных, новинки будут доступны, начиная с 22 октября. Ждать остается совсем немного.
Бета версии Opera 10 увидела свет
В июне, компания Opera Software представила первую бету версию браузера Opera 10 для публичного тестирования. Выход новой версии Opera ожидают многие поклонники и их ожидания вполне объяснимы. Ведь 10 версии этого бесплатного браузера намечается множество вкусностей. Среди которых: - Opera Turbo – технология, которая позволяет существенно сократить время, необходимое для загрузки страниц, путем компрессии данных на своих серверах. - Улучшенный дизайн – для создания дизайна в
08
июнь 2009 Opera Software был приглашен новый дизайнер (Джон Хикс). Дизайн должен стать полностью новым. - Модернизируемые табы – теперь стало возможным по-настоящему управлять табами (например, изменять их высоту) - Обновленный Dragonfly - Автоматическая загрузка обновлений - и т.д.
Новая версия Lotus Symphony
В середине июня, компания IBM представила на суд общественности новую версию бесплатного офисного пакета – Lotus Symphony. Некоторые из изменений новой версии: - поддержка файлов, созданных в Microsoft Office 2007; - улучшена совместимость с Microsoft Word; - улучшена поддержка DataPilot в таблицах; - улучшена работа с печатью; - оптимизирована работа под Mac OS
Обновилась популярная почтовая программа TheBat
Компания RITLabs сообщила о выходе н о в о й в е р с и и почтовой программы TheBat! В обновленной версии исправлены различные недочеты, среди которых: - Ошибки при отображении советов дня; - Ошибка при установки мастер пароля
vr-online.ru
июнь 2009
Хотели сэкономить, а получили лишние затраты
Многие слышали, что наше правительство решила перевести все школы страны на свободное п р о г р а м м н о е обеспечение. Были выбраны компании, о т в е ч а ю щ и е за создание дистрибутивов и последующее их тиражирование. Вроде задача не сильно сложная, но как всегда не обошлось без эксцессов. Загрузочные диски с дистрибутивом линукса оказались не исправны, а файлы с образовательными материалами были записаны не в той кодировке. В итоге школы получили красивые коробки, которые можно поставить разве что для красоты. Удивительно, но когда сообщили сумму госзаказа, то многих рунетчиков она повергла в шок. Только представь, на все про все ушло 114 миллионов рублей. На мой взгляд, цена завышена как минимум в двое, а если посмотреть на качество, то еще больше. Реально, качеством и не пахнет. Наверное, новый и на первый взгляд полезный проект станет очередной галочкой в отчете чиновников. Обидно и грустно.
Обновился бесплатный FTP-клиент В прошлом месяце обновился мой любимый Open Source FTP клиент – FileZilla. Среди возможностей FileZilla стоит выделить: - Поддержка Drag and Drop Восстановление прерванных загрузок - Менеджер сайтов -
Поддержка
Socks4/5,
Опубликованы подробности Windows 7 Update Program
В конце июня, Microsoft огласила детали льготного обновления до Windows 7. Согласно официальному заявлению, право бесплатного или льготного обновления до Windows 7 получат только те пользователи, которые приобретут лицензию на Windows Vista (Ultimate или Home Premium) на полных основаниях до 27 июня. После финального релиза, все пользователи, подпадающие под данную льготу, смогут совершенно бесплатно обновить свою версию Vista до Windows 7.
Критическая ошибка в Adobe Shockwave
Флэш-плеер от Adobe установлен на нескольких десятков миллионов компьютеров по всему миру. Его присутствие на компе уже давно стало нормой жизни. Огорчает только одно – все чаще в этой программе стали находить критические уязвимости. К примеру, в конце июня был найден баг, который позволяет хакерам получить полный удаленный контроль над компьютером, работающим под управлением Windows. Компания во время отреагировала и на своем сайте привела способ решения проблемы, но как показывает практика, многие пользователи не ставят обновления, а значит, в сети находится куча машин, к которым можно получить доступ. Если ты не обновился, то рекомендуем сделать это прямо сейчас.
Обновить ядро без перезагрузки реально SFTP,
SSL,
аутентификацию с поддержкой Kerberos.
GSS-
Популярный Ubuntu Linux, стал первым дистрибутивом, который стал поддерживать обновление ядра без перезагрузки. Для
09
vr-online.ru реализации этой задачи, компания Ksplice Uptrack запустила новый бесплатный сервис, с помощью которого п ол ь зо вател и Ubuntu Linux смогут устанавливать к р и т и ч е с к и е обновления для ядра системы без перезагрузки и временной остановки системы. Для того чтобы воспользоваться столь полезной возможностью, требуется установить специальный пакет. После этого появится возможность выполнения обновлений «на лету». Сам метод обновления остался неизменным. Все обновления попрежнему загружаются из стандартных репозитариев Ubuntu, а затем транслируются в представление подходящее для использования в Kslice.
Состоялся релиз PHP 5.3.0
июнь 2009 - Улучшена обработка исключений (exceptions linking, exception in destructors); - Добавлена поддержка lambda функций и closures - Появился оператор jump label - Изменен синтаксис php.ini - Улучшена поддержка Windows 7 - и т.д.
Вышла финальная версия FireFox 3.5
В конце первого летнего месяца увидела свет новая версия популярного браузера – FireFox. Выход этой версии с нетерпением ждали все поклонники огненного лиса. Это очевидно, т.к. новинок в последней версии более, чем предостаточно. Среди них: - Поддержка HTML5 Более удобный
интерфейс - Улучшенная производительность. Работает действительно быстрей - Новый движок обработки JavaScript - Улучшенная безопасность
В самый последний день июня, разработчики PHP порадовали WEB-программистов выходом новой версии одного из самых популярных языков для разработки web-приложений. Среди значимых нововведений можно выделить: - Появился garbage collector; - Реализована поддержка namespaces;
10
vr-online.ru
июнь 2009
11
vr-online.ru
июнь 2009
Игорь Антонов aka Spider_NET (antonov.igor.khv@gmail.com)
Интервью с Max Diesel
Каждому из нас знаком замечательный файловый менеджер – Total Commander. Для меня это всегда была программа номер 1, которую я устанавливал после инсталляции Windows. Софтина всем хороша, но у нее есть один недостаток – платность. К сожалению, пока не все пользователи готовы покупать софт. Признаюсь честно, я долгое время юзал пиратский тотал коммандер пока в начале 2008 года не открыл для себя бесплатную альтернативу – Unreal Commander. Из всех файловых менеджеров (бесплатных), которые мне попадались, только этот полюбился моему сердцу. Полюбился настолько, что я уже больше года им пользуюсь и не горю желанием возвращаться на TC. Да собственно и зачем мне это делать. Ведь разработчик UC постарался сделать свое детище максимально похожим на TC. Сходство наблюдается не только во внешнем виде, но и в функциональной начинке. Меня очень радует, что автором столь чудесной программы является не какой-нибудь заморский программист, а наш с вами соотечественник. Специально для нашего журнала мы решили задать ему несколько вопросов, на которые он любезно согласился ответить. Итак, сегодня в гостях у VR – Max Diesel. Встречайте! Расскажите немного о себе. Вы профессиональный фрилансер или трудитесь в оффлайн? Вопрос:
Ответ: Программист, по сути, экономист по
образованию, приверженец «оптимизации по скорости написания кода», человек. Фрилансером не являюсь, впрочем, небольшие программы пишу под заказ, но преимущественно для организаций, которые мне «знакомы» вне интернета. Вопрос: Всем нашим читателям интересно было бы узнать историю создания Unreal Commander. Что Вас подвигло на такой шаг? Ответ: История создания по сути своей вероятно не более увлекательна, чем описание процесса игры в «Тетрис». Если изложить ее кратко, то вначале было слово. Вернее несколько слов, примерно таких: «а было бы неплохо написать собственный файловый менеджер», после этого дело быстро уперлось в слабое знание языка программирования и на этом процесс приостановился лет эдак на 5-ть. В это время я обучался в ВУЗе и параллельно претворял в жизнь более мелкие проекты, которые в итоге распространения не получили, но помогли мне в освоении логики программирования. Написание файлового менеджера на мой взгляд является
12
чем-то в стиле покорения высокой горы - многие пытаются это осуществить, но получается не у всех. И из большинства «отдельных» программ именно файловый менеджер является наименее специализированной и потенциально нужен каждому пользователю ПК. Вопрос: Каждая новая версия Unreal Commander снабжается функциями, которые в основном уже есть в TC. Скажите, вы планируете и дальше развивать свой проект в таком же духе (т.е. создания клона TC)? Или в будущем ожидаются «вкусности», которым позавидует старичок TC? Ответ: Идей много, но для начала хотелось
бы сравняться с TC по функционалу. С другой стороны каждое «новшество» утяжеляет программу, а это является тормозом для добавления желаемых функций. Вопрос: Сейчас Ваш продукт распространяется совершенно бесплатно. Многие выбирают UC именно за бесплатность и богатые возможности. Скажите, к моменту когда номер версии дорастет до единички станет ли UC платным?
На данный момент я не ощущаю рационального желания сделать программу платной. Сначала функционал, затем стабильность, а потом уже можно будет подумать о платности, впрочем, для жителей России и близлежащих стран программа либо останется бесплатной, либо цена за копию будет символической. Ответ:
Вопрос: Почему Вы пишите UC совершенно бесплатно? Это проект для души?
vr-online.ru Ответ: Изначально проект задумывался как коммерческий, но, тем не менее, процесс его создания мне потенциально приятен. Отчасти это творческая работа, хотя в некоторый момент и она временами изрядно надоедает. Во всяком случае в отличие от Unreal Commander при написании «заказных программ» я ощущаю некоторое отвращение и жгучее желание «сделать и забыть». Вопрос: Вы уже наметили срок выпуска первой стабильной версии? Очень хотелось бы узнать про ключевые функции, которые планируется в ней реализовать. Ответ: П о в о п р о с у с т а б и л ь н о с т и я придерживаюсь принципа «9 к 1», то есть из 10-ти случаев программа должна стабильно работать хотя бы в 9-ти. В конечном итоге на каком-то подсознательном уровне я каждую релизную версию (то есть не beta-версию) считаю стабильной, хотя на практике такая стабильность не выше стабильности легендарной Windows 95. В этом плане забавно получилось с релизной версией 0.95 build 715 - буквально за несколько часов до «финальной компиляции» я добавил в код одну строку, которая на мой взгляд не должна была иметь экстремальных последствий, но тем не менее она привела к тому, что программа буквально рассыпалась через несколько минут после запуска. Вовремя я этого не заметил и к моменту обнаружения этой проблемы программу уже скачали многие пользователи. Для меня остается тайной, что по этому поводу подумали все скачавшие программу тогда, но предположения есть... А даты выхода новых версий неизвестны даже мне... фактически я обычно не планирую процесс программирования и новая версия выходит в свет лишь тогда когда я прихожу к выводу что дальнейшее можно оставить на более позднюю версию. Функции пока что в пределах «расширенного функционала», то есть ничего специфического и ничего принципиально нового. Вопрос: Если это не является большим секретом,
то какую среду разработки вы используете и почему именно эту? Ответ: Использую C++ Builder. Он обладает дружелюбным интерфейсом и практически любому интуитивно понятен. Вопрос: Для Windows файловых менеджеров написано предостаточно, а вот unix-like системы
июнь 2009 страдают от недостатка. Вы не думали, сделать версию UC специально для nix систем? Ответ: Я рассматривал этот вариант, но желания модифицировать программу под работу на другой платформе у меня не появилось. Может быть оно появится позже... Вопрос: Вы работаете над разработкой UC самостоятельно или у Вас целая команда разработчиков? Ответ: Команды разработчиков редко желают
работать бесплатно, а бесплатные программы не окупают даже расходы на их распространение (хостинг, доменные имена, интернет). Да и ведь довольно сложно в сегодняшнем мире найти команду, которой можно доверять. Вопрос: UC - это Ваш единственный бесплатный
проект или Вы занимаетесь разработкой и других программ (как free так и shareware)? Ответ: На данный момент этот проект единственный, есть еще один проект в планах - за его эффективность поручиться я не могу, но полагаю что он мог бы значительно помочь пользователям интернета в их повседневной онлайн-жизни. Впрочем, распространение проекта зависит не только от меня. Вопрос: Близиться релиз Windows 7. UC поддерживает работу в новой ОС? Ответ: Насколько я знаю принципы работы с файлами в Windows 7 не сильно изменились по сравнению с Windows Vista, а потому вероятно программа должна корректно работать и в новой ОС. Вопрос: Сколько уже времени прошла с начала разработки UC? Ответ: Идея появилась еще в прошлом веке, а вот целенаправленное ее воплощение началось летом 2006-го, то есть три года назад. Вопрос: Почему Вы решили назвать свой файловый менеджер «Unreal»? Любите поиграть в Unreal Tournament? ;-) Ответ: Как ни странно, но к Unreal Tournament название никакого прямого отношения не имеет. Слово «Unreal» в названии было сразу использовано как уточнение что это «ненастоящий командир» (настоящие командиры бывают,
13
vr-online.ru вероятно, в Армии), ведь любая программа в конечном итоге является нематериальной. Лого программы - «глаз в треугольнике» - является символом искусственного интеллекта, хотя его еще до меня к сожалению успело облюбовать некое сообщество масонов. На мой взгляд, символ искусственного интеллекта вполне подходит в качестве лого для программы, которая называется «нереальный командир» (командир, управляющий файлами). Вопрос: Unreal Commander - очень перспективный
проект. Не пытался ли кто-нибудь у Вас купить его? Ответ: Нет, перекупить не пытались. Вопрос: Когда планируется выход очередной
бета версии?
Ответ: Сложный вопрос, пока что я и сам этого не знаю. Вопрос: Чем вы любите заниматься в свободное время от программирования и сколько времени в день вы обычно проводите за компьютером? Ответ: Человеческое мне не чуждо - играю в игры, смотрю фильмы, разговариваю с друзьями (по аське, по телефону, в реале). Чаще провожу время не за компьютером, а перед ним ;-) по продолжительности это вероятно получается 8595% времени. Вопрос: Не считая TC, кто сейчас является
самыми главными конкурентами у UC?
Ответ: Пожалуй, на этот вопрос я не буду отвечать, чтобы не делать рекламу или антирекламу для других файловых менеджеров. Вопрос: Как вы относитесь к пиратству (в плане софта) в нашей стране? На Ваш взгляд, у нас можно заработать на разработке шаровар или лучше сразу ориентироваться на западный рынок? Ответ: Сложно однозначно сказать, чьей вины больше в провоцировании пиратства разработчиков программ (которые ставят уровень цены на свои продукты неприемлемо высоким для конкретных категорий пользователей), российского рядового потребителя программ (который в силу «российского менталитета» из принципа не желает платить за ПО) или же представителей какого-то третьего сектора. Пиратство - это конечно же нехорошо по отношению к разработчикам, но тем не менее взывать к порядочности потребителя тоже не выход. Относительно возможности заработать в России на разработке платных программ я
14
июнь 2009 ничего конкретного сказать не могу, ведь моя программа бесплатна (для пользователя). Вопрос: Ваше мнение касательно OpenSource продуктов. Как вы к ним относитесь (может чтото используете) и не планируете, ли когда-нибудь открыть исходники UC? Ответ: Пока что в мои планы не входит публикация исходников как минимум потому, что мне не хотелось бы демонстрации моего стиля написания кода. Во время моего пребывания в учебном заведении информатику у нас преподавала одна ПЖП (сокращение от «Представительница Женского Пола», используемое мной для того чтобы не производить выбор между словами «девушка» и «женщина»), которая очень негативно относилась к моему «умению» написать программку одной строкой при факте, что другие эту программку излагали в 8-10 строк (здесь не имеется в виду, что в моей «одной строке» отсутствовали переносы, просто я собирал операторы присваивания и заодно все условия в одну большую формулу). Некоторые функции, написанные мной в состоянии повышенной сосредоточенности, я потом и сам не могу исправить и приходится переписывать их заново, так как «распаковать» код оказывается сложнее чем написать его поновому. Подозреваю, что для OpenSource такой подход неприемлем. Впрочем, что-то я как обычно ушел от темы. На мой взгляд OpenSource чем-то напоминает колхоз - для тех, кого в колхозе называли «кулаками» (тех, кому есть что терять), он невыгоден, а для всех остальных - очень удобен. Каждый хочет получить желаемое бесплатно, но в свою очередь работать бесплатно большинство не желает. Извечный конфликт в его очередной форме. Из программ такого вида использую TrueCrypt и OpenOffice. Вопрос: Ну и по традиции, чтобы Вы хотели пожелать нашим читателям, решивших заняться разработкой и поддержкой бесплатного проекта. Ответ: Хм... с некоторых пор мои пожелания почему-то приносят негативный эффект тем, к кому они направлены, а потому я пожалуй сформулирую в формате «от третьего лица»: и пожелал он всем, чтобы программы их были нужными и удобными, красивыми и понятными, насыщенными нулями и единицами в достаточной мере. Вопрос: Огромное спасибо за интервью! Ответ: Пожалуйста ;-)
vr-online.ru
июнь 2009
15
vr-online.ru
июнь 2009
Игорь Антонов aka Spider_NET (antonov.igor.khv@gmail.com)
Стальная CMS
Рынок программного обеспечения предлагает множество готовых и самое главное универсальных решений для создания продвинутых по функциональности Web-порталов. Построить на их основе сайт, в стиле WEB 2.0 – дело нескольких кликов мышки. Такой функционал и универсальность не может не радовать. Сейчас уже мало кто в состоянии вспомнить о том, что всего лишь несколько лет назад, для создания динамического сайта со сложной структурой требовалось сразу несколько специалистов (WEBпрограммист, дизайнер, html верстальщик). Да, простота и функциональность – это замечательно, но иногда она способна породить некоторые проблемы, главной из которых является безопасность. Поэтому, при выборе готового решения нужно первым делом обращать внимание не на красивые презентации, демонстрирующие восхитительные возможности продукта, а получить как можно больше информации о безопасности продукта. К сожалению, далеко не все производители уделяют должное внимание подготовке демонстрационных материалов, рассказывающих, насколько безопасен их продукт и какие используются технологии для достижения нужного уровня защиты. Компания 1С-Битрикс всегда открыта и старается предоставить клиентам максимум информации о своем продукте. Само собой, такая важная тема как «безопасность» не оставлена без внимания.
Последствия взлома Я уже упоминал, что главным требованием при выборе WEB-приложения (далее все будет касательно CMS) должна быть именно безопасность, а не функциональные возможности. Многие наверняка со мной не согласятся, поэтому сейчас я попытаюсь объяснить, почему же так важно изначально подумать о выборе защищенного решения для WEB. Первое, что нужно четко уяснить – виртуальное представительство вашей компании и сама компания – это одно неделимое звено. Соответственно взлом сайта – это, прежде всего удар по всей вашей компании, а любой удар подразумевает под собой несение всевозможных убытков. Степень убытков во многом зависит от деятельности компании. Если сайт служит всего лишь в качестве «визитки», то убытки скорей обернуться потерей клиентов, ведь мало кому захочется связываться с компанией, которая не может обеспечить должную безопасность даже для своего проекта. Совсем иные убытки будут для компаний, для которых сайт – это не просто виртуальная визитная карточка, а средство получения прибыли (например, Интернет-магазин). Взлом таких проектов обязательно влечет за собой не малые финансовые потери, а также потерю драгоценных клиентов. Причем в таких случаях
16
зачастую теряются как новые, так и старые клиенты. Для любого покупателя в Интернете важна безопасность. Согласитесь, никому ведь не захочется, чтобы сведения о совершенных покупках или еще хуже – данные о кредитной карте стали доступны кому-нибудь еще?
Почему многие WEB-приложения небезопасны Перед тем как перейти к рассмотрению системы безопасности 1С-Битрикс, я хотел бы немного поговорить о защищенности WEBприложений в целом и раскрыть предпосылки и ситуации, заставляющие разработчиков создавать небезопасные приложения. Условно можно выделить пять ключевых проблем: 1. Сжатые сроки. Нехватка времени – это главный враг практически любого программиста. Когда сроки поджимают, многие забывают о качестве, а сосредотачиваются лишь на конечной цели – работоспособности разрабатываемого продукта. Как и следует при «скоростной» разработке качество всегда, мягко говоря, «хромает». 2. Некомпетентность программиста. Программист – программисту рознь, одни
vr-online.ru могут быстро решить задачу, другим требуется больше времени, третьи тратят еще больше времени, но вдобавок сосредотачивают свое внимание еще и на качестве решения. Если рассматривать эту предпосылку применительно к WEB-программистам, то для них принципом номер один должны быть именно качество и безопасность разрабатываемого решения. 3. Отсутствие beta-тестеров. По своему опыту могу сказать, что многие WEB-студии любят экономить деньги на тестировщиках ПО. Эта одна из главнейших ошибок. Продукт, не прошедший специальное тестирования будет содержать огромное количество ошибок. Как показывает моя практика, в основном функции тестера берет на себя программист, а значит, о качественном тестировании не может быть и речи. Многие могут со мной не согласиться, но лично я еще ни разу не видел программиста, который самостоятельно на 100%, смог бы найти все свои ошибки в коде и самое главное те, которые влияют на безопасность. 4. Бесконечное изобретение «велосипедов». Одна из главных ошибок многих программистов – навязчивая идея изобретать то, что уже было сделано до них. Яркий тому пример – большое количество framework’ов, созданных, специально для облегчения жизни программиста. Помимо сторонних разработок, в языке программирования есть встроенные функции для выполнения различных проверок. Вот только почему-то многие программисты про них забывают. На первый взгляд в это трудно поверить, но если проанализировать многие свободно-распространяемые CMS, то все станет очевидным. 5. Неосведомленность разработчиков. Любой проект нужно писать применительно к сегодняшней реальности, а для этого необходимо обладать информацией о положении дел по ту сторону баррикад, т.е. быть в курсе техник актуальных уязвимостей, техник хакерских атак и т.д.
Кто безопасней Движение OpenSource, с каждым днем набирает все больше поклонников, а этот факт влияет на открытие новых «фирм» предоставляющих услуги по внедрению бесплатного софта. Среди WEB-приложений также есть не мало проектов, которые
июнь 2009 распространяются по всем известной лицензии GNU. Бесплатные решения очень хороши в функциональном плане (зачастую даже лучше многих коммерческих), но в плане безопасности оставляют желать лучшего. Профессионалы это прекрасно понимают, поэтому шибко не задумываются о крутости «OpenSource» и для бизнес - проектов выбирают соответствующие решения. К сожалению то же самое я не могу сказать про мелкие WEB-студии с привлекательными ценами, которых в каждом городе пруд пруди. Многие такие « фирмы» пытаются подсунуть клиенту бесплатный движок с «уникальным» дизайном за смешные деньги и на очень выгодных для него условиях. Естественно многие соглашаются на это. Причем из таких любителей сэкономить зачастую попадаются довольно таки крупные коммерческие или государственные учреждения. Как и следует ожидать, счастье от таких внедрений проходит также быстро, как и само внедрение. Прочитав предыдущий абзац, вы наверняка могли подумать, что я необоснованно ругаю все бесплатное и свободное. Нет, вовсе нет. Среди бесплатных web-решений есть много качественных продуктов, которые обязательно нужно попробовать для определенных проектов, но только не для тех, от которых будет зависеть репутация вашей компании. Безопасность многих бесплатных решений далека от идеала и в этом нет ничего удивительного. Не верите? Посудите сами, как можно решиться на приобретение программы, над которой работало множество, зачастую незнакомых друг другу программистов, обладающих совершенно разным уровнем знаний? Да, они сделали рабочее решение, но это не значит, что оно качественное. Все еще не верите? Хорошо, тогда убедитесь сами. Выберите какую-нибудь бесплатную CMS и попробуйте запустить по ее названию поиск на сайтах посвященных безопасности (например, www.securitylab.ru, www.security.nnov.ru). Результат (рисунок 1) не заставит себя долго ждать и перед вами откроется внушительный список уязвимостей найденных за всю историю существования этой CMS. Удивились? Теперь попробуйте, проделать тот же самый трюк, скажем для 1С-Битрикс. Я уверен на 99,9%, что результат будет сильно отличаться – количество ошибок будет существенно меньше.
17
vr-online.ru
Знакомьтесь, 1С-Битрикс Почему я везде упоминаю именно эту систему? Реклама? Нет, дорогие друзья, это не рекламная статья. Рекламу вы сможете посмотреть на официальном сайте, а здесь мы рассмотрим только, то, что действительно соответствует действительности и позволяет назвать 1СБитрикс во истину одной из самых безопасных систем. Итак, приступим… 1. Шифрование данных. Обеспечить безопасность передачи конфиденциальных данных от клиента на сервер невозможно без использования шифровании. 1С-Битрикс поддерживает самый распространенный промышленный стандарт шифрования SSL в рамках протокола HTTPS. Помимо этого, для построения защиты WEB-ресурса, 1С-Битрикс поддерживает такие алгоритмы шифрования как: ГОСТ Р 34.10.94 и ГОСТ 34.11-94 (используются для создания и проверки цифровой подписи, позволяющей аутентифицировать клиента по TLS соединению), ГОСТ 28147-89 (обеспечение конфиденциальности и целостность передачи информации по TLS соединению). 2. Детальные логи. Система позволяет контролировать абсолютно все действия пользователей. Благодаря этому, можно легко определить, кто из пользователей наслаждался изучением вашего ресурса, а кто пробовал уложить в партер. 3. Безопасный API для разработчиков. Как ни крути – у каждого проекта свои особенности, которые зачастую невозможно реализовать в рамках типового решения. Все CMS позволяют расширять свой функционал за счет новых модулей, которые можно создавать самостоятельно. Несомненно, это правильный подход. Правда, не во всех CMS этот подход качественно реализован. В 1С-Битрикс, эта технология достаточно хорошо отлажена и продумана до мелочей. Разработчику предоставляется специальный набор безопасных функций, классов (API), с помощью которых он может реализовать необходимую логику. Такой подход позволяет упростить разработку и исключить множество ошибок в безопасности. 4. SiteUpdate. Реализованная технология автоматического обновления позволяет оперативно исправлять всевозможные ошибки, обнаруженные в коде продукта. Допустим, в
18
июнь 2009 системе была обнаружена уязвимость и для ее исправления необходимо срочно «пропатчить» некоторые сценарии. В большинстве CMS, такого рода задачи обычно приходиться решать ручками, в 1С-Битрикс, решение этой задачи настолько просто, что, по сути установить обновление сможет любой, даже слабо подготовленный пользователь. 5. Двухуровневая система разграничения прав. Построенная таким образом система разграничения прав доступа пользователей, позволяет более качественно установить запреты и дозволения. Первый уровень определяет права доступа к файлам и каталогам, а второй доступ к модулям и логическим операциям в модулях. 6. Фильтрация всех данных. «Умный» механизм фильтрации полученных и отправленных данных исключают возможность проведения таких атак как: SQL Injection, XPath Injection, Cross Site Scriptig, RFI и т.д. 7. Контроль сессий. Тщательная фильтрация и эксклюзивная проверка абсолютно всех данных позволяют почти забыть о том, что сессия может быть кем-то перехвачена. 8. Безопасность 1С-Битрикс – безопасность, подтвержденная специалистами. Компания 1С-Битрикс – одна из немногих, которая может похвастаться наличием сертификатов от известных в области security компаний: Positive Technologies и Nemesis Company.
И что в итоге? Изучая долгое время, российский рынок систем управления контентом, я с уверенностью могу заявить, что 1C-Битрикс – одна из самых безопасных CMS на сегодняшний день. Она соответствует всем требованиям, предъявляемым к безопасности подобных продуктов. И это отнюдь не только мое мнение – это мнение тысяч других пользователей и таких именитых компаний как Positive Technology и Nemesis Company.
Мнение экспертов Александр Антипов Координатор проекта SecurityLab.ru
И.А. Почему в качестве CMS вы выбрали именно 1С-Битрикс? Чем обусловлен ваш выбор?
vr-online.ru
июнь 2009
А.А. В тот момент компания Битрикс заказала у нас аудит безопасности кода CMS Битрикс. После устранения основных недостатков связанных с безопасностью, нами было принято решение перейти на CMS «Битрикс». Основной причиной для перехода стала нехватка функционала нашей прежней CMS. И.А. SecurityLab работает на 1С-Битрикс уже несколько лет. Скажите, как за этот переиод изменилось ваше мнение касательно этой CMS?
А.А. Конечно приходится. Кроме 1С-Битрикс мы используем IDS систему на уровне webсервера Apache и операционной системы. Это позволяет значительно снизить нагрузку на сервер в результате злонамеренных действий третьих лиц. И.А. 1С-Битрикс достаточно популярный продукт, а все популярное рано или поздно становится целью для хакеров. Скажите, ваш ресурс часто пытаются взломать? Насколько успешны такие попытки? А.А. “Часто” не правильное слово. Правильней будет сказать - “непрерывно”. Смотря, что понимать под взломом. Если считать взломом то, что удалось пробить спам фильтр движка и заспамить форум или блог или создать 20000 учетных записей за пол часа, то да, - ломают тоже “непрерывно”.
А.А. За эти годы функциональность системы сильно изменилась, и вместе с ней изменилось наше отношение к ней. 1С-Битрикс постоянно развивается под современные требования, однако функциональность некоторых модулей до сих пор не идеальна. Например, встроенный форум, по своей функциональности, в настоящее время, находится где-то на уровне первых версий альтернативных движков. С точки зрения безопасности, 1С-Битрикс – одна из самых безопасных CMS, представленных на рынке. Да, она действительно безопасна, но все же ей не хватает некоторых фишек, которыми обладает большинство альтернативных CMS. Простой пример – активация учетных записей, которая де факто сейчас присутствует в большинстве систем управления контентом или форумах, но почему-то до сих пор отсутствует в 1С-Битрикс. Или другой пример - защита от спама. Кроме капчи, другие встроенные механизмы защиты отсутствуют.
Евгений Новиков Бизнес-директор Articul Media
Приходится ли вам использовать дополнительные средства для обеспечения безопасности своего проекта?
И.А. CMS «1С-битрикс» - одно из лучших решений в своем роде для построения сайтов и интернет-магазинов. Что вы можете сказать в отношении этой системы?
И.А.
И.А. Уже доступа тестовая .NET версия 1СБитрикс. Скажите, вы ее тестировали? Если да, то, как она вам в плане безопасности? Планируете ли вы на нее переход? А.А. Пока не тестировал, т.к. полнофункциональной рабочей версии все еще нет. Сейчас 1С-Битрикс построен на PHP, к сожалению, этот язык имеет ряд существенных недостатков, как в производительности, так и в безопасности, поэтому если появится полнофункциональная .Net версия, то мы бы с удовольствием осуществили бы переход на нее.
Почему именно Битрикс? 1. Обеспечение безопасности – цель №1. Разработчики 1С-Битрикс в первую очередь направляют свои усилия на создание именно безопасного решения, а не на новинки в функциональном плане. 2. 1С-Битрикс одна из немногих компаний, специализирующихся в области разработке WEB-
решений, обладающая сертификатами безопасности от таких именитых компаний как Positive Technologies (www.ptsecurity.ru) и Nemesis Company. 3. Открытость – один из принципов компании. Компания «1С-Битрикс» полностью открыта для клиентов и своевременно предоставляют полную
информацию о своем продукте. 4. Продуманная архитектура системы, всегда готовая отразить как известные, так и неизвестные атаки. 5. В ногу со временем. Разработчики стараются оперативно обновлять свой продукт, снабжая его новыми возможностями.
19
vr-online.ru Е.Н. C «1С-Битрикс» я начал работать в 2004 году. В то время это был еще просто «Битрикс». Уже тогда было ясно, что «домашние» CMS-ки рано или поздно уйдут в прошлое и им на смену придут коробочные решения. Исходя из предпосылок развития рынка и анализа трендов того времени мы провели сравнение имеющихся на рынке коробочных CMS и, учитывая сложившийся у нас к тому моменту технологический процесс разработки Web-проектов, пришли к выводу, что Битрикс является наиболее оптимальным решением для наших задач. Такие исследования мы проводим время от времени по сегодняшний день, чтобы быть в курсе развития тех или иных продуктов, но до сих пор считаем, что 1С-Битрикс наиболее полно отвечает нашим потребностям. Нельзя забывать и о накопленном опыте работы с продуктом. Сейчас это одно из наших конкурентных преимуществ. Он стал для нас уже практически родным. Если же рассматривать функциональные возможности продукта, то, несмотря на то, что мы не делаем типовых проектов, заложенные в систему возможности сильно облегчают разработку больших и сложных проектов, что, естественно, отражается на сроках и стоимости, которые для проектов enterprise уровня, как правило, критичны в силу их масштаба. В общем, отношение к системе 1C-Битрикс пока только положительное. И.А. Как правильно выбирать хостинг для развертывания 1С-Битрикс? (основные требования к хостингу)? Е.Н. Большинство проектов, разрабатываемых нашей компанией, не «живут» на виртуальном хостинге в силу того что, как правило, большие и сложные интернет-представительства должны обеспечивать еще и тесную интеграцию со структурой компании и бизнес-процессами. Бизнес логика сервисов сайта должна тесно переплетается с результатами работы подразделений и интегрироваться с внешними системами. При этом для работы под нагрузкой нужны несколько другие условия, нежели есть на виртуальном хостинге. Поэтому о выборе низкобюджетного хостинга я мало что могу сказать. Если говорить о выделенных серверах, то есть несколько особенностей, на которые стоит обратить внимание:
1. Адекватная техподдержка. Качественная и профессиональная реакция техподдержки - одно из важных качеств. Даже при меньшем наборе услуг нужно хоститься там, где помогут быстро и профессионально помочь. Хороший хостер
20
июнь 2009 всегда следует правилу “клиент всегда прав”. 2. Тестовый период. Еще перед запуском проекта в production, настраивать и оптимизировать проект нужно уже на боевом сервере. Тестовый период – это хороший повод проверить как аппаратные и программные возможности сервера, так и качество техподдержки. 3. SLA. Соглашение об уровнях обслуживания является важной характеристикой хостинга. SLA – это гарантия качества хостинга и формализованная договоренность о доступности услуги. В первую очередь эта характеристика важна для посещаемых ресурсов и ресурсов, работающих с оплатой заказов, выставлением счетов и т.п. Ну и конечно же важны характеристики, такие как:
технические
- каналы и дислокация серверов; - система защиты серверов; - ПО, устанавливаемое на сервере; - соответствие техническим характеристикам CMS. Идеальным вариантом, все же, является возможность поддержки своего сервера силами специалистов, работающих в штате и в задачу которых входит обслуживание сервера. И.А. Одним из наиболее важных критериев для WEB-проектов является безопасность. Чем на ваш взгляд 1С-Битрикс лучше других CMS в плане безопасности? Е.Н. 1С-Битрикс, в отличии от многих, гарантирует безопасность работы сайтов, собранных на продукте. Конечно же, сайты должны быть разработаны на основе рекомендаций по безопасности. Да и разработчики должны уделять внимание этим вопросам. Но если эти условия соблюдены, то есть уверенность в том, что ресурсу ничего не грозит. Другим важным преимуществом 1С-Битрикс является тот факт, что при малейшем подозрении на взлом техподдержка оперативно реагирует и разбирается с каждым случаем индивидуально и в короткие сроки. Если же говорить об ощутимых результатах, то можно с уверенностью сказать, что за все время работы проектов, разработанных на продукте не было взломано ни одного сайта, разработанного нами, хотя попытки имели место быть.
vr-online.ru
июнь 2009 Плахов Евгений aka bjjzpp (bjjzpp@gmail.com)
Поднимаем сервер 1С Предприятие 8.1 Поднимаем сервер 1С Предприятие 8.1 на Fedora часть 1: настройка сервера
В продолжение цикла статей, по 1С Предприятию 8.1, хочу рассказать, Вам как настроить платформу 1С Предприятия 8.1 for Linux. Данная платформа является первой, которая работает в открытых системах без всяких Wine эмуляторов. Данная версия распространяется как шареваре. Без ключа Hasp сервер платформы 8.1 позволяет 11 подключений, если подключается 12-й терминал, платформа сообщает «без ключа Hasp разрешено 11-ть подключений». Так же рекомендую посетить сайт http://www. aladdin.com/support/hasp/enduser.aspx и скачать HASP HL Linux License Manager and HASP SRM Run-time RPM Installer for Linux. На cd записаны следующие файлы: 1C_Enterprise-common-8.1.4-30.i386.rpm 1C_Enterprise-server-8.1.4-30.i386.rpm 1C_Enterprise-ws-8.1.4-30.i386.rpm libicu-3.4-3.1.i386.rpm postgresql-1c-libs-8.1.4for1c-1PGDG.i386.rpm postgresql-1c-8.1.4for1c-1PGDG.i386.rpm postgresql-1c-server-8.1.4for1c-1PGDG.i386.rpm postgresql-1c-pl-8.1.4for1c-1PGDG.i386.rpm postgresql-1c-contrib-8.1.4for1c-1PGDG.i386.rpm
адрес. Начинаем настраивать файловый сервер для windows, так называемый Samba. Заходим в меню Система и выбираем настройка сервера (рис 1).
Рис 1. Далее добавляем пользователя и прикручиваем авторизацию к пользователю (рис 2 и рис 3).
Как говорится гоу-гоу-гоу)))!
Я не буду рассказывать, как устанавливается Linux Fedora, переедем сразу к сладкому. Вам потребуются следующие пакеты из Fedora: Текстовый редактор GNU Emacs Средства настройки сервера Файловый сервер для Windows Средства администрирования
Рис 2.
Установка кластера серверов платформы 8.1 и СУБД PostgreSQL 8.1
Преступим, заходим Fedora через учетную запись root и бегом в «Терминал» и набираем нашу, любимую команду ipconfig. Я при установки Fedora в настройкам сетевой карты прописал ИП c маской 192.168.0.1 / 255.255.255.0, а компьютер назвал 1Сserver. Запрос команды ipconfig, сказал что у нас есть сетевая карта и есть данный Ип
Рис 3. Заводим новый общий файловый ресурс и указываем пользователей, которые имеют к нему доступ (рис 4).
21
vr-online.ru
июнь 2009
Рис 4. Теперь переходим в «Службы», проверим запущена у нас Samba или нет (рис 5).
Рис 5.
Устанавливаем платформу 8.1
Вставляем в cd-rom диск, на котором мы записали 1С Предприятием 8.1 и Рostgresql-1c. Переходим в каталог /usr/share/file_1с8 копируем в каталог файл setup.sh, ниже приведен исходник. Перед запуском файла setup1C81forFedora.sh заходим в «Свойства файла - Права» и ставил галочки выполнить. Немного о файле setup1C81forFedora.sh данный файл упростит установку платформы 8.1, расскажу что делает данный скрипт: копирует данные с диска, устанавливает сервер платформы 8.1, запускается кластер в режиме службы, инсталлируется СУБД PostgreSQL, далее идет первый запуск, затем вносим изменение согласно сообщением скрипта, перезагрузка. Исходный текс файла setup1C81forFedora.sh: <-начало скрипта-> clear eject echo вставьте болванку 1С предприятие 8.1 for linux|more echo путь к текущему каталогу pwd echo сетевые настройки
22
ifconfig >ifconfig.log echo попытка подключения CD autorun mount /dev/cdrom /media/cdrecorder echo копирование дистрибутивов rm -v /usr/tmp/* cp -v /media/cdrecorder/1cv81/linux/* /usr/tmp cp -v /media/cdrecorder/postgresql/linux/* /usr/tmp cd /usr/tmp rpm -ihv 1C_Enterprise-common-8.1.4-30.i386.rpm rpm -ihv 1C_Enterprise-server-8.1.4-30.i386.rpm rpm -ihv 1C_Enterprise-ws-8.1.4-30.i386.rpm /etc/rc.d/init.d/1cv81 stop /opt/1cv81/ragent -daemon /etc/rc.d/init.d/1cv81 restart rpm -ihv libicu-3.4-3.1.i386.rpm rpm -ihv postgresql-1c-libs-8.1.4for1c-1PGDG.i386. rpm rpm -ihv postgresql-1c-8.1.4for1c-1PGDG.i386.rpm rpm -ihv postgresql-1c-server-8.1.4for1c-1PGDG. i386.rpm rpm -ihv postgresql-1c-pl-8.1.4for1c-1PGDG.i386. rpm rpm -ihv postgresql-1c-contrib-8.1.4for1c-1PGDG. i386.rpm echo в файле /var/lib/pgsql/data/postgresql.conf echo нужно указать (раскомментировать) echo default_with_oid = on echo stats_row_level = off echo убедитесь, что в файле postgresql.conf в конце есть такая строка echo host all all 0.0.0.0/0 md5 |more echo далее Вам необходимо ввести пароль postgres echo а затем задать новый пароль вот так echo ALTER USER Evgeniy PASSWORD '1cDataServer'; LANG=ru_RU.utf-8 /etc/init.d/postgresql start /etc/init.d/postgresql restart psql -h localhost postgres postgres #shutdown -r now <-конец скрипта-> Установка и настройка сервера 1С 8.1 for linux прошло на ура! Продолжение следует… На этой ноте я заканчиваю первую часть статьи Поднимаем сервер 1С Предприятие 8.1 на Fedora часть 1: настройка сервера. В следующим номере журнала будем настраивать клиентские компьютеры. Скрипт установки прилагаю к журналу.
vr-online.ru
июнь 2009
Поднимаем сервер 1С Предприятие 8.1 на Fedora часть 2: настройка клиентских машин. Не много от темы. На днях получил новый дистрибутив 1С Предприятие 8.1 релиз 8.1.14.65, данная платформа поддерживает 3 СУБД: MS SQL Server, PostgreSQL новичок в списке IBM DB2 (рисунок 1).
Рис 1 Однако не забываем качать драйвера для СУБД PostgreSQL и IBM DB2, для windowsклиентов. Продолжаем, настройку настраиваем клиентские машины с сервером Fedora. Запускаем клиентскую машину, запускаем установку 1С Предприятие 8.1 for windows. Нам потребуются следующие компоненты: Компоненты доступа к серверам 1С Предприятие 8.1 Сервер хранилища 1С Предприятие 8.1 После установки 1С: Предприятие 8.1 переходим, нажимаем кнопки на клаве «Win + R», нажимаем обзор и идем в каталог «C:\Windows\ System32\drivers\etc\hosts». Далее редактируем файл hosts (рисунок 2).
После чего у вас создаться кластер сервера, который подключен к серверу. При открытии дерева кластера у вас появится, ошибка сокет не найден и т.д.. Это проблема решается легко перезапускаем на сервере 1Server Samba, а на клиентской машине перезапускаем «Сервера предприятия». Так же возьмите на заметку, если у вас есть помимо сервера под управлением Linux еще и Windows сервер его тоже можете добавить в данную консоль 1С. Повторите шаги на рисунке 2 и 3 и у вас появится еще один сервер, к которому можно подключиться.
Рис 3
Рис 2 Из рисунка 2 видно, что мы добавили ип нашего сервера и прописали имя. Переходим в меню «Пуск – Программы – 1С Предприятие - Серверы 1С Предприятия». На рисунке 3 показана настройка центрального сервера, запускаем «Серверы 1С Предприятия», добавляем центральный сервер предприятия. Протокол выбираем TCP, имя указываем нашего сервера Fedora. Насчет порта, проверти чтобы фаервол не блокировал ип 192.168.0.1:1541.
Как видно из рисунка 3, после запуска «Серверы 1С Предприятия», добавляем центральный сервер предприятия. Протокол выбираем TCP, имя указываем нашего сервера Fedora. Насчет порта, проверти чтобы фаервол не блокировал ип 192.168.0.1:1541. После чего у вас создаться кластер сервера, который подключен к серверу. При открытии дерева кластера у вас появится, ошибка сокет не найден и т.д.. Это проблема решается легко перезапускаем на сервере 1Server Samba, а на клиентской машине перезапускаем «Сервера предприятия». Далее ломимся в терминал на сервере, и создаем базу данных нашей конфигурации, я работаю с «Бухгалтерией 1.5». [root@1Cserver ~ ]# psql –h 192.168.0.1 postgres Evgeniy Password for user postgres : ****** Welcome to psql 8.1.4, the PostgreSQL interactive
23
vr-online.ru
июнь 2009
terminal. create trusted language plpgsql handler language_ handler_in; revoke all on language plpgsql from public; postgres=# create database bux winth encoding=’utf8’ owner=postgres template=template0 tablespace=pg_ default; create database postgres=#grant all on database bux to public; grant postgres=# \q [root@1Cserver ~ ]# Базу данных создали, теперь снова бегом клиентской машине, заходим в «Серверы Предприятия». Открываем в дереве «1Сserver – Кластеры – 1541(наш порт)», создаем информационную базу рисунок 4. Из, рисунка 4 видны все наши настройки, по которым мы подключаемся к серверу Fedora. Если кто-то будет ставить СУБД IBM DB2, на данном этапе меняете тип СУБД и прописываете подключение к данной СУБД. Подключение готово теперь можем заходить в конфигуратор и загружать конфигурацию «Бухгалтерия 1.5». На этом все.
Рис 4
Плахов Евгений aka bjjzpp (bjjzpp@gmail.com)
Настройка почтового сервера с cms206 Работаю на одной фирме кодером 1с, так вот не задача, не у всех пользователей есть принтеры. Грубо говоря от менеджеров остался без принтеров, и они все бегают из другово крыла чтобы сделать распечатку. У вас возникают вопросы по чему не по сети это дело делать с кинул в папочку и все готово. Ответ банальный и простой директор сказал чтобы доступа не было не к одному компу (рассказывать и пояснять чурке сложно, т.к., он не чего не понимает). Не много от темы: у одного из менеджеров в ПК оперативы 256мб, он пошел к директору решить этот вопрос с фин.части, директор ему в ответ ты что дурак что ли какая еще оперативная память. Возвращаемся к нашей теме, почему я выбрал данную программу cms206, все просто программа прочти, не весит всего 1мб, шустрая, как вы уже поняли железо на данной фирме не какое. А ставить Kerio MailServer или MS Exchange было бы просто убийство. У таких гигантов и лицензия не маленькие бабки стоит, в моем случаи, а тут 1200р за восемь пользователей халява! Кстати программа в режиме шараваре разрешает с 3-мя пользователями работать.
24
Настраиваем программу cms206 На рис 1, изображена программа которую будем настраивать, красными точками отмечены пункты, которые мы будем рассматривать. Из рисунка видно что самый первый пункт у нас «Сервисы» вот с него и начнем. Нас интересуют только сервер исходящей и входящей почты, т.к., мы будет сервер прикручивать Утлуку который идет в поставке с windows и office.
vr-online.ru
июнь 2009 Переходим к следующей секции настроек, далее у нас идут пользователи. В данной секции настроек мы задаем всех пользователей, которым будут получать почту в локальной сети рис 5.
Рис 1
Рис 4
Рис 2
Как видно из рисунка 5, мы открыли форму добавление нового пользователя. Не чего сложного, обычная форма добавления.
Рис 3 Из рисунков два и три, видно что мы настаиваем с протоколы исходящей и входящей почты. Т.к, мы настраиваем почтовый сервер для локальной сети, нам будут нужны только закладки «Общее». Привязываем программу к нашему ипу компа т.к, он у нас сервером будет. Протоколы HTTP, SOCKS в данной настройки нам не нужны их можно выключить. С сервисами закончили, переходим к доменам. Домены нам нужны чтобы задать окончание почтового ящика после собаки. Пример evg@bjjzp.ru, рис 4, на рисунки показано как правильно задать имя домена.
Рис 5 Следующая секция настройки «ИП-адреса», рисунок 6. Тут мы задаем сеть, с которой у нас будет работать сервер. Я убрал галочку с «Активен» и убрал группу «Local». На вопрос почему, потому что я негде в настройках не ставил то, что я вхожу в группу «Local». Следующая секция
25
vr-online.ru
июнь 2009
настроек это опрос сервера на предмет входящей и исходящей почты. Настройка представлена на рисунке 7.
сервера: посылал письмо с evg@bjjzp.ru на ter@ bjjzp.ru и в обратном направлении. На рисунке 10, выкладываю лог работы сервера. Программа вместе с журналом. На этой ноте прощаюсь. Удачи!!!
Рис 6 Выбираем «Планировщик» и переходим за закладку «Расписание». Здесь мы задаем интервал опроса протоколов входящей, исходящей почты. Выбираем задание «Send» и я поставил интервал опрашивать протоколы каждую минуту.
Рис 8
Рис 7 Следующая секция настройки у нас подключение, скриншот не стал делать т.к., там все прсото оставляем «Подключение по локалньной сети». Далее настаеваем учетную запист в Утлуке, рисунок 8. На рисунке 8, видно что мы вводим почту которую создали в программе ter@bjjzp.ru с учетными данными. А сервер входящей и исходящей почты указали нашего сервера. Сохраняем настройку учетной записи и отравляем письмо. Пример работы привожу на следующих риунках. На рисунке 9, привел пример работы почтового
26
Рис 9
Рис 10
vr-online.ru
июнь 2009 Роман Костенко aka Lord_of_fear (lord.of.fear.vr.team@gmail.com)
Переносим базы 1С 7.7 под MS SQL 2000
И по сей день повсеместно используется 1С версии 7.7. Базы данных хранятся в основном в файловом варианте. Я же считаю, что целесообразнее настроить работу 1С с MS SQL server. Прирост в производительности мною особо не замечен при переходе на скуль, но стабильность работы стала значительно выше. Да и та же самая, например, переиндексация базы теперь проходит в 10 раз быстрее. Нет смысла переходить на SQL server, если на машине с базой мало оперативной памяти. Поймаешь только ещё больше тормозов. SQL server может для одной базы отжирать достаточно много оперативы. Если же на борту 4 гига ОЗУ и более, то эта статья для тебя. Я расскажу как перенести свои базы на SQL Server 2000.
Ставим MS SQL server Установка MS SQL Server 2000 Enterprise Edition осуществляется на операционную MS Windows server 2003 Standard Edition. Кликаем “SQL Server 2000 Components” и выбираем “Install Database server”. MS SQL server 2000 поддерживается данной операционной системой только с установленным Service Pack 3. Пакет обновлений SP3 надо поставить сразу после установки SQL Server 2000. Имеется возможность установки сервера на удалённый ПК, но мы ставим на локальный:
27
vr-online.ru Естественно выбираем полную установку с нуля:
июнь 2009 Выбираем типичную установку. На самом деле можно сделать выборочный инсталл, но там особо ненужного ничего нет. Ну можно, например, убрать из установки “books online”:
Далее будет предложено ввести информацию о пользователе – Имя и Организация. Вводим и следом принимаем лицензионное соглашение. Тип установки – Сервер и клиентские тулзы: Теперь необходимо указать от чьего имени будут запускаться службы. Выбираем единую настройку для каждого сервиса. Ставьте галку как на скриншоте. Если же ты - администратор домена, то можно запускать от имени своего пользователя. Но не рекомендую. На то существует несколько причин. Не буду вдаваться в подробности. Разговор не про это.
Теперь одна тонкость. Нам не нужно создавать именованный экземпляр MS SQL Server. Посему оставляем галочку “default”:
Тип аутентификации выбираем смешанный и вводим пароль для пользователя с логином sa:
28
vr-online.ru
Способ лицензирования выбираем “на каждый процессор”. Процессор у меня 2-х ядерный, посему ставим как на скриншоте:
июнь 2009
Переносим базы на SQL Server Для начала необходимо создать базу не сервере, в которую будет осуществлён перенос всех данных из файловой базы. Для этого запускаем SQL Server Enterprise Manager:
Вот и всё. Ничего сложного даже нет. Установка началась. Можно пока пойти попить чайку. После окончания установки необходимо установить SP3 или выше (Я поставил SP4). C этим справится каждый, посему описывать установку не буду. По окончанию перезагрузку можно не делать. Достаточно сделать logoff и заново залогиниться. Запустить SQL server можно, вызвав утилиту SQL Server Service Manager из трея и нажав “Start/Continue”.
Теперь кликаем правой кнопкой крыски и выбираем “new database”. Заполняем поля с именем нашей базы и путь к ней. Советую расположить базу на жестком диске, на который возложено меньше всего нагрузки. У меня, например,
для
баз
установлен
отдельный
жесткий диск, на котором не хранится больше никаких других данных.
29
vr-online.ru
июнь 2009
Думаю, что выбор очевиден Следующим шагом заходим в “Администрирование” → “Параметры базы данных SQL” и заполняем существующие поля:
Теперь необходимо выгрузить данные из 1С. Выгоняем всех пользователей из базы, успокоив тем, что через 5-10 минут все опять смогут вернуться к работе. А больше времени нам и не понадобится. Заходим в конфигуратор и выгружаем данные: “Администрирование” → “Выгрузка”. После того, как выгрузка завершилась, закрываем конфигуратор и запускаем опять 1с7.7. Добавляем новую базу в список. Путь к базе указываем такой же, какой указали для хранения новой базы в SQL Server. У меня это “C:\Mybase”. Открываем её в режиме конфигуратора. Появится диалог с выбором формата хранения данных:
Далее делаем загрузку данных из нашей выгрузки. “Администрирование” → “Загрузка”. Теперь дело за малым. Осталось лишь скопировать каталоги пользователей из старой базы в директорию с новой и дать пользователям права на запись. Вот как теперь выглядит содержимое директории базы 1С:
Ну вот, собственно, и всё. Удачного всем системного администрирования!
30
vr-online.ru
июнь 2009 Игорь Антонов aka Spider_NET (antonov.igor.khv@gmail.com)
Надёжный сторож корпортативной сети TrendMicro OfficeScan Вирусы, опасные web-страницы, трояны, черви – сегодня интернет просто кишит этой заразой. Новостные ленты с завидным постоянством пестрят о появлении «супер» вирусов/червей, умудрившихся заразить миллионы систем за несколько дней. При таком ужасающим положении дел невозможно представить комфортную и безопасную работу за ПК. Опасность «заразится» подстерегает на каждом шагу. Ну как тут обойдись без качественной защиты? Полбеды, если требуется защитить один ПК. Для этого на рынке представлено множество решений, позволяющих создать надежную «домашнюю» защиту. А если встает вопрос об обеспечении безопасности корпоративной сети из 100 компьютеров? Тут уж не всякий антивирус сгодится.
Каким должен быть корпоративный антивирус Перед тем как приступить к обзору конкретного продукта хотелось бы заострить ваше внимание, на требования, которым по нашему мнению должен соответствовать антивирусный продукт, выбранный для корпоративного использования. Мы уже говорили, что к продуктам такого класса предъявляются особые требования и вот некоторые из них: 1.
Качественное
определение
вирусов.
Пожалуй, это критерий №1 к продуктам такого типа. Под словом «качественное» также подразумевается умение антивируса обнаруживать те вирусы, сигнатур которых еще нет в его базах. Вирусописатели всегда на несколько шагов впереди от производителей антивирусных решений, а раз так, то хотелось бы, чтобы антивирус помогал именно предотвратить заражение. Точно также «качественное» определение не должно мешать работать, делая ошибочные выводы. Согласитесь, какой толк от антивируса, постоянно выдающего назойливые предупреждения на большинство безобидных программ и файлов. 2. Централизованное администрирование.
Без данной возможности, использование антивируса может стать настоящим кошмаром для IT-специалиста. Удаленная установка клиентский частей, инициирование сканирования определенного ПК, вынужденная деинсталляция клиента, построение отчетности
– возможности, которыми обязан обладать хороший корпоративный продукт. 3. Отказоустойчивость. Вылеты с критическими ошибками для корпоративного сторожа не уместны. Антивирус должен работать до последнего и не позволять сторонним программам завершать свои процессы или изменять файлы. 4. Отсутствие конфликтов с другим security-ПО. Выбираемый продукт не должен
конфликтовать с дополнительными средствами защиты, использование которых возможно в корпоративной среде. 5.
Комплексное
обеспечение
защиты.
Опасностей много и антивирус должен уметь бороться если не со всеми, то с наиболее «популярными». Намного лучше, когда несколько видов защит реализовано в одном продукте, а не в нескольких разных. К сожалению, многие из предлагаемых сегодня антивирусных решений не соответствуют перечисленным выше требованиям. Тем немее такие продукты рекомендованы для корпоративного использования и пользуются не малой популярностью. Не будем перечислять или ругать представителей таких решений, а лучше расскажем вам о продукте, качество и возможности которого позволяют приступить к использованию внутри компании. Сразу хочется отметить, что рассматриваемый продукт ни в коем случае нельзя считать идеальнейшим. Недостатки у него (как и у всех решений данного типа) имеются, но благодаря своим расширенным функциональным возможностям на многие из них можно закрыть глаза.
31
vr-online.ru
Разрешите представить, OfficeScan В рамках статьи мы рассмотрим набирающий популярность в России продукт OfficeScan от японской компании TrendMicro (общая информацию о компании см. во врезке). Нельзя сказать, что это самый лучший продукт, т.к. сказать в отношении любого антивируса «лучший» это значит намеренно слукавить. Дело в том, что у всех продуктов данного типа оригинальный алгоритм детектирования вредоносного ПО, следовательно, результаты проверки зараженного файла могут отличаться. Один антивирус сможет распознать заразу, а другой наоборот – нет. Утверждать, что антивирус распознавший вирус лучше, чем тот, который ничего не заметил – нельзя. При повторе эксперимента, но уже на другом вирусе ситуация может измениться с точностью наоборот. В этом легко убедится, если отыскать на просторах сети вредоносный файл и попробовать проверить его сразу несколькими антивирусными программами (например, через соответствующий Online сервис). В связи с этим, в статье мы не будем делать упор на качество защиты рассматриваемого продукта, а посмотрим лишь на особенности его развертывания и функциональные возможности.
Развертывание OfficeScan 1. Установка
Установка любой программы для ОС Windows, будь то серьезный продукт или обычная прикладная программа, сводится к запуску инсталлятора и нескольких нажатий на кнопку “Next”. С OfficeScan все несколько иначе. Нет, у него тоже красивый и удобный инсталлятор, но вопросов он задает не один и не два. Дело в том, что разработчики, реализовали в инсталляторе этап базовой настройки антивируса. На наш взгляд подход очень интересный и позволяет сразу же после завершения инсталляции получить готовую к боевому использованию программу. Один из первых вопросов мастера – «Сканировать или не сканировать целевой компьютер». Если антивирус требуется
32
июнь 2009 установить на зараженную систему, то лучше сразу же ее «вылечить» выбрав «Сканировать целевой компьютер». В этом случае мастер до выполнения установки программы просканирует жесткий диск на наличие вредоносных файлов. Это очень удобно, т.к. многие вирусы блокируют установку популярных антивирусных продуктов. Все управление серверной частью антивируса выполняется посредством WEBинтерфейса и для его «поднятия» требуется установленный WEB-сервер. Если у вас уже имеется настроенный IIS, то TrendMicro может создать дополнительный виртуальный сайт (рис. 1). Ну а если IIS не развернут, то придется воспользоваться услугами бесплатного Apache. Самостоятельно качать и устанавливать WEBсервер не придется. Дистрибутив Apache включен в поставку TrendMicro. Для этого обзора мы выбрали второй вариант и согласились на установку Apache. Одним из завершающих вопросов мастера установки будет выбор продуктов для установки. Нас интересует лишь антивирус, поэтому значения оставляем по умолчанию (рис. 2). Сразу после выбора устанавливаемых компонентов все тот же мастер вежливо поинтересуется у нас, а не хотим ли мы присоединиться к глобальной программе отслеживания вирусов. Цель этой программы – помочь развитию антивируса и позволить оперативно выявлять новые угрозы. Принцип работы опять же прост. При обнаружении новой заразы, антивирусный сервер будет формировать, и отправлять соответствующую информацию в лабораторию компании для дальнейшего исследования. Поскольку мы проводим установку лишь для тестирования, то мы откажемся от этого предложения.
Рисунок 1 (Выбор WEB-сервера)
vr-online.ru
июнь 2009
Рисунок 2 (Выбор устанавливаемых программ) Последним серьезным вопросом будет определение необходимости включения брандмауэра. В нашей тестовой сети уже развернут альтернативный продукт, поэтому мы отказались от установки.
серверной части антивируса выполняется через WEB-интерфейс. Это огромный плюс и одновременно неудобство. Главный минус – ActiveX. Поскольку панель администрирования построена на основе этой технологии, то нам волей-неволей придется пользоваться услугами Internet Explorer, т.к. лишь он поддерживает данные объекты. Отсюда собственно и вытекает главная проблема – безопасность. Ошибки в этом web-браузере находят с завидной регулярностью, поэтому нет никаких гарантий, что при вынужденном администрировании с незнакомого ПК, параметры аккаунта администратора не улетят в «неизвестном направлении». В связи с этим, при необходимости администрирования сервера за пределами компании, следует позаботиться о дополнительных средствах защиты. 3. Установка клиентских частей
Антивирусный сервер у нас установлен, и теперь можно познакомиться с вариантами установки клиентских частей на компьютеры в сети. OfficeScan позволяет решить эту задачу несколькими способами: 1. Установка через общий ресурс (ofscan). Выполнив установку сервера, на вашем жестком диске появится новая общая папка. Если в имеющейся сети компьютеров немного, то для установки клиентской части можно воспользоваться этим способом (рис. 4). Все что от вас требуется, так это зайти в эту папку и запустить AutoPcc.exe.
Рисунок 3 (Установка паролей) Итоги: Установка завершена и можно подвести промежуточные итоги. Как видите, с процессом установки под силу справится даже простому пользователю. Никаких сложностей, все просто и понятно. Также отметим, что для управления антивирусом будет использоваться WEBинтерфейс. Это огромный плюс, т.к. становится возможным рулить с любого ПК в любой точке планеты. Все что необходимо – доступ в интернет и наличие браузера IE (чуть позже затронем это ограничение). 2. Управление антивирусным сервером
Мы уже сказали, что управление и настройка
Рисунок 4 (Новый общий ресурс) 2. Отправка ссылки клиенту посредством email. Если у каждого пользователя локальной
33
vr-online.ru
июнь 2009
сети имеется электронная почта, то вы можете отправить каждому клиенту письмо, содержащее url для загрузки клиентской части. Сгенерировать новое письмо можно прямо из панели администрирования. Для этого стоит пройти в раздел: Networked Computers -> Client Installation -> Browser-based (рис. 5). Создание письма произойдет в установленном и выбранным по умолчанию почтовом клиенте.
AutoPcc.exe (вспоминаем про общий ресурс) и распространить его через групповые политики (при использовании AD). Если использовать bat файл не получается по ряду причин, то для этого случая существует отдельная утилита – Client Packger. С ее помощь можно сформировать пакет установки (в формате msi, Microsoft sms) и опфть таки распространить посредством групповых политик. Итоги: Для установки клиентских частей на компьютеры в сети, TrendMicro OfficeScan предоставляет несколько вариантов. Каждый из них хорош в определенной ситуации.
Рисунок 5 (Генерация письма) 3. Удаленная установка из панели администрирования. Этот способ наиболее предпочтительный в сетях построенных на AD. Воспользовавшись в панели управления пунктом меню – Networked Computers -> Client Installation -> Remote (рис. 6), вы увидите, менеджер компьютеров сети и сможете выбрать любой из них для установки клиентской части. Если все имеющиеся компьютеры в сети включены в домен, то для старта установки вам достаточно выбрать компьютер(ы), ввести имя пользователя/пароль администратора домена и кликнуть на кнопку install. В противном случае для выполнения удаленной установки придется вводить имя пользователя и пароль учетной записи с правами администратора каждого ПК. 4. Автоматизация установки. Несмотря на наличие нескольких способов быстрой установки антивируса на компьютеры в сети, все они имеют явный недостаток – временные затраты. Ладно, когда в сети компьютеров пара десятков, и все они включены в домен. В этом случае на установку потребуется всего лишь минут 20-30, а если их 100 и больше? Для автоматизации процесса установки рекомендуется создать bat с одной единственной строкой – запуск файла
34
Рисунок 6 (Удаленная установка клиентской части антивируса) 4. Возможности серверной части
1. Мониторинг состояния компьютеров. Разработчики из TrendMicro видимо ценят возможность оперативного получения информации. Именно поэтому, из панели администрирования IT-специалист может получить различную информацию о состоянии клиентских частей, а также наличию вирусных угроз. Причем присутствует возможность получить «сводный отчет» по каждому компьютеру в отдельности. Все отчеты формируются за определенный период. Таким образом, проведение анализа зараженного ПК становится действительно анализом, а не чтением мегабайтных логов. К тому же для удобства чтения и анализа, все отчеты можно выгрузить в CVS. 2. Планировщик. Встроенный планировщик позволяет запланировать антивирусные проверки, как отдельного ПК, так и целого
vr-online.ru
июнь 2009
домена. 3. Откат обновлений. Уже немало известно случаев, когда антивирусные компании выпускали некорректные обновления, приводящие к печальным последствиям. Для перестраховки от такого рода проблем, разработчики TrendMicro предусмотрели возможность отката на предыдущую версию вирусной базы.
4. Встроенный Firewall. Думаем, объяснять для чего необходим Firewall в корпоративных сетях не нужно. Скажем лишь, что OfficeScan обладает полноценным встроенным брандмауэром, позволяющим эффективно разрешать или запрещать определенный трафик. Если в вашей сети еще нет firewall, то эту обязанность запросто можно возложить на OfficeScan.
Компания TrendMicro
TrendMicro, основанная в 1988 году, сегодня является одной из лидирующих компаний, специализирующихся на разработке антивирусного программного обеспечения для разных категорий потребителей. Помимо традиционных платных пакетов для бизнеса и домашнего пользования, компания зачастую выпускает бесплатные и основанные на браузерах сетевые сканеры HouseCall. Одним из значимых достижений TrendMicro - создание глобального центра (TrendLabs), цель которого исследование и оперативное информирование общественности о сетевых угрозах. Во многих странах имеются филиалы лаборатории: Япония, Китай, Франция, США и т.д. В России представительство компании начало работу с 1998 года. С 2004 года, антивирусные решения TrendMicro можно наблюдать в бесплатной почте Hotmail (http://hotmail.com), выполняющие непрерывное сканирование вложений. Как показала практика, со своими обязанностями антивирус справляется на отлично, поэтому hotmail сегодня – один из лучших бесплатных почтовых служб.
Рисунок 7 (Общая информация)
35
vr-online.ru
Качество антивирусной
защиты
Проверить качество работы антивируса – задача не из легких. Точнее сложного ничего нет, но нельзя со стопроцентной уверенностью сказать, что результаты тестирования будут объективными и в реальной ситуации все будет именно так. Тем менее, при подготовке данного обзора мы подготовил архив с набором из примерно 50 различных вирусов, и попробовали просканировать все это добро антивирусным сканером. Этот тест антивирус прошел на «ура». Были обнаружены абсолютно все вирусы. Мы не стали ограничиваться тестированием лишь антивирусного сканера, а подвергли тесту также эвристик. На этом тесте антивирус показал себя также хорошо. «Хорошо» потому, что при попытке запуска 5 из 50 вирусов, он не смог их точно определить, но все равно заблокировал, почуяв неладное.
36
июнь 2009 5. Установка запретов (outbreak prevention). При заражении определенного компьютера новой разновидностью вируса необходимо предотвратить его массовое распространение по общим ресурсам в сети. Более того, в последнее время вирусы используют уязвимости сервисов операционной системы, поэтому необходимо полностью устранить возможность обращения зараженного ПК к уязвимым сервисам других компьютеров локальной сети. Для этой цели и создан этот инструмент. 6. Обновление вирусных баз. Этот механизм типичен для всех антивирусов, за исключением того, что администратору предлагается возможность выбора компонентов обновления. Например, можно обновлять лишь антивирусные базы, а сам антивирус (ядро, библиотеки) оставить без обновлений. 7. Разделенное сканирование. В клиентской части OfficeScan пользователю предоставляется право выбора: сканирование системы на вирусы, либо только на spyware. 8. Поддержка plug-in. Расширить функционал антивирусного пакета можно с помощью дополнительных модулей, разработанных сторонними компаниями. 9. Web Reputation. Инструмент позволяет ввести ограничения на просмотр web-страниц, путем определения списка разрешенных адресов. Итоги: Многие из возможностей реализованные, в антивирусе от TrendMicro совсем не типичны для подобного рода продуктов. Например, встроенный Firewall дает дополнительный уровень защиты корпоративной сети от угроз. Гибкая настройка правил для фильтрации трафика позволяют без опаски использовать его в небольших сетях. Разработчики также постарались и сделали акцент на предоставление и архивирование информации для
анализа происходящих событий. Благодаря этой возможности очень легко выявить эпицентр заражения при вирусных эпидемиях и обнаружить, откуда «растут ноги».
Заключение Антивирусный пакет от TrendMicro в целом можно охарактеризовать как качественное и продвинутое решение для защиты корпоративной среды от вирусов, червей, троянов, интернет-угроз и т.д. Простота интеграции и использования, богатые возможности и расширяемость, удобный web-интерфейс выделяют этот продукт среди подобных решений. OfficeScan помимо своей основной задачи может также работать и как брандмауэр, позволяя системному администратору не заморачиваться с выбором и настройкой стороннего продукта, а руководителю сэкономить нехилую сумму денежных средств на лицензирование. Кроме того, OfficeScan, по праву можно считать приложением из ряда «один раз настроил и забыл». Другие продукты TrendMicro
Линейка продуктов TrendMicro для обеспечения безопасности не ограничивается лишь одним антивирусом. Компания также предлагает другие интересные решения, среди которых: TrendMicro ScanMail Suite for MS Exchange – решение, признанное обеспечить фильтрацию почтового трафика для серверов, построенных на базе MS Exchange. Помимо зашиты от вирусов, продукт позволяет эффективно бороться со спамом (требуется дополнительный модуль). TrendMicro Message Archiver – средство для надежного хранения архива электронной почты, с возможностью обеспечения быстрого поиска сообщений. TrendMicro Email Reputation Service – продукт для защиты почтового сервера от спама. Программа позволяет «разобраться» с ненужной корреспонденцией до попадания на почтовый сервер. TrendMicro ServerProtect for FileServer – решение для обеспечение защиты от вирусов файловых серверов, развернутых на платформах Windows и Linux. TrendMicro InterScan WebProtect for ISA – антивирусная защита для интернетшлюзов на базе Microsoft ISA Server.
vr-online.ru
июнь 2009
Zend Framework: часть 2
37
vr-online.ru
июнь 2009 Анатолий Скорняков (fritooll@gmail.com)
Zend Framework: Часть вторая После прочтения первой части, ты научился создавать простенькие сайты на базе Zend Framework. Но для полноценного ВЕБ приложения нам не обходимо хранить информацию. В этой части мы будем учиться работать с БД средствами ZF.
Zend_Db
нашей папочке ./application/configs. И запишем в конфиг следующее:
Zend_Db_Adapter предоставляет нам возможность работать с различными СУРБД.
Для работы с драйверами PDO: IBM DB2 и Informix Dynamic Server (IDS), с использованием расширения pdo_ibm MySQL, с использованием расширения pdo_mysql Microsoft SQL Server, с использованием расширения pdo_mssql Oracle, с использованием расширения pdo_oci PostgreSQL, с использованием расширения pdo_pgsql SQLite, с использованием расширения pdo_sqlite Для работы с расширениями PHP для работы с СУРБД: MySQL, с использованием расширения mysqli Oracle, с использованием расширения oci8 IBM DB2, с использованием расширения ibm_db2 Firebird/Interbase, с использованием расширения php_interbase
Я думаю, что с содержимое не вызовет у тебя затруднений. Для парсинга конфига мы будем использовать Zend_Config_Ini. Инициализировать коннект к БД нужно перед диспетчеризацией. Добавим в файл index.php код, указанный во врезке. Настройки сделали, но коннект к БД произойдет только после первого запроса. Если ты не хочешь получать результат в виде объекта, то вот для тебя описание других стилей получение результата: Zend_Db::FETCH_ASSOC: возвращает данные в массиве ассоциативных массивов. Ключами массива являются имена столбцов в виде строк. Это режим извлечения, используемый по умолчанию в классах Zend_Db_Adapter.
В данной статье мы будем использовать драйвер PDO для работы с MySQL. Думаю, что пора приступать к практики. Нам не обходимо где то хранить конфиги коннекта к БД, для этого создадим файлик application.ini в
Zend_Db::FETCH_NUM: возвращает данные в массиве массивов. Массив индексируется целочисленными значениями в соответствии с позицией данного поля в списке выборки запроса.
38
vr-online.ru
июнь 2009
Zend_Db::FETCH_BOTH: возвращает данные в массиве массивов. Ключами массива являются как строки, так и целочисленные значения. Число элементов в массиве получается в два раза больше, чем если бы использовались FETCH_ ASSOC или FETCH_NUM. Zend_Db::FETCH_COLUMN: возвращает данные в массиве значений. Значение в каждом массиве является значением, возвращенным из одного столбца результата выборки. По умолчанию это первый столбец, индексированный нулем. Zend_Db::FETCH_OBJ: возвращает данные в массиве объектов. По умолчанию используется встроенный в PHP класс stdClass. Столбцы результата выборки доступны в качестве открытых свойств этого объекта. Тебе наверное интересно для чего мы записали адаптер в реестр? А для того, что бы в любом контролере или модели получить доступ к нашему созданному адаптеру. Для извлечение из реестра используем статистический метод Zend_Registry::get():
Ну, что попробуем выполнить запросы!
$result содержит количество пользователей. С выборкой вроде все. Но нам надо еще добавлять и изменять данные в БД. Добавление записей
Для добавление существует метод insert объекта Zend_Db.
Методу insert необходимо передать два параметра: имя таблицы, и ассоциативный массив с данными. Метод lastInsertId возвратит значение автоинкрементного первичного поля таблицы. Обновление записей
Что бы обновить данные не обходимо вызвать метод update и передать три параметра. В переменной $result будет содержаться массив объектов. Извлечение единственного столбца из результатов выборки: Первый параметр это имя таблицы, второй — ассоциативный массив с данными, третий не обязательный параметр — условие, если опустить третий параметр то все записи будут обновлены. В качестве условия может быть передан массив с условиями.
Содержит только name Извлечение единственной результата выборки:
строки
из
Удаление записей
Тут я думаю все понятно. Первый аргумент $result — это единственный объект($result>name) Извлечение единственного значение:
— имя таблицы, второй условие. Так же условий может быть не сколько, переданным в качестве массива. Если опустишь второй аргумент то все записи таблицы будут удалены.
39
vr-online.ru
Код 1
Код 2
Код 3
Код 4
40
июнь 2009
vr-online.ru
июнь 2009
Zend_Db_Select
Zend_Db_Select — это помощник составление SELECT запросов. С помощью методов класса возможно составление запроса по частям. Построение запросов
На пример нам надо выбрать запись новости из таблицы вот таким запросом: Код 4. но при помощи Zend_Db_Select:
Теперь выберем все записи новостей, но разбив поле date на три стобца — year, month, day:
SQL имеет несколько типов объединений. Ниже приведен список методов для поддержки различных типов объединений в Zend_Db_ Select:
INNER JOIN, методы join(table, join, [columns]) и joinInner(table, join, [columns]). LEFT JOIN, метод joinLeft(table, condition, [columns]). RIGHT JOIN, метод joinRight(table, condition, [columns]). FULL JOIN, метод joinFull(table, condition, [columns]). CROSS JOIN, метод joinCross(table, [columns]). NATURAL JOIN, метод joinNatural(table, [columns]). Так же у Zend_Db_Select есть методы:
Код 1.
orWhere() — Такой же как и where() только добавляется логическое OR. group() — Этому методу можно передать одно имя столбца строкой, или массив строк имен
Выберем все новости отсортированные по дате:
столбцов. limit()
—
Первым
параметром
передает
количество строк желаемых выбрать, вторым количество желаемых пропустить. Код 2. Методу order можно передать массив, для сортировки по не скольким полям (Код 3). Щас попробуем заджойнить таблицу авторов новостей. Нашь скульный запрос, который нужно построить с помощью Zend_Db_Select:
Итог На этом очередной урок по работе с ZF завершен. Переваривай полученные знания, а в следующем номере мы попытаемся продолжить наши эксперименты. Пока!
41
vr-online.ru
42
июнь 2009
vr-online.ru
июнь 2009 Антон Козлов aka Jimmy Jonezz (jimmyjonezz@bk.ru, http:// Liveofpc.ru)
Фантазия Когда за окном царствует осень и начинается сезон дождей, единственное, что меня спасает, это чашка хорошего зеленого чая и несколько вкусных крекеров, от которых я схожу сума. В это сумрачное время, я люблю немного погрустить - мысли сами собой охватывают меня, сжимая в плотное кольцо, не давая возможности выбраться из их крепких объятий. Ни хочется не дышать, не видеть, не двигаться - тело стремиться впасть в анабиоз. В голове проскакивают формы, образы, слова, обрывки фраз и из этого огромного мусора, я выстраиваю «фильм», который люблю просматривать снова и снова... Моя жизнь резко изменилась, после того, как я встретил «ее». С виду застенчивая, хрупкая, милая девушка, но где-то в глубине души я четко ощутил, как в ней сосредоточен огромный потенциал неведомой мне силы. Мир вокруг закружился, завертелся и засиял новыми красками, более насыщенными и яркими. В тот момент я мало что понимал и находился в состоянии полной прострации - словно уставший мотылек, который, завидев свет, летит к нему, даже если это свет от автомобильных фар. Подсознательно я пытался ее «прощупать», но всегда натыкался на неведомую стену, которая как огромный валун лежал между нами, и который я не смог сдвинуть. Для меня она оставалась недоступной, словно маленькая звездочка в ночном небе, которой можно любоваться, но нельзя дотянуться. Тогда увидев ее, я понял, что любовь не просто постучалась ко мне в дом, а щедро одарила меня своим вниманием, и это было чертовски приятно. Я не был обделен женским вниманием — постоянные мимолетные встречи, которые ничем особо мне не запоминались, вспыхивали так же неожиданно, как и затухали. Видимо проблема была во мне, я не мог, да и не хотел удержать любовь. По своей натуре я был инертным к какимлибо отношениям, и никогда не шел навстречу сам, лишь только изредка я делал попытки, что действительно способен любить. Я считал себя занятым человеком, а «игра» в любовь лишь отнимает время и силы. А время я ценил, по крайней мере, я так считал. Даже на работе, когда другие «развлекали» себя или делали вид, что действительно заняты, я с головой был погружен в свои мысли и занимался только работой. Изредка я встречался с друзьями, знакомыми. Да, мы весело проводили время, но это мне казалось как-то посредственно и не по-настоящему. Лишь мои естественные потребности «возвращали» меня в этот мир. Порой у меня возникало ощущение, что я лишь
осколок, который отломался от чего-то огромного и важного и, потерялся между мирами находясь в полном вакууме. Мне казалось, что я переживал свою жизнь несколько раз — не то чтобы меня преследовало ощущение дежавю, просто вокруг все было не интересным - искусственные отношения, бессмысленные разговоры, складывалось ощущение, что находишься на огромной помойке, а вокруг роботы... роботы... роботы... И вот, очередной ничем не выделяющийся рабочий день, я по обыкновению в куче статей, каждой из которых нужно уделить внимание. Надо было все закончить во время, а начальство в лице Николая Геннадьевича, любило, когда поставленные планы завершаются в установленный срок. Редко я его видел, чтобы он был доволен подчиненными, один его взгляд мог сказать многое. Этот человек был действительно на своем месте — когда нужно мог похвалить, без причины не ругал, но уж если ты провинился, то считай неделя укоров, кривых взглядов и разъяснительных бесед тебе обеспечена. Но также был человек, который хорошо уживался с Николаем - его заместитель, его звали Виктор, он излучал доброту и всегда был готов прийти на помощь. Многие к нему обращались за советом, со своими личными вопросами и проблемами, нередко он служил связующим звеном между подчиненными и Николаем Геннадьевичем. График у нас был не напряженный, все успевали сдавать свои работы вовремя, но у меня на этой неделе был явно завал, который я, кряхтя и сопев, разбирал. И тут словно, маленьким молоточком, кто-то постучался по моей голове, вернее со мной пытались говорить, но слова доносились до меня диким и ужасающим эхом, заканчиваясь оглушающим грохотом, в моей голове. Невольно мне пришлось поднять голову, с некоторым любопытством я посмотрел на потревожившую меня персону. Довольно молодая девушка, чтото пыталась от меня добиться, жестикулируя
43
vr-online.ru руками. Мне показалось, что она просто шевелит губами - мозг мой никак не мог воспринять ее слов. «Вернувшись» в этот мир, я уловил лишь последние обрывки ее фраз: - … как здесь у вас уютно. Разрешите представиться, я Валика. - Что за идиотское имя, - промелькнуло в голове. - «Очень приятно. Я Андрей. Андрей Владимирович» - автоматически выдал я, делая вид, что мне действительно было приятно ее видеть; и также автоматически уткнулся в свои бумаги. Она, постояв немного, невольно хихикнула и удалилась. Обычное «привет-пока» и ничего более... В это момент, словно неведомая магическая сила заставила меня повернуть голову в сторону грациозно уходящей девушки. Я застыл, изучая очертания ее образа. Казалось, она шла вечность, не спеша, плавно и спокойно зажав у груди кипу бумаг. - Как, такая хрупкая и изящная девушка, могла нести такой тяжелый груз!? - подумал я. Резко встав и подбежав к ней, я предложил свою помощь, чего от себя я никак не мог ожидать. - Что вы, мне совсем не тяжело, - ответила она, тут же вручив мне кипу бумаг. Как я и подозревал, помощь ей была явно нужна, потому как я четко ощутил вес этих бумаг. Последующий остаток рабочего времени я провел с ней, забыв про свои дела, про начальника, про «завал». Я словно окунулся в океан обсуждений — мы говорили, спорили, шутили, смеялись. С каждым словом, произнесенным ей, я понимал, что эта та девушка, о которой я подсознательно мечтал всю свою жизнь. Я открыл себя заново, возможно мир открылся передо мной с иной стороны. Время, проведенное с ней проносилось быстро, а столько всего хотелось узнать о ней, послушать ее голос, наслаждаться ее загадочными и сладостными очертаниями ее лица, но, вспомнив о своих неотложных делах и пустующем рабочем месте, и о том, что этим я могу разозлить Николая Геннадьевича, я был вынужден удалиться обратно к себе в нору, в которой меня ждали мои бумаги... Ее крашеные черные волосы выглядели очень привлекательно, словно мелкой рябью
44
июнь 2009 они скатывались на плечи и кончики волос медленно развивались, словно находились под действием легкого ветерка. Она напомнила мне миниатюрную куклу, которая, казалось, от любого легкого прикосновения способна рассыпаться в одночасье. Настолько ярко вырисовывалась аналогия, между ними, что, мне казалось, я единственный, кто может сохранить ее в первозданном виде. Все последующие дни напоминали «сказкураскраску», в которой мы оба были художниками, не замечая никого вокруг я постоянно «рисовал» ее образ, и не мог насладиться им в полной мере, я ловил каждое ее слово, каждый взгляд ее. Словно зажженный напалм она способствовала тому взрыву, что раздирал меня на куски. Ее голос, словно наркотическая мелодия затуманивала мой разум. После работы мы часто вместе гуляли, и было забавно наблюдать за ней, за ее поведением, за ее выразительными жестами, речь ее была мягкой и удивительно приятной. Мне казалось, мы были чем-то единым, но по отдельности совершенно противоположные личности: она шутила, смеялась, вела себя открыто и непринужденно, чего нельзя было сказать обо мне - мысли гонялись в моей голове, словно это были те гонщики, которых часто можно увидеть в «Формуле 1». Сцены сменяли друг друга с такой периодичностью, что я не успевал за ними, и мне приходилось «перематывать» их снова и снова. Но с ней я чувствовал себя настолько хорошо, что на душе словно наступала весна, внутри меня чтото шевелилось и просилось наружу, я излучал хорошее настроение и радость, и готов был делиться ими со всеми. -//Наш офис был очень обширным и хорошо просматривался со всех сторон – было видно, кто на рабочем месте, а кто задерживается или опаздывает. Это, прежде всего, было удобно начальству. Для меня уже было привычным делать небольшой осмотр, перед предстоящей работой, своего рода «ритуал», а с появлением Валики, этот ритуал принимал для меня более важное значение, чем раньше. Я наполнялся тревогой – вот уже несколько дней, Валика не появлялась в офисе. Непонятное
vr-online.ru чувство пустоты, казалось сгущалось надо мной, от которой мне было невыносимо трудно дышать. Самое интересное, что при всех наших встречах, я не знал номера ее телефона, не знал, где она живет, не знал, были ли у нее подруги в офисе или за его пределами. Я чувствовал себя полностью опустошенным, ко мне вернулись все те чувства, которые я так беспощадно отгонял от себя. Разум начал судорожно прокручивать возможные ситуации, ее отсутствия, и с каждым «фильмом» мне приходилось все сложней и сложней - одна картина по содержанию была устрашающе другой. Я корил себя за то, что позволил себе глупость не спросить номера ее телефона, да я и не был уверен, что он у нее вообще был. Не долго впадая в размышления, я прямиком направился, к своему непосредственному начальнику, чтобы узнать, почему Валика уже несколько дней подряд отсутствует. - Ты что надо мной издеваешься!? Какая Валика!? - резко вспылил Николай Геннадиевич, - У тебя, что, полно свободного времени, чтобы задавать мне дурацкие вопросы!? Что за бред ты несешь, все мои подчиненные на месте и работают, а вот один еще вздумал издеваться надо мной! Не надейся, отпуска тебе не видать, пока не сдашь мне свой отчет по полной программе. - Ну... она же у нас... работает, более месяца... продолжал я. - Никто у нас с таким идиотским именем не работал и не работает! - Николай Геннадиевич, она у нас новенькая... – не дав мне закончить начатую фразу, он показал рукой на дверь, при этом «сверлив» меня своими раскаленными, как маленькие угольки, глазами. Полностью сдавленный и уничтоженный, как сорняк, я вышел из кабинета, десятки глаз устремились в мою сторону. Действительно, не стоило так сразу врываться к нему, я же просто мог опросить сотрудников, кто-то же возможно и
июнь 2009 кроме меня общался с ней. - Что значит, издеваешься... что происходит... не работает... - проносились обрывки фраз в голове - Должно быть, он просто был не в настроении, а своим присутствием и расспросами, я окончательно вывел его из себя. Плюхнувшись на свой стул, я начал по кусочкам разбирать ситуацию с самого начала. Мой разум категорически отказывался верить в то, что Валика, это лишь персонаж моей фантазии, вымысел, пыль, тень игры, моего сознания. Запутавшись в этом «разбирательстве», я не заметил, как Виктор подошел ко мне. - Что ты натворил? Кому как не тебе знать, отвратительный характер Николая? Что произошло? – спросил Виктор. - Я лишь хотел узнать… почему наша новая сотрудница отсутствует уже несколько дней, и никто даже интересуется где она, что с ней? – пробормотал я. - Какая сотрудница? О ком ты говоришь? Вот уже полтора года мы никого не принимали на работу. Слушай, тебе стоит отдохнуть, действительно видок у тебя еще тот. Вообщем, я поговорю с Николаем, а ты можешь готовиться к отпуску… – похлопав дружески по плечу, Виктор удалился. Я находился в оцепенении, все мое существо было словно залито, горячим свинцом, мне казалось, что я сошел с ума, в голове не укладывалось то, что человек, с которым я радовался, с которым общался, которого любил, на самом деле не существует. Мои попытки, привести свой разум в порядок, проваливались с треском. Валика - это плод моего воображения, мимолетная фантазия, продукт игры моего разума. Разбирая ситуацию, я понимал, что окончательно сошел с ума, это не просто признание самому себе, это действительно была правда. Мир грез, в котором я находился, которому я отдавался весь, сыграл со мной злую шутку. Злую, но безумно приятную…
45
vr-online.ru
июнь 2009 zahod5277@vr-online.ru (www.mega-load.netau.net (в разработке))
Photoshop для “чайников” Привет всем! По многочисленным просьбам друзей я решил написать несколько статей на тему «Photoshop для чайников» и решил поделится с вами этим материалом, так как даже у опытных пользователей иногда возникает что-то вроде «Боязни Photoshop'a и других сложных программ». Но не стоит боятся, это всего лишь кусок программного кода, он не кусается, не форматирует диск C:/ если не правильно нарисовать солнце, а просто продолжит работу дальше. Всё зависит от вас, и если вы по настоящему хотите рисовать картинки, или надо срочно исправить свой фэйс и послать девчонкам в асю (ну у кого фэйс кривой) то включайте фотошоп и вперед! Своими уроками я лишь направлю вас в нужное русло, а более сложные приемы читайте в статьях Soffrick’a. Эти уроки рассчитаны на людей АБСОЛЮТНО не знакомых с фотошопом, и поэтому если вы умеете красиво рисовать в фотошопе, то уверен что вы не найдете для себя ничего нового, и можете листать дальше. Не уверенным в себе остается только пожелать удачи и внимательно читать текст, идущий дальше. P.S Это моя первая работа, рассчитанная на публику, и поэтому если что-то не понятно то прошу стучать в асю (396683193) или писать письма на zahod5277@vr-online.ru а также прошу сильно не ругать (первый блин всегда комом). Ну все, начнем осваивать Adobe Photoshop!!!
46
vr-online.ru
Adobe Photoshop - это графический редактор с миллионом возможностей С помощью этой программы можно редактировать уже созданные изображения или фотографии и создавать новые. В этом уроке мы рассмотрим все компоненты интерфейса Adobe Photoshop и нарисуем скромненькую картинку. Запустите графический редактор. У меня Adobe Photoshop CS3 Extended, поэтому я буду описывать именно эту версию программы, но все Photoshop достаточно похожи и особой разницы в их интерфейсе нет. Рассмотрим компоненты интерфейса: «Файл» - меню, присутствующее в каждом редакторе, будь это хоть «Блокнот» или «Adobe Photoshop». В этом меню отображаются основные функции для работы с файлами, то есть - «Открыть», «Сохранить», «Печать» и т.д «Редактирование» - в данном меню представлены базовые функции для работы с изображениями, а именно - «Повторить действие», «Отменить действие», «Копировать», «Вставить». Также в этом меню вы найдете установки кистей и узоров, а также опции самого «Adobe Photoshop». «Изображение» - одно их самых интересных меню, здесь можно настроить цветовой режим изображения (RGB, CMYK, LAB, Градации серого), откорректировать цвет и тон изображения, изменить размер изображения, повернуть его или обрезать. «Слой» - Этим меню мы будем пользоваться постоянно, здесь отображены функции для работы со слоями (а Adobe Photoshop является редактором растровой графики, то есть все изменения выполняются посредством комбинаций слоев). В Adobe Photoshop CS3 впервые появилась опция импорта слоя из 3D файла, то есть если у вас есть 3ds Max или Maya, вы, создав в них 3D файл, можете импортировать этот файл для дальнейшего редактирования изображения. Работу со слоями мы расмотрим уже в этом уроке. «Выделение» — инструменты, служащие для выделения областей изображения по какимлибо признакам. «Фильтр» - самое интересное меню, при помощи
июнь 2009 фильтров можно с нулевыми знаниями работы с Adobe Photoshop изменить любую картинку до неузнаваемости. Но часто использовать фильтры я вам не советую, особенно фильтры размытия и имитации. Со следующими элементами я знакомить вас не буду, так они особо не нужны в нашей работе. Перейдем к панели инструментов. Панель инструментов - это панель, по умолчанию расположенная в левой боковой части программы, здесь расположены инструменты для работы с изображениями. Расмотрим основные из них: «Прямоугольная область» - если на этом инструменте зажать левую кнопку нашего Микки Мауса, появится выпадающее меню, в котором находятся инструменты, служащие для выделения областей изображения. К их помощи мы будем часто прибегать. «Лассо» - лассо также служит для выделения областей изображения, только в этом случае выделение области полностью находится под вашим контролем, то есть можно выделять любые участки произвольной формы. Лассо мы также будем часто использовать. «Волшебная палочка» - инструмент служит для выделения областей изображения по цвету. Инструментами «Рамка» и «Расскройка» я не пользуюсь, поэтому идем дальше. «Точечная
восстанавливающая
кисть»
- если так же как в случае с «Прямоугольной областью выделения» зажмем на этом инструменте левую кнопку мыши, мы снова увидим выпадающее меню, в котором находятся инструменты, служащие для исправления дефектов изображения. «Кисть» - просто кисть, такая же присутствует в любом другом графическом редакторе и служит для рисования на изображении какихлибо линий, точек, кругляшков. «Штамп» - Служит для клонирования областей изображения. «Архивная кисть» Мой любимый инструмент, служит для удаления ненужных участков картинки, которую мы наложили на редактируемое изображение. «Ластик» - такой ластик можно найти в Paint, служит для стирания областей изображения, расширенные функции ластика мы рассмотрим в других уроках. «Градиент» или «Заливка» - служат для закраски всего или выбранного участка изображения градиентом или однородным
47
vr-online.ru цветом.
«Размытие» - служит для размазывания,
как вы уже смогли догадаться. Можно просто повозюкать на картинке. «Осветлитель» или «Затемнитель» - служат для осветления и для затемнения соответственно участков изображения. «Перо» я тоже почему-то не использую, едем дальше. «Текст» - при помощи этого инструмента можно создавать горизонтальный или вертикальный текст. Особые приемы работы с текстом мы рассмотрим в следующих уроках. «Прямоугольник», «Линия», «Эллипс» инструменты для создания геометрических и не очень геометрических фигур. Ну вот мы рассмотрели основные компоненты интерфейса графического пакета Adobe Photoshop и можем приступить к практике. Создайте новый файл, выполнив команду ФАЙЛ - НОВЫЙ, размеры указываем 1024*768 пикселей или пропорциональные им. Теперь выполните команду СЛОЙ - НОВЫЙ СЛОЙ - СЛОЙ... или просто нажмите комбинацию клавиш Control+Shift+N, таким образом вы создадите новый слой (помните о чем я говорил несколько строк назад? В Adobe Photoshop вся работа основана на слоях). Залейте новый слой синим цветом, выбрав на панели инструментов инструмент «Заливка» и нажав на квадратике под инструментом «Масштаб» выберите
Работа с текстом Сегодня мы рассмотрим основные приемы создания красивых и необычных надписей совсем обычными способами. Запускаем Adobe Photoshop и создаем новый файл произвольного размера (но не ниже 640*480). Выполним заливку фона черным цветом. Теперь на панели инструментов выберем инструмент «Горизонтальный текст». Чтобы сильно не выпендриватся возьмем за основу обычный шрифт Arial размером 72пт красного цвета. Пишем на изображении свой текст, в моем случае это «MAZAFAKA STUDIO». Теперь на верхней панели (ну не знаю я как ее правильно обозвать) выберем меню «Слой», перед вами появится подменю , в котором надо выбрать «Стиль слоя» а далее выбрать «Параметры наложения».
48
июнь 2009 синий цвет. Теперь снова создайте новый слой комбинацией клавиш Control+Shift+N и залейте его уже градиентом, градиент выберите любой (там под меню «Редактирование» есть цветная кнопочка выбора градиента) и растяните его по диагонали из одного конца изображения в другой. Если вы допустили ошибку во время рисования (ну там криво получилось или не в ту сторону), то воспользовавшись комбинацией клавиш Control+Alt+Z или выбрав в меню «Редактирование» действие «Шаг назад» можно устранить ошибку и нарисовать заново. Если вы пользуетесь Adobe Photoshop CS 3, то правой боковой части программы есть такое много вкладочное окно (в остальных версиях хоть убейте не помню есть оно или нет!) там найдите вкладку «СЛОИ» и выберите ее. В этой вкладке вы обнаружите список с созданными нами слоями. Выберите слой 2 и в поле «Непрозрачность» установите значение от 20% до 50%. После проделанных вами манипуляций вы заметите, что градиент стал прозрачным и находящийся под градиентом синий цвет имеет теперь какой-то интересный оттенок. Вот и все что я хотел рассказать вам в первом уроке по обучению работе в популярном графическом редакторе Adobe Photoshop. К данному тексту я приложил изображние, иллюстрирующее всю проделанную нами работу (в начале материала). Теперь самое интересное! Перед вами откроется окно, состоящее из двух частей: Первая часть это список с флажками, флажки представляют опции наложения, отмечая флажок вы тем самым выбираете той или иной параметр нашего слоя. Вторая часть представляет собой опции самих флажков, то есть у наших параметров тоже есть свои параметры! О как все запутано! Перейдем к редактированию слоя нашей надписи: 1. Отмечаем флажок «Внутренняя тень». В настройках этого параметра выберем желтый цвет, и угол в 53 градуса. Параметры смещения тоже изменим - установим значение в 18 пикселей. Остальное трогать не будем. Идем дальше! 2. Отмечаем флажок «Внешнее свечение», непрозрачность ставим 67% а шум 25%. Цвет возьмите любой, я почему-то выбрал светло - светло синий (не путать с голубым!).
vr-online.ru Остальное тоже можно не тревожить, переходим к следующему шагу. 3. Отмечаем флажки «Тиснение» и «Контур». В «Тиснении» устанавливаем следующее: Стиль - «Тиснение» Метод - «Плавный» Глубина - 195% Направление - «Вверх» Размер - 10 пикселей Угол - 53 градуса Высота - 64 градуса Поставим галочку напротив «Глобальное освещение» Контур глянца выберем «Полукруг» Остальное не трогаем.
июнь 2009 Настройки параметра «Контур» оставляем без изменений. 4. Последний штрих - наложим сверху полупрозрачный градиент на текст. Для этого надо отметить флажок напротив «Наложение градиента». В настройках изменим только одну опцию - непрозрачность. Установим для нее значение в 50%. Вот и все! С помощью таких несложных манипуляций мы получили симпатишный текст. Мы изучили основные приемы создания интересных надписей, и поэтому я хочу добавить одно - «Экспериментируйте!» P.S Пример такого текста лежит в архиве вместе с этим уроком.
49
vr-online.ru
июнь 2009
Простейший фотомонтаж Привет всем! Сегодня мы выполним самый простой фотомонтаж (коллаж) при помощи двух изображений, лассо, волшебной палочки и архивной кисти. Let's Go!!! Запускаем Adobe Photoshop. При помощи команды ФАЙЛ > ОТКРЫТЬ открываем изображения, лежащие в архиве с этим уроком. Выберем на панели инструментов инструмент «Лассо». Выполним обводку нашей мадам (Наташей звать) как на рисунке 1.
Рисунок 2.
Рисунок 1. При помощи комбинаций клавиш CTRL+C или выбрав на верхней панели «Редактирование» и далее щелкнув на пунктике «Скопировать» (рисунок 2) мы скопируем нашу дамочку в буфер обмена для вставки во второе изображение. Далее при помощи комбинаций клавиш CTRL+V или выбрав на верхней панели «Редактирование» и далее щелкнув на пунктике «Вставить» на втором изображении мы вставим мадам в кремль как на рисунке 3. Но вот нонсенс, Наташа-то больше кремля в раз 5, да и стоит она посередине изображения а не на краю! Чтобы исправить это, мы воспользуемся комбинацией клавиш CTRL+T или на верхней панели «Редактирование», и далее щелкнув на пунктике «Свободное трансформирование” мы уменьшим слой с нашей снайпершой и подвинем его в бок (рисунок 4).
50
Рисунок 3.
Рисунок 4. Но у нас тут ненужная белая область! Ее
vr-online.ru
июнь 2009
тоже надо как-то убрать! Для этого выберем инструмент «Волшебная палочка» и щелкнем на белом цвете. Заметили, что весь белый цвет на слое выделился? Теперь просто нажимаем клавишу DELETE и радуемся! После удаления белого цвета остались небольшие серые области как на рисунке 5. Их мы убираем также при помощи волшебной палочки и клавиши DELETE.
Рисунок 6.
Рисунок 5. Если область вокруг редактируемого изображения не однородна, то есть состоит из нескольких цветов, можно использовать инструмент «Архивная кисть» {рисунок 6,7} , если у вас случился случай как на рисунке 7, то воспользовавшись комбинаций клавиш CTRL+ALT+Z можно отменить последнее действие.
Рисунок 7. Вот в принципе и все что я хотел рассказать в этом уроке. До встречи!
Часть четвёртая Привет! Сегодня мы будем исправлять твой фэйс, чтобы было не стыдно послать девчонкам по аське! :-) ! Но если у тебя нормальный фэйс или ты по аське с девчонками не знакомишься то можешь пропустить этот урок, хотя лишним он не будет. Итак,
запускай
тренировки
открой
Adobe файл
Для
поэтому, чтобы помочь Геральту познакомится
названием
с девчонками, давай сделаем ему дешевую
Photoshop. под
«Оригинал», лежащий в архиве с этим уроком. Если ты игроман, то должен узнать в этом лице Геральта, главного героя игры «The Witcher», а если нет, то ничего страшного, теперь вы знакомы! :-) Личико у него не сказать что красивое,
пластическую операцию. Что будем править сначала? Давай немножко уменьшим нос, шрамы оставим на потом. Уменьшение
—
это
прежде
всего
трансформация. Выбирай инструмент «Лассо» и выделяй нос как на рисунке 1:
51
vr-online.ru
июнь 2009
Рисунок 3. Рисунок 1. Выделил? Молодец, идем дальше. Выполни следующее: 1.Комбинацию клавиш CTRL+T или на верхней панели выбери пункт «Редактирование», а в нем опцию «Свободное трансформирование». Щелкни в середине выделенной области правой кнопкой мыши. Появится выпадающее меню. Выбери там опцию «Деформация». Область покроется сеткой как на рисунке 2.
Но вот что там за синяя область? У вас она другого цвета, скорее всего белого. Эту область необходими убрать, чтобы было красиво. Для этого надо познакомить тебя с тремя интересными инструментами: «Точечная восстанавливающая кисть», «Восстанавливающая кисть» и «Штамп». Эти инструменты служат для клонирования областей изображения. Но первые два делают это более аккуратно, ориентируясь больше по цвету, а «Штамп» клонирует облать, которую указал ты. Ничего не понял? Я тоже! Давай рассмотрим на деле. Выбери инструмент «Штамп». Теперь приблизь нос комбинаций клавиш CTRL + (если надо уменьшить жми CTRL - ) и наведи мышь на светлую часть носа , зажми ALT и щелкни левой кнопкой мыши, отпусти ALT и мышь. Этим действием ты указал клонируемую область. Теперь зажми левую кнопу мыши и проведи по синей (белой, желтой, красной и т.д) области. ОП! Она пропала как на рисунке 4.
Рисунок 2. Этим самым мы включили деформацию выбраной области изображения. Немножко покрути мышой влево-вправо.Нос-то теперь крутится как нам того хочется! Но нам нужно его уменьшить! Зажимай мышу на краю носа (ну где ноздри кончаются :-) ) и веди в центр. Проделай такие же манипуляции с другими частями носа Геральта (левая часть, правая часть и низ носа), чтобы получилось как на рисунке 3.
52
Рисунок 4.
vr-online.ru
июнь 2009
Классно, да? Но не все так круто, ведь ты наверняка столкнешься с проблемой как на рисунке 5. Проблема выделена красным кружком.
Рисунок 5. Надо убрать это безобразие, иначе у нас Геральт будет с какими-то волдырями возле носа. Вот для этого и служат «Восстанавливающая кисть» и «Точечная восстанавливающая кисть». Выбери последний инструмент. Уменьши кисть до 11-15 пикселей. И кликни пару раз на проблеме. Проблема решена! Вот такими вот действиями, никуда не торопясь, аккатно покликай сначала «Штампом», а потом
«Точечной восстанавливающей кистью» по всей синей (белой, желтой, красной и т.д) области. Нос готов! Остались шрамы. Я думаю что ты уже догадался как это сделать. Конечно же «Точечная восстанавливающая кисть»! Покликай ею по шрамам и все! Смотрим рисунок 6.
Рисунок 6. Ну прям Брэд Питт польского разлива! Мы рассмотрели основные принципы исправления фотографий на предмет кривостей и шрамостей. Теперь ты, развив идею, можешь сделать себя неузнаваемым! Но если у тебя глаза с вертикальными зрачками то я уже ни чем не могу помочь! Носи очки! P.S Полноразмерные иллюстрации к уроку ты можешь найти в архиве, он где — то рядом!
53
vr-online.ru
54
июнь 2009
vr-online.ru
июнь 2009 ZeroXor (zeroxor@yandex.ru)
Защита от SQL-инъекциии с помощью .htaccess SQL-инъекция, SQL-инъекция!!! Все уши уже прожужжали с этими SQL-инъекциями. Да, это действительно далеко не новый вид атаки на веб-сервера в целом и сайты в частности. Опасно? Конечно опасно, не буду умалять “достоинств” SQL-инъекций. Сам отношусь к тем параноикам, которые стараются проверять каждый параметр в каждой функции, причем неважно, откуда он пришел. Верить, как Вы понимаете, нельзя никому и ничему, а себе и подавно. С .htaccess-файлами мне довелось столкнуться в свое время совершенно по другому поводу: тогда, когда нужно было впервые сделать динамический сайт с ЧПУ (человеко-понятными URL’ами, токарные и прочие фрезерные рабочие места здесь совершенно не при чем). Человеко-понятный URL – это URL вида http:// www.site.ru/value1/value2/, то есть адрес сайта формируется безо всяких символов “?” и “=”. Вопервых, это, как минимум, красиво. Во-вторых, один довольно крупный поисковик (не буду показывать пальцем, просто намекну, что его название начинается на “Ра”, а заканчивается на “мблер”) из рук вон плохо индексирует динамические страницы (точнее, динамические адреса, явными показателями которых как раз и является указание параметров после символа “?”). А вот ЧПУ, или их еще называют статическими адресами, проглатываются с большим аппетитом любыми поисковыми системами. Конечно, делать сейчас статичный сайт только ради красивых URL’ов по меньшей мере глупо, поэтому один из вариантов создания адресов, внешне похожих на статические, но при этом позволяющих пользоваться всей мощью динамических страниц – это как раз использование файла .htaccess. Не буду сейчас рассказывать о том, что еще можно и
нужно делать с этим файлом, лучше вернемся к нашим баранам, точнее к URL’ам. Разберем все на примере: RewriteEngine On Options +FollowSymlinks -Indexes RewriteBase / RewriteRule ^.htaccess$ -[F] RewriteRule ^(news+)/{0,1}$ news. php?module=$1 RewriteRule ^(news+)/(a-z]+)/([0-9]+)/{0,1}$ news.php?&module=$1&view=$2&id=$3
Итак, что же дает нам такое содержимое в файле .htaccess? RewriteEngine On – разрешает преобразование псевдостатической ссылки Options +FollowSymlinks -Indexes – опции: данная конфигурация разрешает использование символьных ссылок и запрещает просмотр каталогов (если в каталоге нет индексного Рис.1 - ЧПУ успешно работает
55
vr-online.ru файла, то будет выдана страница 403-ей ошибки (“Доступ запрещен”)). RewriteBase / - указывает, что преобразования
ссылок будут вестись из корневого каталога сайта. RewriteRule ^.htaccess$ -[F] – запрещаем файл .htaccess для просмотра пользователями (обычно этот запрет выставляется администратором сервера еще при настройке веб-сервера, но мало ли, чего там админы Вашего хостера прописали, безопасность лишней не бывает). На это предварительные действия закончены, приступаем к написанию правил для страниц (я приведу примеры для страницы новостей). RewriteRule ^(news+)/{0,1}$ news. php?module=$1
Страница вида http://www.site.ru/news/ (последнего слэша может и не быть, о чем говорит /{0, 1}), и в переменной $_GET[‘module’] лежит значение “news” (в этом блоге, например, я использую $_GET[‘module’] для определения выводимой в верхний левый угол картинки, ну и не только для этого). А теперь строчка еще вкуснее: RewriteRule ^(news+)/(a-z]+)/([0-9]+)/{0,1}$ news.php?&module=$1&view=$2&id=$3
Здесь у нас имеется три блока (блоки заключены в круглые скобки), каждый из которых передается в переменную массива $_GET
56
июнь 2009 (переменные $_GET[‘module’], $_GET[‘view’] и $_GET[‘id’]). Например, адрес http://www. site.ru/news/post/4/ отобразит новость с ID = 4, а http://www.site.ru/news/year/2007/ покажет список новостей за 2007-й год. Конечно, здесь все зависит от того, какие параметры и каким образом Ваши скрипты будут обрабатывать. Ну а теперь то, ради чего вообще эта статья и был написана. Как Вы можете увидеть, параметры переадресации обрабатываются при помощи регулярных выражений. И если попробовать передать в параметр $_GET[‘id’] какое-либо значение, кроме числа, то вместо инъекта злобный хакер увидит страницу 404-й ошибки. А если учесть, что правила, указанные в .htaccess выполняются до PHP-скриптов, то можно быть уверенным, что корректированный таким вот образом запрос даже не попробует выполниться. Кстати, приведенное в примере выражение можно сделать еще жестче, указав во втором параметре не строку латинских символов нижнего регистра, а непосредственные значения, которые может принимать этот параметр. Вот таким вот простым и нестандартным способом можно поставить еще один заслон любителям SQL-инъекций, а свой сайт сделать еще более защищенным. Рис. 2 - Вбиваем кавычку
vr-online.ru
июнь 2009
57
vr-online.ru
июнь 2009 Антонов Игорь (antonov.igor.khv@gmail.com)
1С:Предприятие 8.1. Часть 2: Первый
блин кодом или разбираемся с запросами В майском номере нашего журнала, я опубликовал свою первую статью по практическому использованию платформы 1С:Предприятие 8.1. Первая часть статьи являлась вводной, и в ней я сделал основной упор на теорию. Лишь к концу статьи мы создали информационную базу и даже добавили в нее новый объект типа справочник с одним реквизитом. В этой части статьи, я научу тебя работать с созданным справочником посредством языка запросов.
SQL всему голова Начинать работать с данными, мирно хранящимся в объектах конфигурации, мы будем с помощью самого простого способа - написания запросов. Чем этот способ проще? Если кратко - то всем :) Имея опыт работы с SQL, ты без труда сможешь написать нужный тебе запрос и в 1С. Тем более, что при составлении текста запросов, ты можешь не париться с переводом операторов, а писать их прямо в привычной английской форме. Например: SELECT * FROM имяОбъекта Как видно из примера, синтаксис полностью идентичен стандартному SQL. Пока мы не начали составлять реальные запросы, мне сразу хочется обратить твое внимание на возможность писать запросы (а также код на встроенном языке) на нашем великом и могучем языке. 1С:ПРедприятие 8.1 одинаково хорошо работает при написании кода как на русском, так и на английском. Несмотря на это, я все же рекомендую тебе использовать при разработке сугубо русский язык. Да, по началу это очень раздражает. Особенно если у тебя за плечами большой опыт работы с другими языками программирования. Не волнуйся и попытайся пересилить себя. Уже через месяцок барьер будет полностью разрушен. Сужу по своему опыту. Когда я устроился на работу 1С программистом, то у меня, по сути вообще не было никакого опыта работы с платформой и при виде операторов на русском, мой мозг начинал закипать и жутко глючить. Само собой, проблему я пытался решить. Способ выбрал простой и банальный - начал писать весь код на привычном мне английском. Все было хорошо,
58
но возникла другая проблема - мне стало трудно читать код своих коллег, которые использовали сугубо русский вариант синтаксиса. Такое программирование удовольствием назвать было нельзя, т.к. оно больше напоминало на бесконечный вызов файла помощи и сверки названия функций/операторов. Поработав, таким образом, примерно месяц я сдался и перешел на русский вариант синтаксиса, но зато теперь ничуть не жалею. Большинство 1С программистов используют русский вариант синтаксиса, а значит, я ничем не ограничен и могу свободно изучать их код, без дергания хелпа по пустяку. Ладно, что-то я отвлекся. Пора возвращаться к нашим баранам. Ой! К коду :). Итак, как ты уже смог заметить, синтаксис языка запросов встроенного в 1С Предприятие ничуть не отличается от SQL (отличия есть, но о них мы поговорим позже), а раз так, то имея мало мальский опыт работы с структуированным языком запрос ты без труда сможешь залабать самые изощренные запросы для получения данных из разных источников.
Как эффективно тренироваться? Не мне тебе говорить, что лучшая теория - это практика. Поэтому все, о чем я буду дальше рассказывать, желательно пробовать самостоятельно, а еще лучше, пытаться чтото менять в моих примерах и смотреть на получившейся результат. Это будет намного эффективнее, чем банальный копи-паст. Тема запросов достаточно интересная и для лучшего их понимания нужно запастись специальным средством для их быстрого написания и выполнения - обработкой «Консоль запросов». Перед тем как рассказать
vr-online.ru о возможностях этой чудесной обработки, я расскажу тебе про само слово «обработка», и что под ним подразумевается в контексте 1С:Предприятие. Не буду приводить официальное определение - его ты всегда можешь прочитать в официальной документации, а скажу сразу то, которое я вывел для себя. Обработка - это приложение, цель которого - выполнение каких-либо операций с информационной базы данных или других действий, которые предоставляет платформа 1С:Предприятие. Для каких действий нужный обработки? Да для многих! Например, для загрузки данных из внешних файлов. Зачастую приходится производить импорт данных из каких-либо внешних файлов (Xml, Excel и т.д.) и вот лучше всего, код таких вещей писать в обработках. Обработка может быть внешней - т.е. она может не является объектом конфигурации, а быть обычным файлом. Например, ты создаешь мега продвинутую обработку для загрузки данных из Excel файлов, а потом, чтобы поделиться своим творением выкладываешь ее в сеть. В результате, другим программистам не придется решать подобную задачу самостоятельно (особенно, если это требуется сделать единоразово), а значит, у них останется больше времени для более важных дел. Обработка «Консоль запросов» - это универсальное решение, предназначенное для комфортного составления запросов к информационной базе, а также выполнения их в реальном времени. Эта чудо вещь не поставляется вместе с платформой 1С:Предприятие, поэтому тебе нужно ее раздобыть самостоятельно. Водится этот зверек на дисках ИТС (информационнотехнологическое сопровождение) и в Интернете. Стой! Не нужно открывать браузер и вбивать в строку поиска название обработки. Специально для читателей нашего журнала, я вложил ее в архив журналов. Загляни в соответствующую папочку и ты найдешь файл «КонсольЗапросов. epf».
Пишем первый запрос Обработка у нас есть и хорошо бы ее обновить. Запускай нашу конфигурацию в режиме 1С:Предприятие и через меню «Файл -> Открыть» открой «КонсольЗапросов.epf». Выполнив это нехитрое действие перед тобой откроется окно как на рисунке 1.
июнь 2009
Рисунок 1 (Консоль запросов) Не буду вдаваться в содержимое этого окна, т.к. при желании ты сам совсем разберешься, а лучше покажу сразу пример использования зыка запросов. Итак, в правой части окна пиши следующий запрос: ВЫБРАТЬ * ИЗ Справочник.Клиенты КАК СправочникКлиенты Как закончишь писать, нажми на кнопку «Выполнить» (она находится на панели инструментов обработки) и наслаждайся результатом выполнения запроса. Если в прошлой части статьи ты следовал моим указаниям и создал в справочнике «Клиенты» несколько записей, то в обработке «Консоль запросов» сейчас должен увидеть список всех этих записей. Вот собственно мы и написали наш первый запрос. Как видишь все просто, но можно сделать еще проще. Вполне может быть, что до этого момента ты с языком запросов еще ни разу не встречался. Если это так, то скорей всего ты не совсем понимаешь смысл написанных этих строк. Не беда. Скачай себе какую-нибудь простенькую книгу по SQL (кстати, такая книга есть у нас на сайте) и в свободное время проштудируй ее. Проблема с ручным написанием запросов исчезнет, и заодно увидишь, какие ограничение накладывает 1С на язык запросов. А что делать пока? Откладывать занятия? Не в коем случае!!! Для всех тех, кто не сталкивался с SQL запросами, в обработке и платформе предусмотрена функция - «Конструктор запроса», позволяющая составить запрос с помощью графического интерфейса. Говоря простыми словами - тебе не придется писать код в ручную. Все что от тебя потребуется - тыкать мышкой и внимательно читать название диалогов.
59
vr-online.ru
июнь 2009
Чтобы воспользоваться конструктором запросов, тебе требуется кликнуть правой клавишей мыши, в поле, в котором ты писал предыдущий текст запроса и в появившемся контекстном меню выбрать пункт «Конструктор запросов» (Рисунок 2). Вот на содержимом этого окна мы остановимся подробней. Рассмотрим окно слева направо. В самом левом краю ты видишь дерево объектов. В нем сгруппированы все имеющиеся в твоей конфигурации объекты. Выделив любой объект базы данных и нажав кнопку с изображением «>», ты перенесешь его в поле «Таблицы». Все объекты, которые перечислены в этом месте будут является источниками данных, т.е. в запросе они будут указываться после ключевого слова FROM. Ты можешь выбирать как одну таблицу, так и несколько. В нашей конфигурации с объектами наблюдается дефицит, поэтому в качестве таблицы будет лишь один единственный справочник «Клиенты». Ничего, пока этого достаточно. С источником данных определились, теперь нужно выбрать поля, инфу из которых мы будем получать. Для этого разверни нашу таблицу и перенеси (с помощью кнопки «>») любые понравившееся реквизиты. В своем примере я выбрал «Ссылка», «Наименование», «Код». Все, на этом можно считать, что наш запрос готов. Давай попробуем его выполнить. Нажимай кнопку «Ok» и заценивай текст получившегося запроса. У меня получился такой:
ВЫБРАТЬ Клиенты.Ссылка, Клиенты.Наименование, Клиенты.Код ИЗ Справочник.Клиенты КАК Клиенты Я рассказал тебе про использование самой первой закладки конструктора запросов, но их там намного больше. Работа с ними происходит по такому же принципу.
Домашнее задание Учти, запросы нам придется писать часто, поэтому важно уже сейчас научиться их правильно составлять. Попробуй создать несколько элементов в нашем единственном справочнике и попробовать выбрать из него данные используя условия. Если все получится, то отложи немного 1С, и скачай с нашего сайта книгу «Понимание SQL». В ней очень доходчиво про язык структурированных запросов. Полученные знания, ты без проблем сможешь применить в 1С. На этом сегодняшний урок будем считать оконченным. Он получился маленьким, но полезным. Потерпи, в следующем номере информации будет больше. Если ты начал изучать 1С Предприятие по моим статьям и у тебя что-то не получается, то не стесняйся, пиши мне на мыло. Буду рад помочь.
Рисунок 2 (Конструктор запроса)
60
vr-online.ru
июнь 2009 Антонов Игорь (antonov.igor.khv@gmail.com)
Обзор Delphi-компонент SevenZipVCL Версия Delphi: 7-2006 url: http://www.rg-software.de
изменений директорий и т.д. Вся библиотека распространяется совершенно бесплатно. TPickShow Версия Delphi: 6, 7, 2006 url: http://torry.net
В последнее время, архиватор 7Zip становится все более популярным, и если ты хочешь написать свой вариант оболочки для него, то устанавливай этот компонент. В нем уже реализовано: создание, распаковка, конвертирование архива в SFX и т.д. Компонент сделан качественно, единственный минус – компонент использует библиотеку 7za. dll, а значит, придется поставлять ее со своими проектами.
Отличный компонент, демонстрирующий плавные переходы с одного изображение на другое. Другими словами перед нами компонент, позволяющий создать эффекты на подобие тех, которые используется при смене слайдов в презентациях, сделаны в MS PowerPoint.
VCL Zip Pro Версия Delphi: 5-2007 url: http://torry.net
TPNGImage Версия Delphi: 6, 7, 2006 url: http://pngdelphi.sourceforge.net
Компонент для работы с Zip архивами: создание zip/sfx, распаковка, добавление файлов в уже существующий архив, установка пароля на архив и т.д.
Компонент, позволяющий использовать тебе в своих проектах изображения, сохраненные в формате PNG. Данный формат сейчас сильно распространен и просто популярен, поэтому нет смысла ждать, пора использовать его в своих приложениях.
FIBPlus Версия Delphi: 5, 6, 7, 2006, 2007 http://www.devrace.com
Если тебе приходится работать с базами Firebird/ Interbase, то значит этот набор компонент специально для тебя. Библиотека обладает большими возможностями, поэтому для лучшего знакомства рекомендую установить и попробовать. Тем более, что в комплекте идет большое количество демок. Чуть не забыл, компоненты распространяются не бесплатно, поэтому придется раскошелиться. Благо для exСССР предусмотрена скидка в 50%. ATViewer Версия Delphi: 5-2006 url: http://www.torry.net
Компоненты, на основе которых можно легко написать универсальный viewer файлов. Поддерживаются следующие типы файлов: TEXT, Binary, Hex, Unicode, RTF, UTF-8, BMP, JPG, ICO, GIF, PNG, WMF и т.д. Помимо просмотра файлов, с компонентами идет модуль для организации поиска файлов, проверка
TProEffectImage Версия Delphi: 5, 6, 7 url: http://raveland.netfirms.com
Продвинутый наследник TImage, умеющий применять к изображению множество различных фильтров: мозаика, твист, emboss, grayscale, invert, размытость и т.д. Помимо применения фильтров, компонент также умеет изменять яркость/контростность/насыщенность. TOriImage Версия Delphi: 5, 6, 7 url: http://torry.net
Компонент похож на TProEffectImage, главное отличие – некоторые фильтры работают быстрей. TRotateImage Версия Delphi: 6-7, 2006 http://torry.net
TImage, с возможностью поворота изображения на определенное количество градусов.
61
vr-online.ru ACM Components Версия Delphi: 6, 7, 2006. Url: http://www.torry.net/vcl/mmedia/audio/ acmcomponents16.zip
Отличный набор компонентов для упрощения работы с Microsoft Audio Compression Manager. Если ты хочешь быстренько «слепить» свой voice-чат для локальной сети, то непременно воспользуйся этим набором. С компонентами поставляется отличный пример, демонстрирующий сжатие и передачу звука по сети. DCD SFilter Версия Delphi: 7, 2006 Url: http://download.dsp-worx.de/ dcdspfilter_v1.0.1_final_source.zip
Программирование звука тема интересная, но чрезвычайно сложная. Особые сложности возникают, при создании какого-либо эффекта (например, Chorus, Distortion и т.д.). Чтобы не тратить время на изобретение велосипеда и сэкономит свои нервы при дебаге, рекомендую воспользоваться этой библиотекой компонент. Возможности библиотеки не ограничены лишь одними эффектами/фильтрами. В ней также реализованы компоненты для прорисовки спектра или волны звука. RegExpr Версия Delphi: 6, 7, 2006 Url: http://RegExpStudio.com
Думаю, что такое регулярные выражения ты знаешь, и уже наверняка ни раз убеждался в их мощи. Еще бы, ведь с их помощью очень легко проводить хардкорный поиск в тексте, проверять на валидность какую-либо инфу и многое
62
июнь 2009 другое. По умолчанию в Delphi нет возможности использовать рег экспы, но к нашему счастью есть модуль с классом TRegExpr, который исправляет данное недоразумение. Подключи его к своему проекту и начинай по полной использовать регулярные выражения в своих проектах. ALWinHttpClient Версия Delphi: 7-2007 Url: http://torry.net
ALWinHttpClient – компонент предназначенный для работы с http протоколом. В качестве сетевой начинки используется стандартная библиотека WinInet. Возможности: отправка GET/POST запросов, передача файлов и т.д. Vortex IRC Версия Delphi: 6-2006 url: http://torry.net
Набор компонент для программирования IRC клиентов. Компоненты этой библиотеки базируются на ICS, которая уже морально устарела и требует полного переписывания. Несмотря на это, код, отвечающий за работу с irc протоколом очень интересный и желательно с ним разобраться. HashLib! v.1.03 Версия Delphi: 5-7, 2006 url: http://cobans.net
Библиотека, в которой реализованы различные алгоритмы для работы с хешами (MD2, MD4, MD5, SHA-1, SHA (256, 384, 512), Haval (128, 160, 192, 224, 256), GOST R 34.11-94, Ripe-MD (128, 160), Tiger (128, 160, 192), CRC32, CRC32b, Adler32) и CryptoAPI. Отличительной особенностью этой библиотеки является высокая скорость работы.
vr-online.ru
июнь 2009
63
vr-online.ru Вопрос: Администрирую MS Exchange Server 2007. Все отлично, но с недавнего времени при попытки создания нового почтового ящика (или редактировании существующего) стала появляться ошибка: «Не удается найти сервер Exchange 2007 с активной службой списков адресов». В чем проблема и как ее решить? Ответ: Скорей всего дело в службе «Системный
помощник MS Exchange». Она крайне необходима для работы Exchange 2007, но почему-то иногда эта служба не стартует автоматически (например, после перезагрузки сервера) или по непонятным причинам завершается. Зайди в оснастку «Службы» и посмотри ее состояние. Если служба не запущена, то просто запусти и все должно стать Ok. Вопрос: В браузере Opera есть удобное встроенное средство для управление плюшками (Cookies). К сожалению, недавно я был вынужден перейти на FireFox, а в нем, подобной функции нет. Как мне быть? Ответ: Действительно, по умолчанию в FireFox такой полезной штуки нет (UPD в версии 3.5 появилась). Однако, это не повод огорчаться. FireFox всегда славился своей расширяемости за счет плагинов. Если захотеть и подойти к вопросу творчески, то из этого браузера можно сделать настоящего монстра web-серфинга. Как ты, наверное, уже догадался, для чтения плюшек так же имеется соответствующий плагин. Например: FireCookie, CookieMonster. Второй очень удобный и мощный. С его помощью легко редактировать куки, а также управлять приемом. Например, тебе предоставляется возможность не принимать куки с определенного сайта. Рекомендую попробовать. Скачать плагины ты сможешь с официального портала дополнений к FF (https://addons.mozilla.org/ru/firefox) Вопрос: При включении/перезагрузки почтового
сервера (используется MS Exchange 2007), MS outlook не может открыть список папок. Пока решаю проблему повторной перезагрузкой. Может, есть способ лучше? Ответ: Конечно, есть! Проблема банальна не стартует служба «банк данных Exchange». Из-за этого Outlook не может открыть папки и сообщение. Это глюк exchange и решить его можно несколькими способами: 1. После загрузки сервера ручками запустить службу; 2.
64
июнь 2009 Поставить на сервер тулзу, которая мониторит работоспособность определенных служб и в случае их остановки автоматически их запускает. Таких тулз много и ты без труда найдешь их, воспользовавшись поисковиком. Вопрос: Хочу стать программистом. Нужно ли
для этого получить специальное образование? Или можно обойтись любым другим и изучить все самостоятельно? Ответ: Профильное образование желательно, но не является обязательным. Много людей стало успешными программистами, имея при этом совершенно не связанное с программированием образование. Примеры? Пожалуйста! Взять хотя бы известного многим Михаила Фленова. Он программист со стажем и активно занимается продвижением своих программ, а также пишет книги/статьи по программированию. При всем этом, по образованию он экономист. Не буду далеко ходить и в качестве примера приведу себя. Я работаю программистом уже 3 года, но по образованию я юрист :). Неважно какой у тебя диплом. Главное чтобы ты обладал соответствующими знаниями. В этом случае с поиском работы проблем возникнуть не должно. Вопрос: Подскажите хорошую книгу для изучения
C#?
Ответ: Герберт Шилдт «С# Учебный курс». Очень хорошая книга о языке С#. Сегодня она уже считается устарелой (выпущена в далеком 2003 году), но автор очень хорошо описывает основы языка. Стиль изложения простой и понятный. Прочитав книгу - очень легко начать работать с С#. Повторюсь, главное достоинство книги ориентированность на новичков. Даже те, кто ни разу не кодил, прочитав книгу, смогут запросто начать работать с этим чудесным языком. Поскольку книга уже является устаревший, то покупать я тебе ее не рекомендовал бы. Гораздо лучше купить либо ее электронную версию, либо банально скачать скан.
Нейгель, Ивьен, Глинн, Уотсон «C# 2008 и платформа .NET 3.5 для профессионалов» (http://www.books.ru/shop/books/611434) - Очень хорошая книга. Правда, я ее не читал еще. До этого мне попадалась такая же, но по 2005 версии. Написано качественно и для профи. Описывается много интересных моментов (сужу по такой же книги, но версии 2005) и примеров.
vr-online.ru Начинать изучать язык с этой книги не стоит, т.к. 100% появятся не понятки. Лучше уж почитать Шилдта, а потом перейти к этой книге. Так будет эффективней. Про XML и ASP .NET в книги также есть соответствующие главы, но темы сам понимаешь большие в книге рассмотрено поверхностно. В любом случае, книга must read для расширения знаний по C#. Вопрос: Стоит ли сейчас изучать Delphi? Ответ: Стоит или нет - все целиком завит от твоих задач и желаний :). Если ты хочешь программировать для души (т.е. для себя), то можешь изучить язык который тебе больше нравится. Например, тот же Delphi. Только учти, что Delphi сегодня уже не так популярен как раньше. Т.е. нужно отдавать себе отчет, что читая статьи 10 летней давности о крутости Delphi - уже совсем неактуальны и сегодня положение дел в корне изменилось. Delphi потерял былую популярность и используется все меньше и меньше. Следовательно, найти вакансию Delphi-программист будет с каждым годом сложнее (если ситуация не измениться). Ok, если не Delphi, тогда что? Мой ответ и выбор - C#. Это замечательный язык, возможности которого намного превосходят Delphi. Сегодня он пользуется большой популярностью и скорее всего его ждет светлое будущее, т.к. MS делает на этот язык большую ставку и всячески его развивает. Поэтому всем тем, кто хочет заняться изучением Delphi, советую лучше сразу обратить внимание на C#. Поверьте, вы не в чем не проиграете. У меня у самого большой опыт работы с Delphi, но время диктует свои условия и в итоге я был вынужден заняться изучением C#. Сейчас я ничуть не жалею об этом и стараюсь покорить этот язык. Вопрос: Скоро выйдет Windows 7, и я всерьез задумываюсь о переходе. Расскажите, стоит ли переходить на новую ОС? Пользовательские финтифлюшки меня не волнуют. Я программист и мне интересны в первую очередь новинки в этой области. Ответ: Windows 7 - отличный выбор для разработчика приложений под Windows. В семерке создано очень много интересных технологий, которыми обязательно стоит воспользоваться в своих приложениях. Среди таких новинок:
июнь 2009 - Windows Touch. В Windows 7 кардинальным образом изменился пользовательский интерфейс. Как и следовало ожидать он стал еще более простым и удобным в использовании, а также обзавелся поддержкой мультисенсорного ввода. - Windows Device Platform. Немаловажную роль в новой операционной системе играет новая платформа устройств (Device Platform). Она предоставляет программисту богатый набор API для взаимодействия с различными устройствами сразу после их подключения к ПК. Технология неразрывно связана с webслужбами MS, а это позволяет производителям оказывать дополнительный сервис пользователю устройства. Например, выполнять плановое обновление ПО или обращаться к мультимедийным проигрывателям, мобильным телефонам, используя протокол Multimedia Transfer Protocol. - Windows Biometric Framework. В Windows 7 появилась служба для взаимодействия с биометрическими устройствами - «Windows Biometrics FrameWork». Теперь нет необходимости использовать специальное программное обеспечение поставляемое производителями биометрических устройств. Все операции по взаимодействию возьмет на себя служба Windows Biometric Service. - Windows Sensor Platform. Эта платформа создана для обеспечения взаимодействия ОС с различными датчиками-устройств. Используя ее возможности, становится возможным создавать «умные» приложения, которые могли бы приспосабливаться к условиям среды, в которой работает пользователь или к его географическому местонахождению. - Location Platform. Платформа, позволяет работать с устройствами определения географического местонахождения объекта. - PowerShell 2.0. - Trigger Start Service. В Windows 7, разработчикам стала доступа возможность создавать так называемые Trigger-сервисы, запуск, которых зависит от определенных событий. Например, если ты разрабатываешь сервис для взаимодействия с мобильным телефоном, то нет смысла держать сервис в работающим состоянии,
65
vr-online.ru
июнь 2009
пока устройство не будет подключено. Вопрос: Как в 1С:Предприятии 8.1. получить имена
всех имеющихся документов/справочников? Если можно, то приведите пример. Все очень следующим кодом: Ответ:
просто.
Воспользуйся
Для Каждого ОбъектМетаданных Из Метаданные. Документы Цикл Сообщить(ОбъектМетаданных.Имя); КонецЦикла; В этом цикле идет перебор всех метаданных типа «Документ». Точно таким же образом, ты можешь получить имена всех доступных справочников, регистров и т.д. Мне постоянно приходится синхронизировать файлы между двумя компьютерами. Как это можно сделать наиболее элегантно? Вопрос:
Синхронизация файлов между несколькими компьютерами - проблема многих активных пользователей. Расскажу на своем примере. Мне часто приходится брать работу домой. Раньше я использовал банальное решение - либо сохранял на флэшку, либо отправлял на почту. Минусы этих методов очевидны. Флэшку можно забыть, а отправлять файлы по почте обламывает. Все было плохо и уныло, пока в начале этого года я не познакомился с чудным сервисом - DropBox (https://www.getdropbox.com/ home). Нетрудно догадаться, что его основная задача синхронизация файлов через интернет. Вроде ничего особенного и революционного, но это только на первый взгляд. Главная фишка DB - удобство использования. Сервис работает по такому принципу. В самом начале тебе необходимо зарегистрировать на сайте проекта. Получив аккаунт, необходимо слить небольшое Ответ:
66
приложение. Выполняешь инсталяцию тулзу и после запуска она предложит тебе выбрать общую папку. В последствии, все файлы которые будут находится в этой папки, будут автоматически загружаться на сервер. Получить доступ к файлом ты сможешь либо через WEB или непосредственно через «общую» папку. Для второго способа тебе необходимо установить клиентскую часть DB на своем втором компе, выполнить вход и дождаться пока все твои файлы с сервера перекачают общую папку на втором компьютеру. Дальше все просто и понятно - при изменении файлов на домашнем компе, они будут автоматически отправлены на сервер, а потом получены рабочим компом. Все просто и понятно, а главное, за использование этого сервиса с нас не берут ни копейки. Вопрос: Я начинающий линуксойд, посоветуйте какие-нибудь Linux-emagazine. Желательно на русском языке. Ответ: Из наиболее известных - Linux Format
(http://www.linuxformat.ru/). Правда это не ezine, а печатное издание. Журнал очень интересный и полезный. Я не являюсь его постоянным читателем, но те номера, которые видел - мне очень понравились. Подписаться на журнал можешь в любом почтовом отделении. Если покупать нет желания, то на официальном сайте доступен архив номеров. Обязательно скачай несколько журналов и почитай. Может разгореться интерес, и захочешь оформить подписку. Из электронных журналов о Linux мне нравится fullcircle (http://fullcirclemagazine. org/). Родной язык журнала - английский, но русское сообщество Ubuntu (кстати, журнал преимущественно о дистрибутиве Ubuntu) периодически выпускает русские вариант журнала. Скачать их можно с этой страницы: http://ubuntu.ru/fullcircle.