Skype (Русский)

From ArchWiki
Jump to: navigation, search

Tango-preferences-desktop-locale.pngЭта страница нуждается в сопроводителеTango-preferences-desktop-locale.png

Статья не гарантирует актуальность информации. Помогите русскоязычному сообществу поддержкой подобных страниц. См. Команда переводчиков ArchWiki

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.

apulseAURlib32-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,
}
Примечание: Данный пример подразумевает что Skype настроен сохранять полученные файлы в ~/Public. Вы можете свободно менять её под ваши параметры.

Для использования профиля, удостоверьтесь что 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 запустив: /usr/lib/tomoyo/init_policy
  • Откройте файл /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 для автоматического доступа к скачиваемым файлам.

Примечание: Этот пример подразумевает, что ваши скачанные файлы skype кладёт в /home/skype/downloads

Делаем папки 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.