Home
Руслан Валиев
Шалтай-болтай
Главная 
05.03.2007 16:32 - Solaris 10, простой пользователь и порты < 1024 [how-to, security, solaris]
Чтоб разрешить определенному пользователю (non-root) привязывать порты ниже 1024, можно воспользоваться RBAC (exec_attr, prof_attr) или поступить еще проще.

Данная комманда должна быть выполнена под root.

# usermod -K defaultpriv=basic,net_privaddr tomcat

Теперь пользователь tomcat может запускать программы, которые должны работать на привилегированных портах (например, порт 80).

Для интересующихся: после выполнения вышеуказанной комманды, в файл /etc/user_attr добавляется строка:

tomcat::::type=normal;defaultpriv=basic,net_privaddr
09.02.2007 12:56 - Thumper Light [opensolaris, solaris, zfs]


«Thumper Light» или кластерим USB-флешки с помощью Solaris'а и ZFS :-)
Видео демонстрирует хороший пример RAID-Z в действии.

PS. Dan Price тоже отжигает.
03.12.2006 18:11 - Отключаем ненужные сервисы: быстро и удобно [how-to, smf, solaris]
Некоторых администраторов приводит в шок количество запущенных сервисов на свежеустановленной машине с Solaris'ом 10.
На самом деле, даже после такой установки, система все-равно остается весьма защищенной.

Опытные администраторы сразу лезут в /etc/rc* и ничего в этом неправильного нет. Но позвольте продемонстрировать некоторые возможности SMF.

Если посмотреть в /var/svc/profile, то можно увидеть кучу файлов вроде:

generic.xml
generic_limited_net.xml
generic_open.xml
inetd_generic.xml
inetd_services.xml
inetd_upgrade.xml
name_service.xml
ns_dns.xml
ns_files.xml
ns_ldap.xml
ns_nis.xml
ns_nisplus.xml
ns_none.xml


Это «подточенные» профили со списком необходимых сервисов в каждом конкретном случае.

Вот, например, кусок из generic_limited_net.xml:

<service name='network/ftp' version='1' type='service'>
   <instance name='default' enabled='false'/>
</service>


А generic.xml, по умолчанию, является мягкой ссылкой на generic_open.xml (теперь поняли? :-)

В моем случае, есть два веб-контейнера, в которых работает мой сайт. Количество запущенных сервисов в них минимальное.

Как я это сделал?

cd /var/svc/profile
rm generic.xml
ln -s generic_limited_net.xml generic.xml
svccfg apply /var/svc/profile/generic_limited_net.xml


Подробнее о SMF в PDF-документе: SERVICE MANAGEMENT FACILITY (SMF) IN THE SOLARIS™ 10 OPERATING SYSTEM
03.12.2006 14:23 - lsof_4.77, Solaris 10 6/06, Sun Studio 11 [how-to, software, solaris]
При сборке lsof_4.77 на Solaris 10 6/06 (Sun Studio 11), лезут ошибки примерно такого типа:

"/usr/include/sys/kstat.h", line 434: syntax error before or at: caddr32_t
cc: acomp failed for ckkv.c
*** Error code 2
make: Fatal error: Command failed for target `ckkv.o'
Current working directory /soft/lsof_4.77/lsof_4.77_src/lib
*** Error code 1
make: Fatal error: Command failed for target `lib/liblsof.a'


Оказалось, что это баг:

6440943 <sys/kstat.h> should include <sys/types32.h>

Временным решением проблемы является дополнительная строка в machine.h:

#include <sys/types32.h>
21.10.2006 15:55 - Samba & ZFS [samba, solaris, zfs]
Связка «Samba & ZFS» показала себя на практике отлично.
Благодаря манифесту Тревора, моя Samba управляется через SMF. Конфиг в /etc/sfw у меня уже давно отконфигурирован, но мне всегда хотелось, чтоб ZFS-снапшоты делались не по расписанию (скрипт):


 10,20,30,40,50 * * * * /tank/local/snapshot minute
 0 * * * * /tank/local/snapshot hour
 1 1 * * * /tank/local/snapshot day
 2 1 1 * * /tank/local/snapshot month


Хотелось, чтоб они делались, когда я логинился на моем PC.
Итак, немного импровизации в моем [homes] smb.conf:


 root preexec = ksh -c '/usr/sbin/zfs snapshot tank/users/%u@smb$(/tank/local/smbdate)'


