ubuntuhttp伺服器的搭建
A. Ubuntu上配置http訪問代理
在Ubuntu伺服器環境中,有兩台伺服器,A(100.140.49.72)具備互聯網訪問許可權,而伺服器B(100.140.44.12)則需要通過伺服器A來實現互聯網訪問。目標明確,就是配置伺服器B利用A的代理服務。
首先,要在伺服器A上安裝並配置代理服務Tinyproxy:
- 步驟一:在伺服器A上執行安裝命令安裝Tinyproxy。
- 步驟二:針對Tinyproxy進行詳細配置,確保其能作為代理伺服器。
- 步驟三:啟動Tinyproxy服務,使其開始監聽並轉發請求。
接下來,我們需要在伺服器B上進行相應的設置,以利用伺服器A的代理功能。不同應用可能需要設置不同的環境變數,例如:
- 對於通過apt-get進行軟體包管理的,可能需要配置APT代理,盡管此處未特別說明,但通常這部分配置不是必需的,主要依賴於伺服器A的配置。
- 對於使用curl的命令,需要設置代理參數,格式與no_proxy類似,但具體格式需要與伺服器A的配置相匹配。
配置完成後,伺服器B就可以通過伺服器A的代理執行apt update等操作了。為了確保配置的正確性,可以參考以下文檔:
- Ubuntu 20.04的代理設置指南
- Linux系統中的Proxy設置教程
B. ubuntu伺服器怎麼搭建網站
如果想用Ubuntu作為網站的伺服器,一些基本的服務是必備的。本文對環境的搭建做一個簡單的整理。
Appach
Apache是世界使用排名第一的Web伺服器軟體。它可以運行在幾乎所有廣泛使用的計算機平台上,由於其跨平台和安全性被廣泛使用,是最流行的Web伺服器端軟體之一。
安裝
sudo apt-get install apache2
大概5M左右,安裝完成後伺服器會自動啟動
在瀏覽器里輸入http://localhost或者是http://127.0.0.1或者輸入IP,如果看到了It works!,那就說明Apache就成功的安裝了,Apache的默認安裝,會在/var下建立一個名為www的目錄,這個就是Web目錄了,所有要能過瀏覽器訪問的Web文件都要放到這個目錄里。
如果更改配置重新啟動命令如下:
sudo /etc/init.d/apache2 restart
到這里,如果只是單純的跑一些靜態網頁的話這兒就夠了,只需要將設計的html文件放入/var/www目錄即可
到這里我遇到一個問題沒解決就是根目錄下的二級目錄無法訪問,重新安裝多次,都是同樣的問題。
php
PHP支持同樣是很多網站必備之一,安裝命令如下:
sudo apt-get install libapache2-mod-php5 php5
需要下載6M左右安裝包。安裝擴展:
sudo apt-get install libapache2-mod-php5 php5
Mysql
sudo apt-get install mysql-server mysql-client
需要下載26M左右的安裝包,等待安裝完成,彈出設定密碼界面:
輸入資料庫root密碼,按tab鍵選擇確定。接下來會要求重復密碼,重復同樣操作。
資料庫安裝完成後,為了方便管理和操作,繼續安裝phpmyadmin。
sudo apt-get install phpmyadmin
需要下載6M左右的安裝包,安裝完成後進入設置界面,
tab鍵選擇是,進行安裝,在安裝過程中會要求選擇Web server:apache2或lighttpd,使用空格鍵選定apache2,按tab鍵然後確定。接下來要求輸入密碼,輸入在上一步中設置的密碼,需要輸入兩次,完成安裝。
然後將phpmyadmin與apache2建立連接,www目錄在/var/www,phpmyadmin在/usr/share /phpmyadmin目錄,所以就用命令:
sudo ln -s /usr/share/phpmyadmin /var/www
建立鏈接。
phpmyadmin測試:在瀏覽器地址欄中打開http://localhost/phpmyadmin就能夠進入登錄界面,輸入前面配置的用戶名和密碼進行登錄,如下圖所示。
登錄後界面如圖所示。
ftp
要想對網站和數據進行管理,少不了的是ftp,通過ftp可以很方便的上傳/下載文件,實現管理,因此需要安裝ftp管理工具。
sudo apt-get install vsftpd
C. Linux上通過ProxyChains實現全局HTTP代理配置
在Linux系統中,ProxyChains是一個強大的工具,它允許用戶通過一個或多個代理伺服器轉發TCP連接,尤其適合繞過網路限制、提高訪問速度或保護隱私。盡管其主要功能是單個命令的代理轉發,通過一些設置和技巧,我們可以在一定程度上實現「全局」HTTP代理配置,盡管這並非其直接功能。
確保系統中安裝了ProxyChains。在基於Debian的系統(如Ubuntu)上,使用以下命令安裝:
bash復制代碼
在基於RPM的系統(如CentOS或Fedora)上,根據系統需求安裝相應包。
編輯/etc/proxychains4.conf文件,配置你的HTTP代理伺服器。在[ProxyList]部分添加代理伺服器配置,示例如下:
bash復制代碼
通過修改shell環境或使用別名(alias)間接實現「全局」代理。為常用的網路命令創建帶proxychains4前綴的別名,確保自動通過ProxyChains與配置的代理伺服器通信。
bash復制代碼
將這些別名添加到.bashrc或.zshrc中,並重新載入配置文件或重啟shell以使更改生效。
注意到這種方法雖然影響了通過別名調用的命令,但並未真正實現全局HTTP代理。對於圖形界面應用程序或其他未通過別名調用的網路請求,它們仍直接使用系統網路設置,未通過ProxyChains配置的代理。
若追求更全面的全局代理,考慮使用系統級的網路配置工具,如Linux的iptables進行流量重定向,或使用支持全局代理的桌面環境或網路管理工具。
D. ubuntu利用nginx配置https伺服器
Ubuntu環境下,配置Nginx為HTTPS伺服器主要步驟如下:
首先,使用 nginx -V 檢查 Nginx 是否已編譯有 SSL 支持。如果缺少 --with-http_ssl_mole 參數,需重新編譯 Nginx 添加此支持。
通過 apt-get install openssl 安裝 SSL 工具。隨後在 /etc/nginx/ 目錄創建私鑰文件 server.key 通過命令:openssl genrsa -des3 -out server.key 1024,並在提示下設置口令。
接著,生成證書簽發請求文件 server.csr 與私鑰關聯:openssl req -new -key server.key -out server.csr。
使用私鑰無口令版本 server_nopwd.key 替換原始私鑰文件,以便標記證書。此步驟通過命令:openssl rsa -in server.key -out server_nopwd.key 完成。
最後,使用 openssl x509 -req -days 365 -in server.csr -signkey server_nopwd.key -out server.crt 命令,將證書與私鑰關聯,生成最終的證書文件 server.crt。
在 Nginx 配置文件 /etc/nginx/nginx.conf 中的 http 段添加 SSL 配置:server {#listen 80;listen 443;server_name YourServerName;root /var/mypagedir;index index.php index.html index.htm;ssl on;ssl_certificate /etc/nginx/server.crt;ssl_certificate_key /etc/nginx/server_nopwd.key;}
完成配置後,重啟 Nginx 服務:service nginx restart。
最後,在 /var/mypagedir/ 目錄下放置網頁文件,並通過訪問伺服器驗證 HTTPS 配置是否成功。
以上介紹了 Ubuntu 環境下使用 Nginx 配置 HTTPS 伺服器的關鍵步驟,適合對 PHP 教程有興趣的學習者參考。