在Amazon AWS EC2申請了一年的免費使用權,安裝了CentOS + Mono + Jexus環境做一個Web Server使用。
在上述系統安裝好之后,把TCP 80端口開啟(iptables),同時啟動Jexus。正常情況下,從客戶端使用 http://IP地址/info,就可以看到Jexus運行成功的效果了。但在Amazon AWS EC2卻說網絡出現問題或者無法訪問。因為對CentOS本身來說,TCP 80端口已經打開,但是否有AWS本身還做限制呢?
在AWS主控台,找到這個Server實例,看到Security groups一項,
圖1:AWS EC2的當前運行實例Security Groups
這個Security groups是系統自動生成的,點擊這個鏈接,進入詳細頁面,點擊“Inbound”的Tab,從下圖中可以看出,這個自動生成的安全組,只有TCP 22端口開啟,只能使用SSH訪問(即用Putty工具訪問)。
如果要訪問這個EC2實例的Web Server,必須在這里也打開TCP 80端口,
圖2:默認自動生成的安全組,只給出了通過SSH訪問(即Putty訪問)的權限
右擊安全組名,單擊“Edit inbound rules”,如圖3所示,點擊Add Rule,選擇“HTTP”協議,端口設置為80,Source設置為“Anywhere”(即允許任何IP地址訪問),完成效果如下圖所示
圖3:添加TCP 80端口的訪問權限
保存退出。
從客戶端使用 http://公開IP地址/info 訪問,看到Jexus Web Server的顯示,說明此時Web Server配置成功!