Мне понадобился скрипт smbdate для корректного отображения даты:


 #!/bin/ksh -p
 exec date +%F-%R


Пример результата после входа пользователя:


 nas:/% zfs list | grep smb
 tank/users/norus@smb2006-10-04-14:04 0 - 15.3G -

15.10.2006 22:37 - Вдогонку к предыдущему посту: немного отсортированной рутины [commands, solaris]
Debugging

cat -v -t -e [file]
        Show non-printing characters

dumpadm -d swap
        Configure swap device as dump device

ld -l <libname without 'lib'>
        Check if you have a particular library

truss -f -p <pid of a shell>
        Using multiple windows, this can be used to trace setuid/setgid programs

truss executable
        Trace doing of given command (useful debugging)

Read more )
14.10.2006 21:04 - Blastwave [commands, solaris]
Избавляемся от вредных привычек:

yes | pkgrm $(pkginfo | awk '/CSW/ {print $2}')
11.10.2006 20:42 - Удаление Gnome [how-to, solaris]
Тут в исику спрашивают, как удалить Gnome после установки Solaris'а 10. Мол, он мне не нужен.

Очень легко.

Смотрим на пакеты, которые будем удалять:


 osiris:/% pkginfo | grep SUNWgnome

 GNOME2 SUNWgnome-a11y-base-devel Accessibility Implementation for the GNOME base libraries - developer files, platform dependent, /usr
 GNOME2 SUNWgnome-a11y-base-devel-share Accessibility Implementation for the GNOME base libraries - developer files - platform independent, /usr/share
 GNOME2 SUNWgnome-a11y-base-libs Accessibility Implementation for the GNOME base libraries - platform dependent files, /usr filesystem
 GNOME2 SUNWgnome-a11y-gok GNOME On-screen Keyboard
 GNOME2 SUNWgnome-a11y-gok-root GNOME On-screen Keyboard - architecture dependent, / filesystem
 GNOME2 SUNWgnome-a11y-gok-share GNOME On-screen Keyboard - architecture independent, /usr/share
 GNOME2 SUNWgnome-a11y-libs Accessibility Implementation for GNOME
 GNOME2 SUNWgnome-a11y-libs-devel Accessibility Implementation for GNOME - developer files, platform dependent, /usr
 GNOME2 SUNWgnome-a11y-libs-devel-share Accessibility Implementation for GNOME - developer files, platform independent, /usr/share
 GNOME2 SUNWgnome-a11y-libs-share Accessibility Implementation for GNOME - platform dependent, /usr
 GNOME2 SUNWgnome-a11y-poke Accessibility support tool
 GNOME2 SUNWgnome-a11y-poke-share Accessibility support tool - architecture independent, /usr/share
 GNOME2 SUNWgnome-a11y-reader GNOME screen reader and magnifier
 GNOME2 SUNWgnome-a11y-reader-devel GNOME screen reader and magnifier - developer files
 ...



Ну, и сам процесс удаления:


 osiris:/% yes | pkgrm -Y GNOME2


Где "-Y" в данном случае "GNOME2".

-Y category
Remove packages based on the value of the CATEGORY parameter stored in the installed or spooled package's pkginfo(4) file.

Стоит отметить, что пакет с пометкой "system" (например, SUNWcakr :-) не может быть удален с этой опцией.
10.04.2006 20:54 [how-to, solaris]
Как и оговаривалось в прошлом посте, отныне буду, в основном, писать о Sun Solaris'е. Возможно, иногда о SunOS.

Начнем с информации о версии установленной ОС:

 osiris:/% cat /etc/release
                       Solaris 10 1/06 s10s_u1wos_19a SPARC
          Copyright 2005 Sun Microsystems, Inc. All Rights Reserved.
                       Use is subject to license terms.
                          Assembled 07 December 2005


Немного о конфигурации моего сервера (Ultra 10):

 osiris:/% prtdiag
 System Configuration: Sun Microsystems sun4u Sun Ultra 5/10 UPA/PCI (UltraSPARC-IIi 300MHz)
 System clock frequency: 100 MHz
 Memory size: 384 Megabytes
 ...


Смотрите также prtconf.
This page was loaded Май 14 2008, 5:00 am GMT.