Skype (Русский) - ArchWiki

# Skype (Русский)

Эта страница нуждается в сопроводителе

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

## Skype

Skype — бесплатное программное обеспечение с закрытым кодом, обеспечивающее шифрованную голосовую связь через Интернет между компьютерами (VoIP), а также платные услуги для связи с абонентами обычной телефонной сети. Возможна организация конференц-связи (до 25 абонентов, включая инициатора), передача текстовых сообщений и файлов, а также видеосвязь.

### Установка Skype

Установите skype из официального репозитория или добавьте репозиторий 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: это отличная, свободная, открытая и лёгкая в освоении альтернатива гегемонии 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-OSS Sound (Pre-2.0)

Если у вас есть последняя версия Skype, то OSS не будет работать, что и не нужно; посмотрите на "важные заметки" в начале этой страницы. Вариант B предпочтительнее, чем другие варианты. При варианте B можно использовать Skype и другие программы воспроизведения звука тоже. При варианте C вы можете сделать это, но вариант B проще в настройке.

##### А. С OSS или эмуляция OSS в ядре для ALSA

Запустите "Skype" и убедитесь, что другие программы не используют вашу звуковую карту. Если вы хотите использовать Skype и другие программы, использующие звук, посмотрите на вариант B.

##### B. Обеспечение работы ALSA + DMIX в Skype

Для начала, вы должны установить пакет alsa-oss из репозитория:

    # pacman -S alsa-oss

Добавьте следующие строки в "~ /.asoundrc" (файл ".asoundrc" в вашем домашнем каталоге) Если файл не существует, просто создайте его!:

Обратите внимание: Большое спасибо за это Lorenzo Colitti!

    # .asoundrc to use skype at the same time as other audio apps like xmms
    #
    # Successfully tested on an IBM x40 with i810_audio using Linux 2.6.15 and
    # Debian unstable with skype 1.2.0.18-API. No sound daemons (asound, esd, etc.)
    # running. However, YMMV.
    #
    # For background, see:
    #
    # https://bugtrack.alsa-project.org/alsa-bug/view.php?id=1228
    # https://bugtrack.alsa-project.org/alsa-bug/view.php?id=1224
    #
    # (C) 2006-06-03 Lorenzo Colitti - http://www.colitti.com/lorenzo/
    # Licensed under the GPLv2 or later
    pcm.skype {
       type asym
       playback.pcm "skypeout"
       capture.pcm "skypein"
    }
    pcm.skypein {
      # Convert from 8-bit unsigned mono (default format set by aoss when
      # /dev/dsp is opened) to 16-bit signed stereo (expected by dsnoop)
      #
      # We can't just use a "plug" plugin because although the open will
      # succeed, the buffer sizes will be wrong and we'll hear no sound at
      # all.
      type route
      slave {
         pcm "skypedsnoop"
         format S16_LE
      }
      ttable {
         0 {0 0.5}
         1 {0 0.5}
      }
    }
    pcm.skypeout {
      # Just pass this on to the system dmix
      type plug
      slave {
         pcm "dmix"
       }
    }
      pcm.skypedsnoop {
        type dsnoop
        ipc_key 1133
        slave {
           # "Magic" buffer values to get skype audio to work
           # If these are not set, opening /dev/dsp succeeds but no sound
           # will be heard. According to the alsa developers this is due
           # to skype abusing the OSS API.
           pcm "hw:0,0"
           period_size 256
           periods 16
           buffer_size 16384
          }
        bindings {
           0 0
        }
     }

Если после этого вы увидите сообщение об ошибке:

    The dmix plugin supports only playback stream

Тогда добавьте следующее в ваш .asoundrc:

    pcm.asymed {
            type asym
            playback.pcm "dmix"
            capture.pcm "dsnoop"
    }
    pcm.!default {
            type plug
            slave.pcm "asymed"
    }

Теперь запускайте Skype, таким образом, каждый раз, когда вы хотите его использовать:

    # ALSA_OSS_PCM_DEVICE="skype" aoss skype

При желании вы можете создать сценарий, для запуска Skype:

В режиме суперпользователя, создайте файл: /usr/bin/askype:

    # Little script to run Skype correctly using the modified .asoundrc
    # See: https://wiki.archlinux.org/index.php/Skype for more information!
    #
    # Questions/Remarks: profox@debianbox.be
    ALSA_OSS_PCM_DEVICE="skype" aoss skype

Теперь убедитесь, что каждый пользователь имеет права на исполнение файла:

    # chmod a+x /usr/bin/askype

Вы также можете исправить пункт меню, чтобы вы могли запускать Skype из меню WM: Отредактируйте файл: /usr/share/applications/skype.desktop

    [Desktop Entry]
    Name=Skype
    Comment=P2P software for high-quality voice communication
    Exec=askype
    Icon=skype.png
    Terminal=0
    Type=Application
    Encoding=UTF-8
    Categories=Network;Application;

Иногда для запуска Skype требуется время, но как только он запустится все должно работать!

##### C. Использование OSS эмуляцию oss2jack

Oss2jack это еще один способ для OSS эмуляции без использования ALSA напрямую. Вместо этого, oss2jack создает устройство OSS, чтобы JACK (Jack Audio Connection Kit) затем выводит на стандартное устройство ALSA. Для получения дополнительной информации по настройке, пожалуйста, обратитесь к Allow_multiple_programs_to_play_sound_at_once#ALSA_with_oss2jack.

## Безопасность 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 из AUR включает профиль, что позволяет запускать Skype в chroot. Вам так же может очень захотеться установить sandfox-extrasAUR для слаженной работы с systemd.

В случае проблем, проверьте связи с профилем #AppArmor, или запустите (с sudo):

    $ sandfox --verbose skype

## Skype плагин для Pidgin

Смотри Pidgin_(Русский)#Skype.

Categories:

- Русский
- Audio/Video (Русский)
- Telephony and voice (Русский)