一、Apache 开启https、加载反代理功能
yum install -y mod_proxy yum install -y mod_proxy_wstunnel yum install -y mod_proxy_http yum install -y mod_ssl yum install -y openssl #systemctl restart httpd #重启后,就开启 了https的功能,但是因为没有第三方证书,网页会提示证书不安全。 #如果有第三方证书,更改ssl.conf的证书即可正常访问,具体如下: #vim /etc/httpd/conf.d/ssl.conf SSLCertificateFile /etc/httpd/cert/XXXXX.cer #公钥证书地址/etc/httpd/cert/XXXXX.cer,第三方证书移动 SSLCertificateKeyFile /etc/httpd/cert/XXXXX.cer #证书私钥地址/etc/httpd/cert/XXXXX.cer,第三方证书移动 #如果需要直接通过 可以添加以下信息到ssl.conf最后面 <VirtualHost your-name.com:443> DocumentRoot "/var/www/html/nextcloud" #web站点具体地址 ServerName your-name.com #web域名 ErrorLog logs/ssl_error_log TransferLog logs/ssl_access_log LogLevel warn SSLEngine on SSLProtocol all -SSLv2 -SSLv3 SSLCipherSuite HIGH:3DES:!aNULL:!MD5:!SEED:!IDEA SSLHonorCipherOrder on SSLCertificateFile /etc/httpd/cert/XXXXX.cer SSLCertificateKeyFile /etc/httpd/cert/XXXXX.key <Files ~ "\.(cgi|shtml|phtml|php3?)$"> SSLOptions +StdEnvVars </Files> <Directory "/var/www/cgi-bin"> SSLOptions +StdEnvVars </Directory> BrowserMatch "MSIE [2-5]" \ nokeepalive ssl-unclean-shutdown \ downgrade-1.0 force-response-1.0 CustomLog logs/ssl_request_log \ "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b" </VirtualHost>
二、nextcloud开启域名访问、以及文档安全加密(不可逆转)。
[root@localhost ~]# vim /var/www/html/nextcloud/config/config.php #添加自己的域名在内,对应的2 或者3 server1.example.com为自己的域名 array ( 0 => '172.16.88.45', 1 => 'localhost', 2 => 'server1.example.com', ),
三、安装docker
[root@localhost ~]#yum install -y yum-utils device-mapper-persistent-data lvm2 [root@localhost ~]#yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo [root@localhost ~]#yum list docker-ce --showduplicates | sort -r [root@localhost ~]# yum install -y docker-ce [root@localhost ~]# systemctl enable docker [root@localhost ~]# systemctl start docker
四、创建onlyoffice的docker容器
创建onlyoffice的docker容器,同时拉取onlyoffice的镜像,及映射相应的端口号, 映射docker容器的443端口,到centos的4433端口上。 [root@localhost ~]#docker pull onlyoffice/documentserver [root@localhost ~]#docker run -i -t -d -p 4433:443 --restart=always -v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data onlyoffice/documentserver 查看docker镜像 [root@localhost ~]# docker images 查看docker容器 [root@localhost ~]#docker ps -a 启用|停止|删除 docker容器 [root@localhost ~]#docker start|stop|rm id 删除镜像 [root@localhost ~]#docker rmi id 创建证书: 1、创建服务器私钥,或者使用第三方私钥 [root@localhost ~]#openssl genrsa -out onlyoffice.key 2048 2、创建证书签名请求(CSR),或者使用第三方证书 [root@localhost ~]#openssl req -new -key onlyoffice.key -out onlyoffice.csr 3、签署证书使用私钥和CSR [root@localhost ~]#openssl x509 -req -days 3650 -in onlyoffice.csr -signkey onlyoffice.key -out onlyoffice.crt 4、加强服务器安全 [root@localhost ~]#openssl dhparam -out dhparam.pem 2048 5、安装的SSL证书(如果是第三方证书直接存储在这个地方) [root@localhost ~]mkdir -p /app/onlyoffice/DocumentServer/data/certs [root@localhost ~]cp onlyoffice.key /app/onlyoffice/DocumentServer/data/certs/ [root@localhost ~]cp onlyoffice.crt /app/onlyoffice/DocumentServer/data/certs/ [root@localhost ~]cp dhparam.pem /app/onlyoffice/DocumentServer/data/certs/ [root@localhost ~]chmod 400 /app/onlyoffice/DocumentServer/data/certs/onlyoffice.key 重启apache和docker服务。 [root@localhost ~]# systemctl restart httpd [root@localhost ~]# systemctl restart docker
五、访问onlyoffice查看是否正常,https://yourip:4433 https://172.16.88.45:4433
六、在nextcloud中启用onlyoffice功能 ,在应用和设置中找到
七、测试nextcloud的onlyoffice的使用,新建exl就可以正常使用了。