Owncloud + Nginx(ssl) + Postgresql
Merhabalar, bu yazıda owncloud, nginx, postgresql kurulumu-yapılandırılmasının nasıl olduğunu anlatmaya çalışacağım.
Eger bir vps satin alip yukleme islemini direk vps ‘e yapmak isterseniz, burayi kullanabilirsiniz. Linke tiklayip uye olursaniz $10 krediye sahip olabilirsiniz ve 2 ay ucret odemeden kullanabilirsiniz.
İlk olarak Debian ‘ın kendi depoları yerine her paketin kendi depolarını kullanmayı tercih ettim. Nedeniyse daha güncel olmasıdır. Şimdi sırasıyla paketleri kuralım.
1. Postgresql kurulumu
echo ‘deb http://apt.postgresql.org/pub/repos/apt/ wheezy-pgdg main’ >> /etc/apt/sources.list.d/postgresql.list
wget –quiet -O – https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add –
apt-get updateapt-get install postgresql-9.3
pg_createcluster 9.3 main –start
2. Owncloud kurulumu
echo ‘deb http://download.opensuse.org/repositories/isv:/ownCloud:/community/Debian_7.0/ /’ >> /etc/apt/sources.list.d/owncloud.list
wget http://download.opensuse.org/repositories/isv:ownCloud:community/Debian_7.0/Release.key
apt-key add – < Release.key
apt-get update
apt-get install owncloud
3. Nginx kurulumu
echo ‘deb http://nginx.org/packages/debian/ wheezy nginx’ >> /etc/apt/sources.list.d/nginx.list
echo ‘deb-src http://nginx.org/packages/debian/ wheezy nginx’ >> /etc/apt/sources.list.d/nginx.list
wget http://nginx.org/keys/nginx_signing.key && apt-key add nginx_signing.key
apt-get update
apt-get install nginx
apt-get install php5-fpm
Kurulum işleri sorunsuz bittiyse yapılandırmaya geçelim.
a. Postgresql yapılandırılması.
su – postgres
psql
postgres=# \password postgres
Enter new password:
Enter it again:postgres@debian:~$ psql template1
template1=# CREATE USER own WITH PASSWORD ‘123456’;
CREATE ROLE
template1=# CREATE DATABASE owncloud;
CREATE DATABASE
template1=# GRANT ALL PRIVILEGES ON DATABASE owncloud to own;
GRANT
template1=# \q
exit
Yapılan işlemlere göre Postgresql bilgileri aşağıdaki gibidir.
kullanıcı adı : own
veritabanı adı : owncloud
şifresi : 123456
b. Nginx yapılandırılması
#owncloud.conf dosyası oluşturalım
vim /etc/nginx/conf.d/owcloud.conf#Aşagıdaki parametleri ekleyelim ve kendinize göre düzenleyelim.
upstream php-handler {
server 127.0.0.1:9000;
# server unix:/var/run/php5-fpm.sock;
}server {
listen 8080;
server_name cloud.murat.ws;
return 301 https://$server_name$request_uri; # enforce https
}server {
listen 443 ssl;
server_name cloud.murat.ws;ssl_certificate /etc/nginx/ssl/cloud.crt;
ssl_certificate_key /etc/nginx/ssl/cloud.key;# Path to the root of your installation
root /var/www/owncloud/;client_max_body_size 50G; # set max upload size
fastcgi_buffers 64 4K;rewrite ^/caldav(.*)$ /remote.php/caldav$1 redirect;
rewrite ^/carddav(.*)$ /remote.php/carddav$1 redirect;
rewrite ^/webdav(.*)$ /remote.php/webdav$1 redirect;index index.php;
error_page 403 /core/templates/403.php;
error_page 404 /core/templates/404.php;location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}location ~ ^/(data|config|\.ht|db_structure\.xml|README) {
deny all;
}location / {
# The following 2 rules are only needed with webfinger
rewrite ^/.well-known/host-meta /public.php?service=host-meta last;
rewrite ^/.well-known/host-meta.json /public.php?service=host-meta-json last;rewrite ^/.well-known/carddav /remote.php/carddav/ redirect;
rewrite ^/.well-known/caldav /remote.php/caldav/ redirect;rewrite ^(/core/doc/[^\/]+/)$ $1/index.html;
try_files $uri $uri/ index.php;
}location ~ ^(.+?\.php)(/.*)?$ {
try_files $1 = 404;include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$1;
fastcgi_param PATH_INFO $2;
fastcgi_param HTTPS on;
fastcgi_pass php-handler;
}# Optional: set long EXPIRES header on static assets
location ~* ^.+\.(jpg|jpeg|gif|bmp|ico|png|css|js|swf)$ {
expires 30d;
# Optional: Don’t log access to assets
access_log off;
}}
Nginx için Self-Signed SSL Sertifikasi oluşturma
mkdir /etc/nginx/ssl
cd /etc/nginx/sslopenssl genrsa -des3 -out cloud.key 1024
# İstediğimiz bir şifreyi yazalım
Enter pass phrase for cloud.key:
Verifying – Enter pass phrase for cloud.key:# girmiş olduğumuz şifreyi tekrar girelim
openssl req -new -key cloud.key -out cloud.csropenssl rsa -in cloud.key.org -out cloud.key
openssl x509 -req -days 365 -in cloud.csr -signkey cloud.key -out cloud.crt
Sertifikamızı oluşturma işlemi bitti.
vim /etc/php5/fpm/pool.d/www.conf dosyasını aşağıdaki gibi düzenleyin.
;listen = /var/run/php5-fpm.sock
listen = 127.0.0.1:9000
şimdi nginx servisi yeniden başlatalım.
/etc/init.d/nginx restart
Buraya kadar hata almadıysanız https://sunucu_adi diyerek aşağıdaki ekran görüntüsünü almanız gerekiyor.
Bu ekrandan Advanced tıklayıp Postgresql seçip belirtmiş olduğunuz postgresql kullanıcı adı ve şifrenizi giriniz ve Finish Setup tıklayınız.
Herhangi bir hata almadıysanız aşağıdaki ekran görüntüsüyle karşılacaksınız.
Max Upload limitini arttırmak:
Default olarak 2Mb upload limiti ile gelmektedir.
vim /etc/php5/fpm/php.ini dosyasıni metin editörü ile açıp aşağıdaki değişikleri yapınız.
upload_max_filesize = 50G
post_max_size = 50G
Benim kullanıdığım limit 50Gb oldu, kendinize göre düzenleyebilirsiniz.
son olarak servis yeniden başlatılır.
/etc/init.d/php5-fpm restart
Iphone için owncloud ekran görüntüsü
OwnCloud demo : http://demo.owncloud.org/
Kaynaklar :
http://doc.owncloud.org/server/6.0/admin_manual/installation/installation_source.html
http://nginx.org/en/docs/
http://www.postgresql.org/download/linux/debian/
Kaynak belirtilerek kopyalanabilinir.
Comments
Leave a Comment