Bulut depolama, bir şey olması ve bilgisayarınızın kaybolması veya zarar görmesi durumunda dosyalarınızı güvende tutmak için mükemmel bir yoldur. Dosyalarınıza yolda veya işten erişmenize ve aygıtlarınızda her şeyi senkronize etmenize yardımcı olur.
Cloud depolama olsa da, büyük bir dezavantaj ile geliyor. Tüm kişisel dosyalarınızda bazı şirketlere güvenmek zorundasınız. Eğer saldırıya uğrarlarsa ne olur? Gerçekten o kadar güvenilirler mi, yoksa bakmadığınızda eşyalarını mı geçiyorlar? Kesin olarak bilmek gerçekten mümkün değil.
Başka bir seçenek var. Nextcloud ile kendi bulut depolama alanınızı barındırabilirsiniz. Nextcloud, kendi bulut depolama şirketiniz olmanızı sağlayan açık kaynaklı bir bulut depolama çözümüdür. Kullanımı kolay ve temiz bir arayüze ve tüm cihazlarınız için eşlik eden uygulamalara sahiptir, bu nedenle bir kısmı hacklerle uğraşmazsınız.
Bu kılavuz Nextcloud'u bir VPS'de (Sanal Özel Sunucu) barındırmaya odaklanacak, ancak bunu yerel olarak ev ağınızda da çalıştırabilirsiniz. Bağlantı noktası yönlendirmeyi ayarlamadıysanız ya da bir VPN kullanmıyorsanız, dışarıdan erişmeyi beklemeyin. Adımlardan bazıları biraz farklı olabilir ve alan adı satın almanıza veya SSL sertifikaları ayarlamanıza gerek kalmaz.
Bir Ana Bilgisayar Seç
Hızlı Linkler
- Bir Ana Bilgisayar Seç
- İhtiyacınız Olanı Yükleyin
- Güvenlik Duvarınızı Kurun
- SSH'yi yapılandır
- SSH Anahtarları
- pencereler
- Mac ve Linux
- Kök ve Şifrelere İzin Verme
- SSH Anahtarları
- Veritabanınızı Yapılandırın
- PHP'yi yapılandır
- Nextcloud'u Alın
- SSL Sertifikaları Oluştur
- Nginx'i yapılandırın
- Nextcloud'u başlat
Gerçek bir bulut çözümüyle gideceğinizi ve dosyalarınızın Web üzerinden erişilebilir olmasını istediğinizi varsayarsak, Nextcloud'u barındırmak için bir VPS kurmanız gerekir. Orada harika seçenekler var, bu yüzden sizin için en iyi olanı seçin. Aklınızda bir ev sahibi yoksa, Linode, DigitalOcean ve Gandi'ye göz atın.
Bu kılavuz, sunucu işletim sistemi olarak Debian 9 “Stretch” kullanacaktır. Debian süper kararlı ve varsayılan olarak oldukça güvenlidir. Ayrıca çoğu barındırma platformu tarafından da desteklenmektedir. Ubuntu ile daha rahat ederseniz, bunların çoğu doğrudan orada da geçerli olacaktır, çünkü Ubuntu Debian'a dayanmaktadır.
Ayrıca sunucunuz için bir alan adı almanız gerekecek. Bu halka açık bir site olmayacağından, gerçekten istediğiniz herhangi bir şeyi yapabilirsiniz. Bir alan adı satın alma ve bağlama süreci her ana bilgisayar ve alan adı sağlayıcısı için farklıdır, bu nedenle seçtiğiniz hizmetlerin sağladığı belgeleri kontrol ettiğinizden emin olun.
Buradaki her şey Linux komut satırından uzaktan ele alınacak. Yani, Mac veya Linux kullanıyorsanız, VPS'nize erişmek için bir terminal açıp SSH'yi kullanabilirsiniz. Windows kullanıyorsanız, PuTTY gibi bir SSH istemcisi edinin .
İhtiyacınız Olanı Yükleyin
Bu bulmacanın bir çok parçası var. Hepsini şimdi alabilirsin, o yüzden buradan devam etmek için gerekenlere sahipsin. Debian genellikle varsayılan olarak sudo kurulu değildir, bu yüzden önce onu alın ve kurun.
$ su -c 'apt yükleme sudo'
Kök şifrenizi girin, Sudo yüklenecek. Ardından, kullanıcılarınızı sudo grubuna eklemeniz gerekir.
$ su -c 'gpasswd -a kullanıcı adı sudo'
Şimdi, sudo kullanabilirsiniz. Hemen işe yaramazsa, tekrar giriş yapmanız gerekebilir. Bu noktadan sonra, özellikle güvenlik amacıyla kök girişlerini devre dışı bırakacağınız için sudo kullanacaksınız.
Şimdi Debian'ın depolarından her şeyi al.
$ sudo uygun ufw mariadb-sunucu nginx certbot php php-mysql php-fpm php-cli php-json php-kıvrım php-imp php-gp php-xml php-zip php-intl php-mcrypt php-görüntü php-mbstring
Güvenlik Duvarınızı Kurun
Sunucunuz İnternette. Bunu yapmanın bir yolu yok ve bu, saldırganlarla ilgilenmeniz gerektiği anlamına geliyor. Basit bir güvenlik duvarı oluşturmak, birçok potansiyel tehdidin önlenmesine yardımcı olur.
Doğrudan iptables kullanmak yerine, sisteminizi güvence altına almak için UFW (Karmaşık Güvenlik Duvarı) kullanabilirsiniz. Daha basit bir sözdizimi vardır ve çalışmak çok daha kolaydır.
Güvenlik duvarındaki her şeyi devre dışı bırakarak başlayın. Bu, saldırganların unutulan bir limana bağlanamayacağından emin olarak, tüm servislere ve bağlantı noktalarına bağlantıları reddetmek için varsayılan politikayı belirleyecektir.
$ sudo ufw varsayılanı gelenleri reddeder
$ sudo ufw varsayılan çıkışını reddetti $ sudo ufw varsayılan çıkışını reddetme
Daha sonra, izin vermesini istediğiniz hizmetleri ufw'ye söyleyebilirsiniz. Bu durumda, yalnızca SSH ve web erişimine ihtiyacınız var. Ayrıca, sunucunuzun güncellemeleri alıp saatini ayarlayabilmesi için NTP ve DNS'yi etkinleştirmek isteyeceksiniz.
$ sudo ufw izin verme ssh $ sudo ufw izin verme ssh $ sudo ufw izin verme http $ sudo ufw izin verme http $ sudo ufw izin verme https $ sudo ufw izin verme https $ sudo ufw izin verme ntp $ sudo ufw izin verme ntp $ sudo izin verme UFW, 53 $ sudo izin verin UFW, 53 $ sudo izin verin UFW, 67 $ izin verin
Güvenlik duvarınızı şimdi başlatabilirsiniz. Size SSH'yi bozma konusunda bir uyarı verecektir, ancak zaten SSH'ye izin verdiniz, bu yüzden iyi olacaksınız.
SSH'yi yapılandır
SSH, Linux sunucularında en sık saldırıya uğramış servislerden biridir. Sunucudaki her şeyin ağ geçidi ve genellikle yalnızca bir şifre ile korunuyor. Bu nedenle, sunucunuzun SSH üzerinden saldırganların kolayca erişemeyeceğinden emin olmanız önemlidir.
SSH Anahtarları
Öncelikle, bir SSH anahtarı olan bir şifreye daha güvenli bir alternatif belirlemeniz gerekir. İşlem Windows'ta Mac ve Linux'takinden farklı, bu nedenle masaüstünüze uygun talimatları izleyin.
pencereler
Windows yolunda olduğu gibi, bu basit görevi tamamlamak için başka bir programa ihtiyacınız var. PuTTYgen, PuTTY için bir RSA anahtar üreticisidir. PuTTY indirme sayfasından ulaşılabilir. İndirin ve çalıştırın.
Açılan pencerede, anahtarınızı adlandırın ve bunun için bir şifre oluşturun. Sunucunuza giriş yapmak için kullanacağınız şifredir. Altta, SSH-2 RSA'yı seçin ve en az 2048 bitlik bir anahtar boyutu ayarlayın. 4096 daha iyi, ancak 2048 biraz daha hızlı olacak. Ardından, anahtarlarınızı oluşturun ve hem genel hem de özel anahtarları kaydedin. Son olarak, pencerenin üstünde görüntülenen ortak anahtarı kopyalayın.
Sunucunuza bağlanmak için PuTTY kullanın. ~ / .Ssh / yetkili_keys adresinde bir dosya açın ve anahtarınızı içeri yapıştırın.
PuTTY'ye geri dönün, yan menüden SSH'yi bulun. Ardından, “Auth” u açın. Pivate anahtarının bulunduğu alanda, yeni kaydettiğiniz özel anahtarın konumuna göz atın. PuTTY'deki her şey sunucunuz için ayarlandığında, oturumu kaydedin. Devam etmeden önce anahtarınızla bağlandığınızdan emin olmak için test edin.
Mac ve Linux
Mac ve Linux kullanıcıları burada daha kolay bir yol var. Zaten bir tane yoksa, bir SSH anahtarı oluşturarak başlayın. Anahtar için bir şifre oluşturma seçeneğiniz vardır. İsteğe bağlı, bu yüzden aramanız.
$ ssh-keygen -b 4096 -t rsa
Şimdi, anahtarınızı sunucunuza gönderin. Kullanıcı adınızı ve sunucunun IP adresini değiştirin.
$ ssh-copy-id -i ~ / .ssh / id_rsa.pub
Bu kadar!
Kök ve Şifrelere İzin Verme
Anahtarınızı ayarladıktan sonra, SSH için şifreleri devre dışı bırakabilirsiniz. Şifreli bir anahtar ayarladıysanız endişelenmeyin. Bu farklı bir şey ve bu onu hiç etkilemeyecek. SSH yapılandırma dosyasını / etc / ssh / sshd_config konumunda açın.
$ sudo nano / etc / ssh / sshd_config
Okuyan satırı bulun:
#PermitRootLogin yasak parola
Şuna değiştir:
PermitRootLogin no
Sonra, iki satırı bulun:
#PasswordAuthentication evet #PermitEmptyPasswords hayır
Onları değiştir:
Parola Kimlik Doğrulama yok PermitEmptyPasswords no
Sonunda bul:
UsePAM evet
Bunu yapmak:
UsePAM no
Dosyanızı kaydedin ve kapatın. Ardından, SSH'yi yeniden başlatın. Bu sizi atabilir, öyleyse tekrar bağlayın.
$ sudo systemctl sshd'yi yeniden başlatır
Veritabanınızı Yapılandırın
Yapmanız gereken bir sonraki şey veritabanınızı yapılandırmak. Burada gerçekten fazla bir şey yok, bu yüzden fazla endişelenmeyin. Nextcloud'un erişmesi için bir kullanıcı ve boş bir veritabanı oluşturmanız yeterlidir.
MariaDB'yi kurmak ve güvenliğini sağlamak için aslında uygun bir senaryo var. İlk önce onu çalıştır.
$ sudo Instagram Hesabındaki Resim ve Videoları mysql_secure_installation
Varsayılan root şifresi boştur, bu yüzden istendiğinde “Enter” dır. Daha sonra sizden bir root şifresi ayarlamanızı isteyecektir. Yap bunu. Takip eden her soruya “Evet” cevabını verin.
Veri tabanınıza yeni kurduğunuz root şifresi ile giriş yapabilirsiniz.
$ sudo mysql -u kök -p
Bilgi istemi MariaDB'ye geçecek. Bu, veritabanı sunucunuzu yönetmek için kullanılan konsoldur. Yeni bir veritabanı oluşturarak başlayın. Büyük harf kullanımı burada sayılır.
Nextcloud'da VERİTABANI OLUŞTURMA;
Ardından, bu veritabanı için bir kullanıcı yapın.
"PasswordForUser" TARAFINDAN KİMLİĞİ KULLANICI `nextcloud` @ localhost`;
Ardından, bu kullanıcıya veritabanını kullanma izni verin.
Nextcloud'yu HER ŞEY BEKLEYEN.
Bu kadar! Şimdi veritabanı sunucusundan çıkabilirsiniz.
PHP'yi yapılandır
Nextcloud PHP ile yazılmıştır. Debian Stretch'te mevcut olan en son PHP sürümünü ve Nextcloud'un düzgün çalışması için ihtiyaç duyduğu PHP uzantısını kurdunuz. Nginx ile daha kolay çalışmasını sağlamak için PHP yapılandırmanıza birkaç tweaks yapmanız gerekiyor.
Gerçekten sadece bazı temel güvenlik ayarlarına ihtiyaç duyuyor. Bunlar önemli bir şey değil, ancak sunucunuzun güvenliğini artırmanıza yardımcı olacak.
/Etc/php/7.0/fpm/php.ini dosyasını sudo ve en sevdiğiniz metin editörüyle açın.
Dosya çok büyük olduğundan gezinmek için editörünüzün arama işlevini kullanın. Nano kullanıyorsanız, Ctrl + W. Bulmanız gereken ilk seçenek disable_functions'dir. Sonunda phpinfo, system, mail, exec ekle ekleyin.
Ardından, sql.safe_mode dosyasını bulun ve açın. Daha sonra allow_url_fopen işlevini kapatın. Dosyanın sonuna, aşağıdaki satırı ekleyin, kaydedin ve kapatın.
Nextcloud'u Alın
Nextcloud henüz Debian için bir paket olarak mevcut değil ve sorun değil. Olmasına gerçekten ihtiyacın yok. WordPress gibi önceden oluşturulmuş diğer PHP web uygulamalarına çok benziyor ve Nextcloud'un kurulmasını istediğiniz yeri alabileceğiniz sıkıştırılmış bir arşivde geliyor.
Şu an itibariyle, en son kararlı sürüm Nextcloud'dur, bunu okurken sizin için en son sürümün ne olduğunu iki kez kontrol edin. Kılavuz 12'ye atıfta bulunacaktır, ancak en son kararlı olanı kullanın.
Nextcloud arşivinizi indirmek istediğiniz dizine geçin. Ardından, çıkarmak için / var / www olarak değiştirin.
$ cd ~ / İndirmeler $ wget https://download.nextcloud.com/server/releases/nextcloud-12.0.3.tar.bz2 $ cd / var / www $ sudo tar xjpf ~ / İndirilenler / nextcloud-12.0.3. tar.bz2
Gelecekte bunu okuyorsanız, indirme bağlantısını Nextcloud'un sunucu yükleme sayfasında bulabilirsiniz .
Son olarak, Nextcloud kurulumunuzun sahipliğini www-data olarak değiştirin.
$ sudo chown -R www-veri: www-veri / var / www / nextcloud
SSL Sertifikaları Oluştur
Certbot sayesinde SSL sertifikalarınızı oluşturmak çok kolaydır. Certbot sizin için SSL sertifikalarınızı otomatik olarak oluşturacak ve onları hangi siteyi yarattığınızın web kök dizinine yerleştirecektir. Sadece tek bir komut çalıştırmanız yeterli.
$ sudo certbot certonly - web sitesi - w / var / www / nextcloud - ve seninalan_adiniz.com.tr -d www.alan_adiniz.com.tr
Certbot'u ilk kez çalıştırdığın için bir e-posta adresi isteyecek. Bu adresi, paralarınızın süresi dolmak üzereyken sizi uyarmak için kullanacak. Onları tek bir komutla kolayca yenileyebilirsiniz.
Nginx'i yapılandırın
Nginx hafif ama güçlü bir web sunucusudur. Nextcloud'a erişmek için kullandığınız arabirimi sunacak. Nginx ile ilişkili birkaç yapılandırma dosyası var. Birincisi /etc/nginx/nginx.conf adresinde bulunan ana yapılandırmadır. Bu ana yapılandırma dosyasıdır, ancak katı varsayılanlara sahiptir. Ne yaptığını biliyorsan onunla oynayabilirsin, ama onu rahat bırakabilir ve iyi de olabilirsin.
Bir sonraki yapılandırma çok daha uzun ve daha karmaşık. Neyse ki hepsini yazmanıza gerek yok. Nextcloud devleri zaten yaptı. Sadece onu değiştirmeniz gerekiyor. Yapılandırma dosyası Nextcloud'un sitesinde bulunur . Nginx'in webrootu için olanı al. / Etc / nginx / sites kullanılabilir / nextcloud'da yeni bir dosya oluşturun ve içine yapıştırın.
Dosyayı aldıktan sonra, birkaç basit değişiklik yapmanız gerekir. İlk olarak, yukarı akış bloğunu bulun ve şöyle görünecek şekilde değiştirin:
yukarı akış php-handler {sunucu unix: /run/php/php7.0-fpm.sock; }
Ardından, cloud.example.com yazan bir yeri bulun ve etki alanı adınızla değiştirin.
Yapmanız gereken son şey Nginx'i SSL sertifikalarınıza yönlendirmektir. Satırları değiştir:
ssl_certificate /etc/ssl/nginx/cloud.example.com.crt; ssl_certificate_key /etc/ssl/nginx/cloud.example.com.key;
Kime:
ssl_certificate /etc/letsencrypt/live/etkialaniniz.com.tr/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/etkialaniniz.com.tr/privkey.pem;
Bu kadar! Daha sonra, Nginx'in bulabilmesi için linklemeniz gerekir.
$ cd / etc / nginx / sitelere uygun $ sudo ln - s / etc / nginx / sitelere uygun / nextcoud nextcloud
Oradaki mevcut varsayılanı kaldırın.
$ sudo rm varsayılan
PHP ve Nginx'i yeniden başlattığınızda Nextcloud!
$ sudo systemctl yeniden başlat php7.0-fpm $ sudo systemctl yeniden başlat nginx
Nextcloud'u başlat
Web tarayıcınızı açın ve etki alanı adınıza gidin. Nextcloud kurulum ekranı ile karşılaşacaksınız. Kendinize bir yönetici hesabı oluşturun ve oluşturduğunuz veritabanı hesabının bilgilerini girin.
Nextcloud'un kendisini yapılandırması ve yüklemesi birkaç dakika sürecek. Tamamlandığında, yeni Nextcloud panonuza bırakılacaksınız. Oradan, güvendiğiniz kişilerin yeni bulut depolama alanınıza girmesine izin vermek için yeni kullanıcılar oluşturabilirsiniz. Ayrıca hemen dosya yüklemeye başlayabilirsiniz.
Bu kadar! Artık kendi özel bulutun var!