最后刚刚完成 Ex change 项目正式上线工作,考虑到一些用户的特殊要求,打算将 OWA 发布到公网,考虑到安全因素,不采用端口映射方式,另外也因为一些其它原因,没有采用微软建议方式,采用 ISA 发布。(网上资料很多,已有很多成熟的方案,如无成本等方面原
最后刚刚完成Exchange项目正式上线工作,考虑到一些用户的特殊要求,打算将OWA发布到公网,考虑到安全因素,不采用端口映射方式,另外也因为一些其它原因,没有采用微软建议方式,采用ISA发布。(网上资料很多,已有很多成熟的方案,如无成本等方面原因,建议采用,主要是方案很成熟,省事。^_^)
上面提了这么多要求,但是工作还得做,想了下,本质上就是让用户能在公网上能直接访问到OWA,但又不是直接访问到,所以想到这,就是加个中间人角色,让它帮忙把公网用户的要求传给内网服务器,说白了其实就是一反向代理。
应用反向代理的软件有很多,squid,nginx等等大大有名,因为nginx现在很流行,且此软件占用资源少,等优点,就在自己喜欢的gentoo上并应用了。
下面给出此代理的部分网络架构图,大家看了就明白了是怎么回事了。
下面就正式开始配置工作
Exchange Server Name: msg114.sunwill.cn
OWA Internat Name: outlook.sunwill.cn
一、系统及nginx安装 ~略,这个很简单的,大家都知道的
二、在Proxy上生成ssl证书,这一步很重要,当然,如果已经有申请到证书,就直接拷过来用就行,没必要用自生成的证书。
# mkdir /etc/nginx/ssl.crt
# mkdir /etc/nginx/ssl.key
Make sure to:
- Copy your certificate file to: /etc/nginx/ssl.crt/
- Copy your certificate key file to: /etc/nginx/ssl.key/
证书生成过程,大家可以在网查到,网上也有很多教程,只要生成了证书,放到上面两个目录中就行,nginx进行代理转发时用得到
三、就是配置OWA的反向代理了,配置文件如下所示
edward@jt-it001:~$vim /etc/nginx/conf.d/owa.conf
server {listen 80;
server_name outlook.sunwill.cn;
# Redirect any HTTP request to HTTPS
rewrite ^(.*) https://outlook.sunwill.cn$1 permanent;
error_log /var/log/nginx/outlook.sunwill.cn-owa-error.log;
access_log /var/log/nginx/outlook.sunwill.cn-owa-access.log;
}
server {
listen 443;
server_name outlook.sunwill.cn;
auth_basic "sunwill";
auth_basic_user_file nginx_passwd;
# Redirect from "/" to "/owa" by default
rewrite ^/$ https://outlook.sunwill.cn/owa permanent;
# Enable SSL
ssl on;
ssl_certificate /etc/nginx/ssl.crt/outlook.sunwill.cn.crt;
ssl_certificate_key /etc/nginx/ssl.key/outlook.sunwill.cn.key;
ssl_session_timeout 5m;
# Set global proxy settings
proxy_read_timeout 360;
proxy_pass_header Date;
proxy_pass_header Server;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
location /owa { proxy_pass https://msg114.sunwill.cn/owa; }
location /exchange { proxy_pass https://msg114.sunwill.cn/exchange; }
location /exchweb { proxy_pass https://msg114.sunwill.cn/exchweb; }
location /public { proxy_pass https://msg114.sunwill.cn/public; }
location /Microsoft-Server-ActiveSync { proxy_pass https://msg114.sunwill.cn/Microsoft-Server-ActiveSync; }
error_log /var/log/nginx/outlook.sunwill.cn-owa-ssl-error.log;
access_log /var/log/nginx/outlook.sunwill.cn-owa-ssl-access.log;
}
最后一点,因为机器是放在DMZ中,所以有可能,其实也没必要让Proxy访问内网的DNS服务器,直接配置系统的/etc/hosts文件即可。让Proxy把资源反向代理到正确的服务器。
echo "192.168.103.200 msg114.sunwill.cn msg114" >> /etc/hosts
最后一些说明,
1.公网域名outlook.sunwill.cn指向到Proxy的公网地址
2.安全方面的一些考量,老生常谈了,服务器开启防火墙,只对外开户指定端口,服务器只运行需要的服务
3.自建证书是因为nginx有启用ssl,所以需要,可以直接用linux上自建的证书,此证书不一定要与exchange服务器上的证书一样,当然如果有申请正式的证书,肯定是用这个了
4.host记录一定要有,当然你愿意在DMZ区的防火墙上开户至内网的DNS查询,也可以,只是降低了相关安全性而已。

WebアプリケーションにおけるMySQLの主な役割は、データを保存および管理することです。 1.MYSQLは、ユーザー情報、製品カタログ、トランザクションレコード、その他のデータを効率的に処理します。 2。SQLクエリを介して、開発者はデータベースから情報を抽出して動的なコンテンツを生成できます。 3.MYSQLは、クライアントサーバーモデルに基づいて機能し、許容可能なクエリ速度を確保します。

MySQLデータベースを構築する手順には次のものがあります。1。データベースとテーブルの作成、2。データの挿入、および3。クエリを実行します。まず、createdAtabaseおよびcreateTableステートメントを使用してデータベースとテーブルを作成し、InsertINTOステートメントを使用してデータを挿入し、最後にSelectステートメントを使用してデータを照会します。

MySQLは、使いやすく強力であるため、初心者に適しています。 1.MYSQLはリレーショナルデータベースであり、CRUD操作にSQLを使用します。 2。インストールは簡単で、ルートユーザーのパスワードを構成する必要があります。 3.挿入、更新、削除、および選択してデータ操作を実行します。 4. Orderby、Where and Joinは複雑なクエリに使用できます。 5.デバッグでは、構文をチェックし、説明を使用してクエリを分析する必要があります。 6.最適化の提案には、インデックスの使用、適切なデータ型の選択、優れたプログラミング習慣が含まれます。

MySQLは初心者に適しています。1)インストールと構成、2)リッチラーニングリソース、3)直感的なSQL構文、4)強力なツールサポート。それにもかかわらず、初心者はデータベースの設計、クエリの最適化、セキュリティ管理、データのバックアップなどの課題を克服する必要があります。

はい、sqlisaprogramginglanguagespecializedfordatamanamanagement.1)それはdeclarative、focusingonwhattoachieveratherthanhow.2)

