Skype (Русский)
Contents
Skype
Skype — бесплатное программное обеспечение с закрытым кодом, обеспечивающее шифрованную голосовую связь через Интернет между компьютерами (VoIP), а также платные услуги для связи с абонентами обычной телефонной сети. Возможна организация конференц-связи (до 25 абонентов, включая инициатора), передача текстовых сообщений и файлов, а также видеосвязь.
Установка Skype
Установите skypeAUR из официального репозитория или добавьте репозиторий multilib для 64-битной системы:
[multilib] # Add your preferred servers here, they will be used first Include = /etc/pacman.d/mirrorlist
Теперь можно установить Skype:
# pacman -S skype
Запустить Skype легко. Наберите skype
в терминале или сделайте двойной клик на иконке Skype на рабочем столе, или в меню вашего РО.
Так же попробуйте Tox, установив tox-gitAUR[ссылка недействительна: сохранено в aur-mirror] из AUR: это отличная, свободная, открытая и лёгкая в освоении альтернатива гегемонии skype, находящяася сейчас в стадии активной разработки.
Звук в Skype
Начиная с версии 4.3, Skype требует PulseAudio для голосовой связи, вероломно отказавшись от поддержки ALSA.
apulseAUR (и lib32-apulseAUR для пользователей x86_64) из AUR эмулирует PulseAudio, не требуя установки PulseAudio. Запустите Skype с:
$ apulse skype
или для x86_64:
$ apulse32 skype
Смотрите ALSA/Troubleshooting#Setting the default microphone/capture device и последующие разделы, если микрофон не работает.
Если всё работает, измените desktop entry в /usr/share/applications/skype.desktop
что бы строка с Exec читалась как:
Exec=/usr/bin/apulse32 /usr/bin/skype %U
Skype ALSA Sound (2.0+)
В идеале, звук должен работать "из коробки", если вы не можете выбрать звуковое устройство для использования в Skype или если у вас есть проблемы с Skype: он блокирует звуковое устройство, то вам нужно только добавить следующие строки в ваш ~/.asoundrc :
pcm.dmixout { # Just pass this on to the system dmix type plug slave { pcm "dmix" } }
После этого вы можете запустить Skype, пойти в опции аудио и выберите dmixout в качестве оратора и ringing device.
Безопасность Skype
Есть несколько причин, по которым следует ограничить доступ Skype к вашему компьютеру:
- Бинарники skype не поддаются декомпиляции, так что ни кто не смог узнать, что они действительно делают.
- Некоторое количество шифрованного трафика идёт даже если вы не используете Skype для переписки или голосовой связи в данный момент.
- ...
Больше информации на [1].
AppArmor
Обратитесь к странице AppArmor для инструкций по установке AppArmor.
В пользовательских инструментах для AppArmor можно найти шаблоны профилей. В том числе и Skype. Скопируйте следующую строку в папку с профилями AppArmor:
# cp -ip /usr/share/apparmor/extra-profiles/usr.bin.skype /etc/apparmor.d/
По неясным причинам, профиль не завершён - вы можете отредактировать его позднее. Вот пример для Skype 4:
#include <tunables/global> /usr/bin/skype { #include <abstractions/audio> #include <abstractions/consoles> #include <abstractions/dbus-session> #include <abstractions/gnome> #include <abstractions/kde> #include <abstractions/nameservice> #include <abstractions/video> # Executables /usr/bin/skype ixmr, /usr/lib{,32}/skype/skype ixmr, /usr/bin/xdg-open PUxmr, /usr/bin/kde4-config PUxmr, # Файлы настройки owner @{HOME}/.Skype/ rw, owner @{HOME}/.Skype/** krw, owner @{HOME}/.config/Skype/ rw, owner @{HOME}/.config/Skype/** krw, # Папка загрузок owner @{HOME}/Public/ rw, owner @{HOME}/Public/** krw, # Библиотеки /usr/lib{,32}/libv4l/v4l2convert.so mr, /usr/share/skype/lib/libQtWebKit.so.4 mr, # Общие данные /usr/share/skype/ r, /usr/share/skype/** r, # Устройства /dev/ r, /dev/video[0-9]* mrw, # Системная информация /etc/machine-id r, @{PROC}/sys/kernel/{ostype,osrelease} r, @{PROC}/sys/vm/overcommit_memory r, @{PROC}/[0-9]*/net/arp r, owner @{PROC}/[0-9]*/cmdline r, owner @{PROC}/[0-9]*/status r, owner @{PROC}/[0-9]*/task/ r, owner @{PROC}/[0-9]*/task/[0-9]*/stat r, owner @{PROC}/[0-9]*/fd/ r, /sys/devices/system/cpu/ r, /sys/devices/system/cpu/cpu[0-9]*/cpufreq/scaling_{cur_freq,max_freq} r, /sys/devices/pci*/*/usb[0-9]*/*/*/modalias r, /sys/devices/pci*/*/usb[0-9]*/*/*/video4linux/video[0-9]*/dev r, /sys/devices/pci*/*/usb[0-9]*/*/{idVendor,idProduct,speed} r, # Это, вероятно, должно пойти на соответствующие абстракции /etc/asound.conf r, owner @{HOME}/.config/fontconfig/fonts.conf r, owner @{HOME}/.config/gtk-3.0/bookmarks r, owner @{HOME}/.config/oxygen-gtk/argb-apps.conf rw, owner @{HOME}/.config/pulse/cookie krw, owner @{HOME}/.icons/** r, owner @{HOME}/.kde4/share/config/kdeglobals krw, owner @{HOME}/.kde4/share/config/gtkrc-2.0 r, owner @{HOME}/.kde4/share/config/oxygenrc r, /usr/share/icons/*/index.theme kr, /usr/share/nvidia/nvidia-application-profiles-*-rc r, # Запреты deny owner @{HOME}/.mozilla/ r, deny owner @{HOME}/.mozilla/** r, deny /sys/devices/virtual/dmi/** r, }
Для использования профиля, удостоверьтесь что securityfs
примонтирован,
# mount -t securityfs securityfs /sys/kernel/security
Загрузите профиль командой:
# apparmor_parser -r /etc/apparmor.d/usr.bin.skype
Теперь вы можете запускать Skype ограниченно для своего пользователя. Запреты пишутся в messages.log
.
Docker
Есть возможность использовать Skype в безопасном контйнере Docker. Программа заработает по тунелю SSH с сопроваждением X11 и звуком через PulseAudio's Network Server.
Скачайте подготовленный образ docker с официальной страницы, или посмотрите инструкцию, как сделать всё самому тут.
TOMOYO
Заметьте, что данный раздел описывает использование TOMOYO 2.5. Смотрите установку TOMOYO Linux#TOMOYO Linux 2.x.
- Откройте файл
/etc/tomoyo/exception_policy.conf
и добавьте строки:
path_group SKYPE_DIRS /home/\*/.Skype/ path_group SKYPE_DIRS /home/\*/.Skype/\{\*\}/ path_group SKYPE_DIRS /home/\*/.config/Skype/\{\*\}/ path_group SKYPE_DIRS /usr/share/skype/\{\*\}/ path_group SKYPE_DIRS /tmp/skype-\*/ path_group SKYPE_DIRS /tmp/skype-\*/\{\*\}/ path_group SKYPE_DIRS /home/\*/Downloads/tmp/\{\*\}/ path_group SKYPE_FILES /home/\*/.Skype/\{\*\}/\* path_group SKYPE_FILES /home/\*/.config/Skype/\{\*\}/\* path_group SKYPE_FILES /usr/share/skype/\{\*\}/\* path_group SKYPE_FILES /home/\*/.Skype/\* path_group SKYPE_FILES /home/\*/.config/Skype/\* path_group SKYPE_FILES /usr/share/skype/\* path_group SKYPE_FILES /tmp/skype-\*/\{\*\}/\* path_group SKYPE_FILES /home/\*/Downloads/tmp/\{\*\}/\* path_group SKYPE_FILES /home/\*/Downloads/tmp/\* path_group ICONS_DIRS /usr/share/icons/\{\*\}/ path_group ICONS_FILES /usr/share/icons/\{\*\}/\* path_group ICONS_FILES /usr/share/icons/\* initialize_domain /usr/bin/skype from any initialize_domain /usr/lib32/skype/skype from any
Заметьте, что папки /home/*/Downloads/tmp
единственные папки куда Skype позволенно сохранять полученные файлы и из которых позволенно посылать оные.
- Затем откройте
/etc/tomoyo/domain_policy.conf
и добавьте строки:
<kernel> /usr/bin/skype use_profile 3 use_group 0 misc env \* file read /bin/bash file read /usr/bin/bash file read/write /dev/tty file read /usr/lib/locale/locale-archive file read /usr/lib/gconv/gconv-modules file read /usr/bin/skype file read /usr/lib32/skype/skype file execute /usr/lib32/skype/skype exec.realpath="/usr/lib32/skype/skype" exec.argv[0]="/usr/lib32/skype/skype" <kernel> /usr/lib32/skype/skype use_profile 3 use_group 0 file append /dev/snd/pcm\* file chmod /home/\*/.Skype/ 0700 file create /home/\*/.cache/fontconfig/\* 0600-0666 file create /tmp/qtsingleapp-\*-lockfile 0600-0666 file create @SKYPE_FILES 0600-0666 file create /dev/shm/pulse-shm-\* 0700-0777 file execute /usr/bin/firefox file execute /usr/bin/gnome-open file execute /usr/bin/notify-send file execute /usr/bin/opera file execute /usr/bin/xdg-open file ioctl /dev/snd/\* 0-0xFFFFFFFFFFFFFFFF file ioctl /dev/video0 0-0xFFFFFFFFFFFFFFFF file ioctl anon_inode:inotify 0x541B file ioctl socket:[family=1:type=2:protocol=0] 0x8910 file ioctl socket:[family=1:type=2:protocol=0] 0x8933 file ioctl socket:[family=2:type=1:protocol=6] 0x541B file ioctl socket:[family=2:type=2:protocol=17] 0x541B file ioctl socket:[family=2:type=2:protocol=17] 0x8912 file ioctl socket:[family=2:type=2:protocol=17] 0x8927 file ioctl socket:[family=2:type=2:protocol=17] 0x8B01 file ioctl socket:[family=2:type=2:protocol=17] 0x8B1B file ioctl socket:[family=2:type=2:protocol=17] 0x8B15 file ioctl socket:[family=2:type=2:protocol=17] 0x8B05 file link/rename /home/\*/.cache/fontconfig/\* /home/\*/.cache/fontconfig/\* file mkdir /home/\*/.cache/fontconfig/\* 0600 file mkdir @SKYPE_DIRS 0700-0777 file mksock /tmp/qtsingleapp-\* 0755 file read /dev/urandom file read/write/unlink/truncate /dev/shm/pulse-shm-\* file read /etc/fonts/conf.avail/\*.conf file read /etc/fonts/conf.d/\*.conf file read /etc/fonts/fonts.conf file read /etc/group file read /etc/host.conf file read /etc/hosts file read /etc/machine-id file read /etc/nsswitch.conf file read /etc/resolv.conf file read /home/\*/.ICEauthority file read /home/\*/.XCompose file read /home/\*/.Xauthority file read /home/\*/.Xdefaults file read /home/\*/.fontconfig/\* file read /home/\*/.config/fontconfig/\* file read /home/\*/.config/pulse/cookie file read /usr/lib/locale/locale-archive file read /usr/lib32/gconv/UTF-16.so file read /usr/lib32/gconv/gconv-modules file read /usr/lib32/libv4l/v4l2convert.so file read /usr/lib32/libv4l/plugins/libv4l-mplane.so file read /usr/lib32/pulseaudio/libpulsecommon-5.0.so file read /usr/lib32/qt/plugins/bearer/libq\*bearer.so file read /usr/lib32/qt/plugins/iconengines/libqsvgicon.so file read /usr/lib32/qt/plugins/imageformats/libq\*.so file read /usr/lib32/qt/plugins/inputmethods/libqimsw-multi.so file read /usr/lib32/skype/skype file read /usr/share/X11/locale/\*/Compose file read /usr/share/X11/locale/\*/XLC_LOCALE file read /usr/share/X11/locale/compose.dir file read /usr/share/X11/locale/locale.alias file read /usr/share/X11/locale/locale.dir file read /usr/share/alsa/alsa.conf file read /usr/share/alsa/cards/\*.conf file read /usr/share/alsa/pcm/\*.conf file read /usr/share/fonts/\*/\*/\* file read /usr/share/locale/\*/LC_MESSAGES/\*.mo file read /usr/share/ca-certificates/mozilla/\*.crt file read /var/cache/fontconfig/\*.cache-4 file read @ICONS_FILES file read proc:/sys/vm/overcommit_memory file read /sys/devices/\*/\*/\*/\*/\*/modalias file read /sys/devices/\*/\*/\*/\*/\*/video4linux/video0/dev file read /sys/devices/\*/\*/\*/\*/idProduct file read /sys/devices/\*/\*/\*/\*/idVendor file read /sys/devices/\*/\*/\*/\*/speed file read /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq file read /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq file read /sys/devices/system/cpu/online file read/write /dev/snd/\* file read/write /dev/video0 file read/write/truncate /home/\*/.config/Trolltech.conf file read/write/unlink /home/\*/.cache/fontconfig/\* file read/write/unlink /tmp/qtsingleapp-\* file read/write/unlink/truncate @SKYPE_FILES file rename @SKYPE_DIRS @SKYPE_DIRS file rename @SKYPE_FILES @SKYPE_FILES file rmdir @SKYPE_DIRS misc env \* network inet dgram bind 0.0.0.0 0-65535 network inet dgram bind 127.0.0.1 0 network inet dgram bind/send 0.0.0.0-255.255.255.255 0-65535 network inet stream bind/listen 0.0.0.0 0-65535 network inet stream connect 0.0.0.0-255.255.255.255 0-65535 network unix stream bind/listen/connect /tmp/qtsingleapp-\* network unix stream connect /tmp/.ICE-unix/\* network unix stream connect /var/run/dbus/system_bus_socket network unix stream connect /var/run/nscd/socket network unix stream connect \000/tmp/.ICE-unix/\* network unix stream connect \000/tmp/.X11-unix/X0 network unix stream connect \000/tmp/dbus-\* network unix stream connect /run/user/1000/pulse/native <kernel> /usr/lib32/skype/skype /usr/bin/xdg-open use_profile 0 use_group 0 <kernel> /usr/lib32/skype/skype /usr/bin/gnome-open use_profile 0 use_group 0 <kernel> /usr/lib32/skype/skype /usr/bin/notify-send use_profile 0 use_group 0
- По окончанию редактирования перезагрузите конфигурационные файлы TOMOYO, выполнив команды:
# tomoyo-loadpolicy -df < /etc/tomoyo/domain_policy.conf # tomoyo-loadpolicy -ef < /etc/tomoyo/exception_policy.conf
Теперь Skype в песочнице.
Заметьте, что данные настройки созданы для 64-битной системы Arch, и некоторые из ваших ioctls и путей библиотек могут отличаться от указанных выше. Итак, что бы довести до ума ваши настройки TOMOYO для Skype загрузите демон tomoyo-auditd
:
# systemctl start tomoyo-auditd
Затем отправляйтесь в папку /var/log/tomoyo
и наблюдайте за reject_003.log
:
$ tail -f reject_003.log
Вывод данной команды продемонстрирует вам отброшенные действия Skype, так что вы сможете добавить их в файл domain_policy.conf
если потребуется.
Посмотрите [2] для детализированной инструкции настройки TOMOYO.
Доступ к полученным файлам
По умолчанию skype
хранит полученные файлы с допуском 600 (только владелец имеет доступ к ним). Можно использовать incron для автоматического доступа к скачиваемым файлам.
Делаем папки home и download доступными Skype:
# chmod 755 /home/skype /home/skype/downloads
Установим incron из пакета incron доступного в официальных репозиториях, активируем и запустим incrond
используя systemd.
Откроем incrontab для пользователя root:
# incrontab -e
Добавим задание incron:
/home/skype/downloads IN_CREATE chmod 644 $@/$#
Сохраним изменения и выйдем из редактора incrontab.
Для проверки работоспособности incron просто войдите в папку skype/donwload и создайте тестовый файл:
# cd /home/skype/downloads # install -m 600 /dev/null test.txt # ls -l test.txt
Права на фал должны быть 644 или -rw-r--r--
(По желанию) симлинкуйте папку skype/download в папку home:
$ ln -s /home/skype/downloads ~/skype_files
Sandfox
sandfoxAUR включает профиль, который позволяет запускать Skype в chroot. Вам также может очень захотеться установить sandfox-extrasAUR[ссылка недействительна: сохранено в aur-mirror] для слаженной работы с systemd.
В случае проблем проверьте связи с профилем #AppArmor или запустите (от имени суперпользователя):
$ sandfox --verbose skype
Плагин Skype для Pidgin
Смотрите раздел Pidgin (Русский)#Плагин Skype.