OwnCloud
Created Monday 07 December 2015 https://owncloud.org/install/http://help.ubuntu.ru/wiki/owncloudhttp://socengine.ru/owncloud
https://www.opennet.ru/opennews
ownCloud open-source software для синхронизации данных, предоставление общего доступа к файлам и удалённого хранения документов в «облаке».
ownCloud написан на языках программирования PHP и JavaScript. OwnCloud предназначен для работы с несколькими системами управления базами данных, такими как: SQLite, MariaDB, MySQL, Oracle Database, и PostgreSQL.
ownCloud бесплатная альтернатива коммерческим сервисам по хранению данных. Доступны десктопные клиенты для прямой синхронизации данных с ПК, работающих под управлением Windows, Mac OS или Linux, а также мобильных устройств на iOS и Android, сохраненные данные доступны с помощью веб-интерфейса OwnCloud в любом веб-браузере.
ownCloud был добавлен в репозиторий Debian GNU Linux и интегрирован в рабочий стол Gnome.
Возможности:
Хранение файлов с использованием обычных структур каталогов, или с использованием WebDAV
Криптография
Синхронизация между клиентами под управлением Windows (Windows XP, Vista, 7 и 8), Mac OS X (10.6 и новее) или Linux
Календарь (также как CalDAV)
Планировщик задач
Адресная книга (также как CardDAV)
Потоковое мультимедиа (используется Ampache) <-----beta
Администрирование пользователей и групп (с использованием OpenID или LDAP)
Отслеживание активности пользователей, редактирование прав на доступ к файлам для конкретных пользователей, групп или интернета
Предоставление общего доступа к файлам между группами или используя публичные URL
Онлайн текстовый редактор с подсветкой синтаксиса и сворачиванием
Закладки
Механизм сокращения URL
Использование cURL
Фотогалерея
Просмотрщик PDF (используется PDF.js)
Просмотрщик ODF файлов (.odt, .odp, .ods), при наличии на сервере LibreOffice (файлов с расширениями msOffice)
Модуль логирования
Поддержка внешних хранилищ: Google Drive, Dropbox, FTP, SMB, WebDAV, Amazon S3, IRODS, OpenStack Object Storage, а так же локальных
На момент написания статьи релиз: owncloud-8.2.1: wget https://download.owncloud.org/community/owncloud-8.2.1.tar.bz2
https://download.owncloud.org/community/ можно выбрать и более "свежее".
По скольку предпологается использовать облако на платформе Debian, необходимо произвести его не хитрую установку на сервер, ставим чистый Debian без GUI и прочей .....: устанавливаемое програмное обеспечение:
SSH-сервер
Стандартные системные утилиты
Создаем пользователя:
# adduser <user> (# useradd -d /export/home/user -m -s /bin/bash user)
adduser [--home DIR] [--shell SHELL][--no-create-home][--uid ID][--firstuid ID][--lastuid ID][--gecos GECOS][--ingroup GROUP | --gid ID][--disabled-password][--disabled-login] USER
Add a normal user
# cat /etc/passwd
# su - username
Добавляем sudo, и пользователя в группу sudo:
#apt-get install sudo
#gpasswd -a [имя пользователя] [sudo]
#groups [имя пользователя] #участник групп
# nano /etc/sudoers
...лучше так на всякийслучай (..а может и не стоит "так", в зависимости как относиться к безопасности):
$ sudo visudo /etc/sudoers
# User privilege specification
root ALL=(ALL:ALL) ALL
user ALL=(ALL:ALL) ALL
Отличие между sudo -i и sudo su:
sudo su — полностью выполняется от root.
sudo -i — логин эмулируется
$ sudo -i
# id
uid=0(root) gid=0(root) groups=0(root)
$ sudo su
# id
uid=0(root) gid=0(root) groups=0(root)
В /etc/ssh/sshd_config меняем:
#Authentication:
PermitRootLogin no
AllowUsers <....users-login.....>
Запретив тем самым логиниться под root, и разрешив пользоваться SSH, только определенным пользователям.
$ sudo service ssh stop ...start ...restart
#/etc/init.d/ssh start ....stop ....restart
BSD
#pkg install sudo
или: #cd /usr/ports/security/sudo && make install clean
#pw group add sudo
#pw groupmod sudo -m <user>
#pw groupmod wheel -m <user>
#pw groupshow <....>
# cd /usr/local/etc
# chmod u+w sudoers
# vim sudoers
...........
root ALL=(ALL) ALL
user ALL=(ALL) ALL
...........
# exit
$ sudo mc
http://citforum.ru/operating_systems/freebsd/groups4.shtml
http://dev-blogs.com/sudo-user-in-freebsd/
https://www.freebsd.org/doc/users-synopsis.html
Solaris 10 & 11
pkgadd -d http://get.opencsw.org/now
/opt/csw/bin/pkgutil -U
/opt/csw/bin/pkgutil -y -i sudo
/usr/sbin/pkgchk -L CSWsudo # list files
========== SSH - Solaris ===========
To check if the service is online or offline:
# svcs -v ssh
online - 12:23:17 115 svc:/network/ssh:default
To stop the service:
#svcadm disable network/ssh
To start the service:
#svcadm enable network/ssh
To restart the service:
# svcadm restart network/ssh
Sudoers
Created Sunday 08 October 2023
Редактирование файла /etc/sudoers с помощью sudo visudo это правильно но не совсем, начиная с sudo 1.7.2p1-1
файл включает в себя строку: @includedir /etc/sudoers.d , — это директория с единственным файлом (директория не может быть пустой!) README, ее смысл в хранении дополнительных файлов для Sudoers, преимуществом является:
файлы в директории не подвержены изменениям в результате обновлений, избежание ошибок при редактировании "/etc/sudoers" с помощью "sudo visudo" и наверное с точки зрения разработчиков является более безопасным. Что бы добавить файл в директорию /etc/sudoers.d не требуется ни чего кроме прав, например команда:
$ echo "$USER ALL=(ALL:ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/dont-prompt-$USER-for-sudo-password
создаст файл; /etc/sudoers.d/dont-prompt-<USERNAME>-for-sudo-password , следующего содержания;
<USERNAME> ALL=(ALL:ALL) NOPASSWD: ALL
что в свою очередь будет учитываться Sudoers, можно так же заметить что добавление подобной записи в /etc/sudoers с помощью sudo visudo, в Debian 12. не привело к желаемым результатам, в отличии от добавления файла в /etc/sudoers.d
Далее установка самого облака:
Установка, за исключением деталей мало чем отличается от стандартной установки WEB сервера на WordPress или Joomla.
Скачиваем owncloud: wget https://download.owncloud.org/community/owncloud-8.2.1.tar.bz2
Стандартная установка Apache: $ sudo aptitude install apache2 php5 php5-mysql mysql-server
если ставить owncloud-9.1.2 , то возможно потребует php 7.0
если ставить php, как модуль apache, то так: # aptitude install php7.0 libapache2-mod-php7.0
доставить модули:
#apt-get install php7.0-intl php7.0-curl
#apt-get install php7.0-gd
#apt-get install php7.0-mysql
#apt-get install php7.0-zip
#apt-get install php7.0-xml
#apt-get install php7.0-mbstring
Копируем в /var/www/: $ sudo cp owncloud-8.2.1.tar.bz2 /var/www/
Меняем директорию: $ cd /var/www/
$ ls
$ html owncloud-8.2.1.tar.bz2
Распаковываем: $ sudo tar xf owncloud-8.2.1.tar.bz2
Меняем пользователя: $ sudo chown -R www-data:www-data owncloud
Проверяем:
$ ls -al
drwxr-xr-x 13 www-data www-data 4096 ноя 17 19:36 owncloud
-rw-r--r-- 1 root root 26444342 дек 9 13:25 owncloud-8.2.1.tar.bz2
Меняем директорию: $ cd /etc/apache2/sites-available
Создаем в доступных сайтах owncloud.conf
$ sudo touch owncloud.conf
$ sudo mc
F4 ---> owncloud.conf
Заполняем примерно таким содержанием (и возможно лучше взять дефолтный конфиг и соответствующе отредактировать, но я сделал так ,.... )
<VirtualHost *:80>
ServerName owncloud
DocumentRoot /var/www/owncloud
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Активируем сайт, и деактивируем 000-default:
$ sudo a2ensite owncloud
$ sudo a2dissite 000-default
$ sudo service apache2 reload
По скольку owncloud использует .htaccess,
Отредактируем /etc/apache2/apache2.conf, изменив AllowOverride None:
$ sudo mc
/etc/apache2/
F4 ---> apache2.conf
#Directory /var/www/
Options Indexes FollowSymLinks
AllowOverride None на AllowOverride All
Require all granted
При необходимости отредактировать /etc/hosts:
$ sudo mc
/etc/hosts
F4 ---> hosts
127.0.0.1 owncloud
$ sudo reboot
Заходим на OwnCloud:
http://<.....site-name......>/
Для удобства работы с БД, и на радость гавно-хакерам устанавливаем phpmyadmin:
$ sudo apt-get install phpmyadmin (* а можно и не доставлять им радость и использовать Postgre )
Для просмотра и редактирования on line:.... .odt, .doc, .docx и тд., установить libreoffice:
$ sudo apt-get install libreoffice -y
Или так:
#sudo apt install software-properties-common
#Cредства управления используемыми APT-репозиториями, управляет как дистрибутивом, так и независимыми репозиториями программ.
#sudo add-apt-repository ppa:libreoffice/ppa && sudo apt-get update
#sudo apt-get install libreoffice -y
Русский офис:
#apt-cache search libreoffice-help #посмотреть что есть вообще
#apt-get install libreoffice-l10n-ru #установить
(ключ "-y" отвечать «Да» на все вопросы, сами вопросы при этом не выводить) На вкладке "Администрирование" выбрать соответствующий пункт.
Для возможности работы с Desktop-клиентами, активировать mod dav и mod dav_fs (WebDAV)
$ sudo a2enmod dav
$ sudo a2enmod dav_fs
$ sudo service apache2 restart
Собственно все! для начальной установки будет достаточно
********************************************
Для работы с LDAP необходимо доставить: $ sudo apt-get install php5-ldap
Для Samba доставить: $ sudo apt-get install smbclient
А вообще, из документации, что необходимо и, что желательно установить:
Prerequisites:
To run ownCloud, your webserver must have the following installed:
php5 (>= 5.3)
php5-gd
php-xml-parser
php5-intl
And as optional dependencies:
php5-sqlite (>= 3)
php5-mysql
smbclient
curl
libcurl3
php5-curl
http://grossfunk.de/tmp-owncloud1365510601/owncloud
*******************************************
Возможна ошибка связанная с webDAV, при создании пользователя говорит, что не возможно поскольку пользователь уже существует, решена удалением(деактивацией) модуля webDAV из панели управления, кроме того webDAV и LDAP не совместимы,
вот тут о том же ---------------> https://forum.owncloud.org/viewtopic.php?t=7444
*******************************************
Объединённые хранилища (Federated Cloud). Если раньше пользователи разных серверов ownCloud могли обмениваться данными через ссылки, то теперь появилась возможность создания общих папок, совместно используемых разными серверами. Для предоставления доступа к данным вместо отправки ссылки теперь можно напрямую сформировать запрос к пользователю другого экземпляра ownCloud. После отправки такого запроса внешний пользователь получит уведомление о предоставлении совместного доступа к файлу, после чего имеет возможность принять или отклонить операцию.
========================================================================
02.06.2016 12:45 Основатель и ключевые разработчики ownCloud создали форк проекта
Фрэнк Карличек (Frank Karlitschek), создатель облачной платформы ownCloud, который несколько недель назад, ссылаясь на моральные обязательства перед сообществом, покинул компанию ownCloud Inc, объявил о создании форка проекта. К новому проекту, который будет развиваться под именем Nextcloud, также присоединились наиболее активные ключевые разработчики ownCloud и большая часть технического персонала ownCloud Inc. Для сопровождения проекта создана новая компания Nextcloud GmbH. В ближайшее время планируется выпустить релиз NextCloud 9, который можно будет использовать в качестве прозрачной замены ownCloud 9.
..............http://www.opennet.ru/opennews/art.shtml?num=44537
========================================================================
http://homenas.ru/forum/viewtopic.php?f=4&t=243
Что бы выполнить обновление(если оно загружено конечно), зайти в папку с owncloud и выполнить: # sudo -u www-data php occ upgrade
Ubuntu_16.04 owncloud-9.1.2-1.1
You can add the repository key to apt. Keep in mind that the owner of the key may distribute updates, packages and repositories that your system will trust (more information). Run the following shell commands as root to trust the repository:
#wget -nv https://download.owncloud.org/download/repositories/stable/Ubuntu_16.04/Release.key -O Release.key
#apt-key add - < Release.key
Run the following shell commands as root to add the repository and install from there.
#sh -c "echo 'deb http://download.owncloud.org/download/repositories/stable/Ubuntu_16.04/ /' > /etc/apt/sources.list.d/owncloud.list"
#apt-get update apt-get install owncloud
https://download.owncloud.org/download/repositories/stable/owncloud/
Не стоит обольщаться по поводу всей этой "срани" типа OwnCloud и NextCloud, до поры до времени, то есть до определенного количества клиентов (не большого), все это более менее работает, потом начнуться проблемы, для не большого офиса по продаже трусов и калготок, в качестве файлового сервера вполне сойдет, но не более.
***И конечно если испольовать, то надо использовать Postgre.
OffTop
В качестве платформы используется Proxmox VE 4.3 и LXC
1. Установка СТ из шаблона: debian8.0standard_8.61_amd64.tar.gz
2. # aptitude update && aptitude upgrade
3. # apt-get install sudo # если не стоит
4. Добавление пользователя + добавление его в группу sudo:
# adduser --ingroup sudo [user]
# cat /etc/passwd #проверяем
# groups user #проверяем
5. Настройка SSH
# nano /etc/ssh/sshd_config
#Authentication:
PermitRootLogin no
AllowUsers <....users-login.....>
..............................
X11Forwarding yes
# раскоментировать для возможности использования Xming
# service ssh restart
6. PUTTY
7. #locale #Проверить Текущую Локаль
или:
#locale -a #Проверить Текущую Локаль
#nano /usr/share/i18n/SUPPORTED #Получить Список Доступных Локалей
#apt-get install console-cyrillic
#dpkg-reconfigure console-cyrillic #Если надо
#dpkg-reconfigure locales
#update-locale LANG=ru_RU.UTF-8
#reboot
#Просмотреть переменную
$ echo $LANG
ru_RU.UTF-8
$
Конечно есть простой и надежный способ: # nano /etc/default/locale
Видим: С
Заменяем на: LANG=ru_RU.UTF-8
Сама локаль должна быть, конечно.
#dpkg-reconfigure tzdata #Установить часовой пояс
$ sudo aptitude install mc
8. Если надо:
#locale-gen
#apt-get install keyboard-configuration
#dpkg-reconfigure keyboard-configuration
#service keyboard-setup restart
#apt-get install language-support-ru
#update-locale LANG=ru_RU.UTF-8
Для bash ----> /etc/profile:
LANG="ru_RU.UTF-8"; export LANG
LC_CTYPE="ru_RU.UTF-8"; export LC_CTYPE
LC_COLLATE="POSIX"; export LC_COLLATE
LC_ALL="ru_RU.UTF-8"; export LC_ALL
9. Установка X-Server: # если не стоит, в шаблоне стоит
#aptitude install x-window-system
10. Установка xrdp # если нравится?, а если не нравится есть Putty + Xming , и конечно VNC (xrdp суть транслятор vnc в rdp, и особых преимуществ перед vnc клиентом не имеет, почему стоит выбрать: так проще для пользователей)
#apt-get install xrdp tightvncserver ## xrdp + vnc
#/etc/init.d/xrdp start ....stop ....restart
#service xrdp status...start ....stop ....restart
# service xrdp status
[ ok ] Checking status of Remote Desktop Protocol server: xrdp running.
[ ok ] Checking status of RDP Session Manager: sesman running.
#
11. mstsc.exe #проверяем
12. Установка GUI
#apt-get install xfce4 # если нравится ?
#apt-get install xfce4-goodies
#sudo apt-get install task-xfce-desktop
#apt-get install libreoffice-l10n-ru # русификация офиса
13. mstsc.exe #проверяем
14. Настройка русификации клавиатуры в Xrdp
Обшеизвесный косяк Xrdp в том, что в сессии sesman-Xvnc на русскую раскладку, даже после долгой пляски, переключиться скорее всего не выйдет, выход в постановке Xrdp + X11rdp, X11rdp собирается из исходников, причина проблем отсутствие библиотеки libxup.so, за основу инструкция (рабочая) взята отсюда: https://unixforum.org/index.php?showtopic=133976
Установить: $ sudo apt-get install make
Установить: $ sudo apt-get install xorg-dev [c зависимостями (типа x11proto-*-dev)]
Установить пакеты для компиляции X11rdp:
$ sudo apt-get install subversion gcc libice-dev pkg-config zlib1g-dev cvs autoconf libtool libssl-dev libpam0g-dev libx11-dev libxfixes-dev xfonts-base
Скачать исходники X11rdp из SVN под профилем пользователя (не root):
$ svn co svn://server1.xrdp.org/srv/svn/repos/main/x11rdp_xorg71 #текущая версия ревизии - 299
Создать каталог, где будут находиться все скомпилированные компоненты (владелец каталога должен быть root):
$ sudo mkdir /opt/X11rdp
Перейти в каталог с исходниками запустить компиляцию:
$ cd ~/x11rdp_xorg71
$ time sudo sh buildx.sh /opt/X11rdp # это не быстро (real 19m33.633s)
Создать симлинк в каталоге /usr/bin:
$ sudo ln -s /opt/X11rdp/bin/X11rdp /usr/bin/X11rdp
$ sudo /etc/init.d/xrdp start ....stop ....restart
Заити клиентом через: Module sesman-X11rdp (настройки в /etc/xrdp/xrdp.ini)
Цветовая гамма не более 16bit (для начала)
Все должно работать.
------------------------------------------------------------------------------------
http://mydebianblog.blogspot.ru/2011/03/debian-debian-gnulinux-in-true-debian.html
http://avreg.net/howto_x-org-server.html
https://habrahabr.ru/company/stss/blog/282852/
https://github.com/makinux-git/x11rdp-makinux <------X11rdp GIT
http://forum.ubuntu.ru/index.php?topic=197412.0
https://unixforum.org/index.php?showtopic=133976 <----------
PS:
Xming + PuTTY переключение раскладки
Прибить демона (Остановить сервер)
Запустить Xming через XLaunch, в 3-м окне по счету "Additional parameters" в поле "Additional parameters for Xming" ввести строчку:
-dpi 96 -xkblayout us,ru -xkbvariant winkeys -xkboptions grp:ctrl_shift_toggle
где: -dpi 96 (размер шрифта), -xkblayout us,ru (клавиатуры), -xkbvariant winkeys (уточнение раскладок), -xkboptions grp:ctrl_shift_toggle (сочетание клавиш для переключения)
В итоге будут две раскладки (русская и английская) и переключаться будут по ctrl+shift.
Настройка Putty
Для работы с Xming в режиме перенаправления графического вывода необходимо прописать в
Putty Configuration/SSH/X11:
активировать - Enable X11 forwarding
(в /etc/ssh/sshd_config строка: X11Forwarding yes должна быть раскоментирована )
X display указать номер дисплея (который указан при запуске XLaunch) например: localhost:0
Не забыть запускать Xming Server.
-------------------------------------------------------------------
# lxc-ls -f
# lxc-stop -n <№ контейнера>
# lxc-start -n <№ контейнера>
$ vncserver
$ netstat -nltp
$ vncserver -kill :1 (№ - сессии)
#/etc/init.d/xrdp start ....stop ....restart
-------------------------------------------------------------------
Mozilla Firefox:
# echo -n "deb http://mozilla.debian.net/ jessie-backports firefox-release" > /etc/apt/sources.list.d/firefox.list
# wget http://mozilla.debian.net/pkg-mozilla-archive-keyring_1.1_all.deb; dpkg -i pkg-mozilla-archive-keyring_1.1_all.deb
# aptitude install -t jessie-backports firefox firefox-l10n-ru
--------------------------------------------------------------------