酸性属性には、原子性、一貫性、分離、耐久性が含まれ、データベース設計の基礎です。 1.原子性は、トランザクションが完全に成功するか、完全に失敗することを保証します。 2.一貫性により、データベースがトランザクションの前後に一貫性を保証します。 3.分離により、トランザクションが互いに干渉しないようにします。 4.永続性により、トランザクションの提出後にデータが永久に保存されることが保証されます。

MySQLは、データベース管理システム(DBMS)であるだけでなく、プログラミング言語にも密接に関連しています。 1)DBMSとして、MySQLはデータを保存、整理、取得するために使用され、インデックスを最適化するとクエリのパフォーマンスが向上する可能性があります。 2)SQLとPythonに埋め込まれたプログラミング言語とSQLalchemyなどのORMツールを使用すると、操作を簡素化できます。 3)パフォーマンスの最適化には、インデックス、クエリ、キャッシュ、ライブラリ、テーブル分割、およびトランザクション管理が含まれます。

MySQLはSQLコマンドを使用してデータを管理します。 1.基本コマンドには、select、挿入、更新、削除が含まれます。 2。高度な使用には、参加、サブクエリ、および集計関数が含まれます。 3.一般的なエラーには、構文、ロジック、パフォーマンスの問題が含まれます。 4。最適化のヒントには、インデックスの使用、Select*の回避、制限の使用が含まれます。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

WebStorm Mac版
便利なJavaScript開発ツール

Safe Exam Browser
Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境
