先使用UI介面加入jail
設定SSH
指令:
vi /etc/ssh/sshd_config
修改內容 :
將前方#符號去除
PermitRootLogin yes
RSAAuthentication yes
PasswordAuthentication yes
指令:
vi /etc/inetd.conf
將前方#符號去除
ssh stream tcp nowait root /usr/sbin/sshd sshd -i -4
ssh stream tcp6 nowait root /usr/sbin/sshd sshd -i -6
設定開機後自動啟動SSH service
指令:
vi /etc/rc.conf
修改內容 :
sshd_enable="YES"
重新產生RSA:
ssh-keygen -A
重開SSH服務
/etc/rc.d/sshd restart
安裝NextCloud
Source = /mnt/Cloud/files
Destination = /mnt/files
Source = /mnt/Cloud/db
Destination = /var/db/mysql
安裝更新
portsnap fetch extract
pkg install nano wget sudo
安裝PHP7.1
pkg install redis php71-ctype php71-dom php71-gd php71-iconv php71-json php71-mbstring php71-posix php71-simplexml php71-xmlreader php71-xmlwriter php71-zip php71-zlib php71-pdo_mysql php71-hash php71-xml php71-session php71-mysqli php71-wddx php71-xsl php71-filter php71-curl php71-fileinfo php71-bz2 php71-intl php71-mcrypt php71-openssl php71-ldap php71-ftp php71-imap php71-exif php71-gmp php71-memcache php71-opcache php71-pcntl php71 mod_php71
安裝SQL
pkg install mysql56-client mysql56-server php71-mysqli
sysrc mysql_enable="yes"
service mysql-server start
mysql_secure_installation
建立資料庫
mysql -u root -p
CREATE DATABASE nextcloud;
CREATE USER 'nextcloud'@'localhost' IDENTIFIED BY 'MAKEUP-YOUR-OWN-PASSWORD';
GRANT ALL ON nextcloud.* TO 'nextcloud'@'localhost';
FLUSH PRIVILEGES;
exit
安裝Apache
pkg install apache24
sysrc apache24_enable=yes
service apache24 start
安裝phpmyadmin
cd /usr/local/www/
fetch https://files.phpmyadmin.net/phpMyAdmin/4.7.8/phpMyAdmin-4.7.8-all-languages.zip
tar xvzf phpMyAdmin-4.7.8-all-languages.zip
mv phpMyAdmin-4.7.8-all-languages phpMyAdmin
cd phpMyAdmin
chown -R www:www .
chmod -R 755 .
cp /usr/local/www/phpMyAdmin/config.sample.inc.php /usr/local/www/phpMyAdmin/config.inc.php
編輯設定
vi /usr/local/etc/apache24/httpd.conf
將前方#符號去除
LoadModule ssl_module libexec/apache24/mod_ssl.so
LoadModule rewrite_module libexec/apache24/mod_rewrite.so
LoadModule php7_module libexec/apache24/libphp7.so
於"LoadModule php7_module libexec/apache24/libphp7.so" 此行後下一行新增
<IfModule php7_module>
<FilesMatch "\.(php|phps|php7|phtml)$">
SetHandler php7-script
</FilesMatch>
DirectoryIndex index.php
</IfModule>
設定phpMyAdmin
Alias /phpmyadmin /usr/local/www/phpMyAdmin
Alias /phpMyAdmin /usr/local/www/phpMyAdmin
<Directory "/usr/local/www/phpMyAdmin">
AllowOverride All
Order allow,deny
Allow from all
</Directory>
尋找<IFModule mime_module>區段,並且加入下列兩行
AddType application/x-httpd-php-source .phps
AddType application/x-httpd-php .php
vi /usr/local/etc/apache24/modules.d/001_mod_php.conf
<FilesMatch "\.php$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
安裝NextCloud
cd /usr/local/www/
fetch https://download.nextcloud.com/server/releases/nextcloud-13.0.0.zip
tar xvzf nextcloud-13.0.0.zip
修改apache
vi /usr/local/etc/apache24/Includes/nextcloud.xxxx.com.conf
<VirtualHost *:443>
ServerAdmin nextcloud@nextcloud.xxxx.com
ServerName nextcloud.xxxx.com
DirectoryIndex index.php
DocumentRoot /usr/local/www/nextcloud
SSLCertificateFile /usr/local/etc/apache24/ssl/nextcloud.xxxx.com.cer
SSLCertificateKeyFile /usr/local/etc/apache24/ssl/nextcloud.xxxx.com.key
SSLEngine on
# Intermediate configuration, tweak to your needs
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA
SSLHonorCipherOrder on
SSLCompression off
SSLOptions +StrictRequire
<Directory /usr/local/www/nextcloud>
AllowOverride all
</Directory>
<IfModule mod_headers.c>
Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains"
</IfModule>
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "/usr/local/www/nextcloud"
ServerName nextcloud.xxxx.com
RewriteEngine on
RewriteCond %{SERVER_NAME} =nextcloud.xxxx.com
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,QSA,R=permanent]
#ErrorLog ${APACHE_LOG_DIR}/error.log
#CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory /usr/local/www/nextcloud/>
Options +FollowSymlinks
AllowOverride All
<IfModule mod_dav.c>
Dav off
</IfModule>
SetEnv HOME /usr/local/www/nextcloud
SetEnv HTTP_HOME /usr/local/www/nextcloud
Satisfy Any
</Directory>
</VirtualHost>