當前位置:首頁 » 編程軟體 » openvpn流控腳本

openvpn流控腳本

發布時間: 2022-08-27 15:15:56

『壹』 如何在Ubuntu上安裝OpenVPN

我理解,OpenVPN的配置根據實現分三種方式:

單機 - - 站點
站點 - - 站點
單機 - - 單機
本文的描述適合單機 - - 站點實現方式,也可以理解為移動用戶連回公司網路。

目錄

1. 安裝
2. 設置認真機構,產生證書
3. 配置Server端
4. 配置Client端

1. 安裝
Ubuntu中安裝OpenVPN極其簡單:
代碼: sudo apt-get install openvpn
在Windows中安裝則建議使用 OpenVPN GUI for Windows的Installation Package,其中包括了OpenVPN本身以及在Windows中使用方便的圖形界面。

2. 設置認真機構,產生證書
參考OpenVPN的Howto進行操作,一般不會有什麼問題。
在Ubuntu中大致這樣操作,將目錄 /usr/share/doc/openvpn/examples/easy-rsa/2.0 復制的你的家目錄,修改vars使其符合你的實際情況(國家、省份、城市、公司、機構、郵件地址),然後運行 代碼: ./vars
./clean-all
./build-ca
./build-key-server <servername>
./build-key <clientname>
./build-dh

意:這只是第一次產生證書的正確操作,其中 build-ca 創建根證書,若你沒有清除全部VPN
Server/Client的打算,你不應該再次運行此命令;創建的全部證書及私鑰都在當前目錄的 keys 下面,而命令 clean-all 將清除
keys 下面全部內容,因此 cliean-all 只在 build-ca 前運行一次。
隨後添加 Server 證書或 Client 證書只需運行 代碼: ./vars
./build-key-server <servername>
or
./build-key <clientname>

3. 配置Server端
從示例中解壓 server.conf 代碼: sudo cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn/
sudo gzip -d /etc/openvpn/server.conf.gz
將相關證書、私匙拷貝的 /etc/openvpn
ca.crt
server.crt
server.key
dh1024.pem
修改 server.conf
關鍵一:取消注釋 push "route a.b.c.d 255.255.255.0",並將地址和掩碼替換為辦公網路的地址和掩碼

的是為客戶端加一條路由,這樣客戶端才有可能訪問到辦公網路中出VPN
Server之外的其它主機(有很多VPN客戶端直接添加默認路由,這樣客戶端的所有連接請求都被路由到 VPN
通道內,結果是客戶端此時不能訪問VPN,而此項添加指定地址的路由不會導致這一問題)
關鍵二:取消注釋 push "dhcp-option
DNS a.b.c.d" 和 push "dhcp-option WINS a.b.c.d", 並將地址替換為實際的 DNS 和 WINS
伺服器的地址,最好 DNS 伺服器能將外部域名的解析要求轉發的外部 DNS 伺服器
目的是客戶端連接VPN後仍能訪問Internet,(若推過來的DNS不能解析外部域名,則即使客戶端的路由配置正確,想通過域名訪問Internet也不可能)
Server端其它設置
配置伺服器,運行包轉發: 代碼: echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward
關鍵三:若VPN Server不是辦公網路的默認網關,則想辦法在默認網關上添加到 10.8.0.0/24 的路由項目,網關為伺服器的內部 IP 地址。
關鍵一中的操作只是能夠讓客戶端知道去往公司網路的包如何路由,而關鍵三的操作是為了讓公司網路里的主機知道去往VPN Client的包如何路由。

於Netscreen 25(screenos 5.3.0r3.0),Network - Routing - Destination -
[trust-vr]New - IP/mask [10.8.0.0]/[24] - 選 [Gateway], Interface
[ethernet1], Gateway IP Address [Internal IP of VPN Server]

4. 配置Client端
在Ubuntu中,
4.1.1 從示例中拷貝client.conf 代碼: sudo cp //usr/share/doc/openvpn/examples/sample-config-files/client.conf /etc/openvpn/
4.1.2 將相關證書、私鑰拷貝到/etc/openvpn:
ca.crt
client.crt
client.key
4.1.3 修改/etc/openvpn/client.conf:
在 remote my-server-1 1194 這一行,將 my-server-1 換成 VPN Server 的外部IP
關鍵四:在結尾添加兩行 代碼: up /etc/openvpn/update-resolv-conf
down /etc/openvpn/update-resolv-conf
目的是根據Server推過來的 dhcp-option 更新域名解析設置

4.1.4 其它設置:
關鍵五:安裝resolvconf軟體包 代碼: sudo apt-get install resolvconf 關鍵四中設置的腳本需要使用此軟體。

在Windows中,
4.2.1 將client.ovpn拷貝的config目錄
4.2.2 將證書和相關私匙拷貝到config目錄
ca.crt
client.crt
client.key

4.2.3 將client.ovpn中的my-server-1改為VPN Server的外部IP

『貳』 如何在Ubuntu上安裝OpenVPN

我理解,OpenVPN的配置根據實現分三種方式:

單機 - - 站點
站點 - - 站點
單機 - - 單機
本文的描述適合單機 - - 站點實現方式,也可以理解為移動用戶連回公司網路。

目錄

1. 安裝
2. 設置認真機構,產生證書
3. 配置Server端
4. 配置Client端

1. 安裝
Ubuntu中安裝OpenVPN極其簡單:
代碼: sudo apt-get install openvpn
在Windows中安裝則建議使用 OpenVPN GUI for Windows的Installation Package,其中包括了OpenVPN本身以及在Windows中使用方便的圖形界面。

2. 設置認真機構,產生證書
參考OpenVPN的Howto進行操作,一般不會有什麼問題。
在Ubuntu中大致這樣操作,將目錄 /usr/share/doc/openvpn/examples/easy-rsa/2.0 復制的你的家目錄,修改vars使其符合你的實際情況(國家、省份、城市、公司、機構、郵件地址),然後運行 代碼: ./vars
./clean-all
./build-ca
./build-key-server <servername>
./build-key <clientname>
./build-dh

意:這只是第一次產生證書的正確操作,其中 build-ca 創建根證書,若你沒有清除全部VPN
Server/Client的打算,你不應該再次運行此命令;創建的全部證書及私鑰都在當前目錄的 keys 下面,而命令 clean-all 將清除
keys 下面全部內容,因此 cliean-all 只在 build-ca 前運行一次。
隨後添加 Server 證書或 Client 證書只需運行 代碼: ./vars
./build-key-server <servername>
or
./build-key <clientname>

3. 配置Server端
從示例中解壓 server.conf 代碼: sudo cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn/
sudo gzip -d /etc/openvpn/server.conf.gz
將相關證書、私匙拷貝的 /etc/openvpn
ca.crt
server.crt
server.key
dh1024.pem
修改 server.conf
關鍵一:取消注釋 push "route a.b.c.d 255.255.255.0",並將地址和掩碼替換為辦公網路的地址和掩碼

的是為客戶端加一條路由,這樣客戶端才有可能訪問到辦公網路中出VPN
Server之外的其它主機(有很多VPN客戶端直接添加默認路由,這樣客戶端的所有連接請求都被路由到 VPN
通道內,結果是客戶端此時不能訪問VPN,而此項添加指定地址的路由不會導致這一問題)
關鍵二:取消注釋 push "dhcp-option
DNS a.b.c.d" 和 push "dhcp-option WINS a.b.c.d", 並將地址替換為實際的 DNS 和 WINS
伺服器的地址,最好 DNS 伺服器能將外部域名的解析要求轉發的外部 DNS 伺服器
目的是客戶端連接VPN後仍能訪問Internet,(若推過來的DNS不能解析外部域名,則即使客戶端的路由配置正確,想通過域名訪問Internet也不可能)
Server端其它設置
配置伺服器,運行包轉發: 代碼: echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward
關鍵三:若VPN Server不是辦公網路的默認網關,則想辦法在默認網關上添加到 10.8.0.0/24 的路由項目,網關為伺服器的內部 IP 地址。
關鍵一中的操作只是能夠讓客戶端知道去往公司網路的包如何路由,而關鍵三的操作是為了讓公司網路里的主機知道去往VPN Client的包如何路由。

於Netscreen 25(screenos 5.3.0r3.0),Network - Routing - Destination -
[trust-vr]New - IP/mask [10.8.0.0]/[24] - 選 [Gateway], Interface
[ethernet1], Gateway IP Address [Internal IP of VPN Server]

4. 配置Client端
在Ubuntu中,
4.1.1 從示例中拷貝client.conf 代碼: sudo cp //usr/share/doc/openvpn/examples/sample-config-files/client.conf /etc/openvpn/
4.1.2 將相關證書、私鑰拷貝到/etc/openvpn:
ca.crt
client.crt
client.key
4.1.3 修改/etc/openvpn/client.conf:
在 remote my-server-1 1194 這一行,將 my-server-1 換成 VPN Server 的外部IP
關鍵四:在結尾添加兩行 代碼: up /etc/openvpn/update-resolv-conf
down /etc/openvpn/update-resolv-conf
目的是根據Server推過來的 dhcp-option 更新域名解析設置

4.1.4 其它設置:
關鍵五:安裝resolvconf軟體包 代碼: sudo apt-get install resolvconf 關鍵四中設置的腳本需要使用此軟體。

在Windows中,
4.2.1 將client.ovpn拷貝的config目錄
4.2.2 將證書和相關私匙拷貝到config目錄
ca.crt
client.crt
client.key

4.2.3 將client.ovpn中的my-server-1改為VPN Server的外部IP

『叄』 怎麼把電腦網路共享給手機

需要用到的工具:電腦、網卡、手機。

1、首先確認電腦連接網路,並且具備網卡。

『肆』 如何在Ubuntu上安裝OpenVPN

我理解,OpenVPN的配置根據實現分三種方式:

單機 - - 站點
站點 - - 站點
單機 - - 單機
本文的描述適合單機 - - 站點實現方式,也可以理解為移動用戶連回公司網路。

目錄

1. 安裝
2. 設置認真機構,產生證書
3. 配置Server端
4. 配置Client端

1. 安裝
Ubuntu中安裝OpenVPN極其簡單:
代碼: sudo apt-get install openvpn
在Windows中安裝則建議使用 OpenVPN GUI for Windows的Installation Package,其中包括了OpenVPN本身以及在Windows中使用方便的圖形界面。

2. 設置認真機構,產生證書
參考OpenVPN的Howto進行操作,一般不會有什麼問題。
在Ubuntu中大致這樣操作,將目錄 /usr/share/doc/openvpn/examples/easy-rsa/2.0 復制的你的家目錄,修改vars使其符合你的實際情況(國家、省份、城市、公司、機構、郵件地址),然後運行 代碼: ./vars
./clean-all
./build-ca
./build-key-server <servername>
./build-key <clientname>
./build-dh

意:這只是第一次產生證書的正確操作,其中 build-ca 創建根證書,若你沒有清除全部VPN
Server/Client的打算,你不應該再次運行此命令;創建的全部證書及私鑰都在當前目錄的 keys 下面,而命令 clean-all 將清除
keys 下面全部內容,因此 cliean-all 只在 build-ca 前運行一次。
隨後添加 Server 證書或 Client 證書只需運行 代碼: ./vars
./build-key-server <servername>
or
./build-key <clientname>

3. 配置Server端
從示例中解壓 server.conf 代碼: sudo cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn/
sudo gzip -d /etc/openvpn/server.conf.gz
將相關證書、私匙拷貝的 /etc/openvpn
ca.crt
server.crt
server.key
dh1024.pem
修改 server.conf
關鍵一:取消注釋 push "route a.b.c.d 255.255.255.0",並將地址和掩碼替換為辦公網路的地址和掩碼

的是為客戶端加一條路由,這樣客戶端才有可能訪問到辦公網路中出VPN
Server之外的其它主機(有很多VPN客戶端直接添加默認路由,這樣客戶端的所有連接請求都被路由到 VPN
通道內,結果是客戶端此時不能訪問VPN,而此項添加指定地址的路由不會導致這一問題)
關鍵二:取消注釋 push "dhcp-option
DNS a.b.c.d" 和 push "dhcp-option WINS a.b.c.d", 並將地址替換為實際的 DNS 和 WINS
伺服器的地址,最好 DNS 伺服器能將外部域名的解析要求轉發的外部 DNS 伺服器
目的是客戶端連接VPN後仍能訪問Internet,(若推過來的DNS不能解析外部域名,則即使客戶端的路由配置正確,想通過域名訪問Internet也不可能)
Server端其它設置
配置伺服器,運行包轉發: 代碼: echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward
關鍵三:若VPN Server不是辦公網路的默認網關,則想辦法在默認網關上添加到 10.8.0.0/24 的路由項目,網關為伺服器的內部 IP 地址。
關鍵一中的操作只是能夠讓客戶端知道去往公司網路的包如何路由,而關鍵三的操作是為了讓公司網路里的主機知道去往VPN Client的包如何路由。

於Netscreen 25(screenos 5.3.0r3.0),Network - Routing - Destination -
[trust-vr]New - IP/mask [10.8.0.0]/[24] - 選 [Gateway], Interface
[ethernet1], Gateway IP Address [Internal IP of VPN Server]

4. 配置Client端
在Ubuntu中,
4.1.1 從示例中拷貝client.conf 代碼: sudo cp //usr/share/doc/openvpn/examples/sample-config-files/client.conf /etc/openvpn/
4.1.2 將相關證書、私鑰拷貝到/etc/openvpn:
ca.crt
client.crt
client.key
4.1.3 修改/etc/openvpn/client.conf:
在 remote my-server-1 1194 這一行,將 my-server-1 換成 VPN Server 的外部IP
關鍵四:在結尾添加兩行 代碼: up /etc/openvpn/update-resolv-conf
down /etc/openvpn/update-resolv-conf
目的是根據Server推過來的 dhcp-option 更新域名解析設置

4.1.4 其它設置:
關鍵五:安裝resolvconf軟體包 代碼: sudo apt-get install resolvconf 關鍵四中設置的腳本需要使用此軟體。

在Windows中,
4.2.1 將client.ovpn拷貝的config目錄
4.2.2 將證書和相關私匙拷貝到config目錄
ca.crt
client.crt
client.key

4.2.3 將client.ovpn中的my-server-1改為VPN Server的外部IP

『伍』 如何在Ubuntu14.04的Docker容器中運行OpenVPN

本文將指導你如何搭建私有docker registry,並確保其安全性。在本教程的最後,你將親身體驗上傳自製的docker鏡像到私有registry,並在不同的機器上安全的將該其拉去下來。
本教程不包含如何容器化應用服務的內容,而是旨在引導你去創建registry來存儲你要部署的服務資源。如果你想要docker的入門教程,也許這兒可以幫到你。
基於Ubuntu14.04系統的單registry和單客戶機模式,本教程已經通過測試,也許在其他基於debian的發布上仍可以運行。
docker概念
如果在此之前你尚未接觸過docker,這需要花費你幾分鍾的時間來熟悉docker的關鍵概念。如果你對docker已得心應手,只是想了解如何構建私有registry的話,那麼,你可以直接進入下一小節。
對於一個新手該如何使用docker,不妨試試這里優秀的docker筆記。
docker的核心就是要對應用以及應用的依賴與操作系統分離。為了達到上述目的,docker採用容器與鏡像機制。一個docker鏡像基本上是一個文件系統的模板。當你通過docker run命令運行一個docker鏡像時,該文件系統的一個實例即被激活,並且運行在系統內的docker容器之中。默認的,該容器無法觸及原始鏡像以及docker本身所運行在的主機的文件系統。這是一個獨立的環境。
對容器所做的任何改動都將保存在容器本身之內,並不會影響原始的鏡像。如果想保留這些改動,那麼,可以通過docker commit命令將容器保存為鏡像。這意味你可以通過原有的容器來衍生出新的容器,而不會對原始容器(或鏡像)造成任何影響。如果你熟悉git,那麼你會覺得該流程十分眼熟:從任意的容器上去創建新的分支(這里,分支的意思即為docker中的鏡像)。運行鏡像類似於執行git checkout操作。
更進一步形容,運行私有docker registry,就好比為docker鏡像運行私有git倉庫。
第一步——安裝必要的軟體
在docker registry伺服器上,應當創建一個擁有sudo許可權的用戶(如果可以,在客戶機上也如此)。
docker registry軟體是一款python應用,因此為了使其能夠運行起來,需要安裝python開發環境以及必要的庫:
sudo apt-get updatesudo apt-get -y install build-essential python-dev libevent-dev python-pip liblzma-dev

第二步——安裝並配置docker registry
為了安裝最新的穩定的docker registry發行版(作者撰文時為0.7.3,譯者譯時為0.9.1),我們將使用python包管理工具pip:
sudo pip install docker-registry

docker-registry需要配置文件。
默認地,pip將該配置文件放置在相當偏僻的地方,因系統中python的安裝位置而異。因此,為了找到該路徑,我們將嘗試運行registry,以查看相關的輸出:
gunicorn --access-logfile - --debug -k gevent -b 0.0.0.0:5000 -w 1 docker_registry.wsgi:application

由於配置文件不在正確的位置,上述嘗試將會以失敗而告終,並輸出一條包含FileNotFoundError錯誤消息,如下所示[在某些版本中,無下述信息輸出,譯者注]:
FileNotFoundError: Heads-up! File is missing: /usr/local/lib/python2.7/dist-packages/docker_registry/lib/../../config/config.yml

registry在同樣的路徑上包含一個示例配置文件,該文件名為config_sample.yml,因此,我們可以通過上述給出的路徑名來定位示例配置文件。
從錯誤消息中復制路徑信息(此時為/usr/local/lib/python2.7/dist-packages/docker_registry/lib/../../config/config.yml),然後,將config.yml部分去除,這樣我們可以切換到該路徑下。
cd /usr/local/lib/python2.7/dist-packages/docker_registry/lib/../../config/

將config_sample.yml文件的內容復制到config.yml中:
sudo cp config_sample.yml config.yml

默認情況下,docker的數據文件存放在/tmp文件夾下,但是在許多的類Linux系統中,系統重啟時該文件夾被清空,這並不是我們所希望的。那麼,我們創建一個永久性的文件夾來存儲數據:
sudo mkdir /var/docker-registry

好的,下面我們配置config.yml文件,將對文件夾/tmp的引用更改為/var/docker-registry。首先,首先找到以sqlalchemy_index_database為首的靠近文件首部的一行:
sqlalchemy_index_database:_env:SQLALCHEMY_INDEX_DATABASE:sqlite:////tmp/docker-registry.db

將其更改指向/var/docker-registry,如下所示:
sqlalchemy_index_database:_env:SQLALCHEMY_INDEX_DATABASE:sqlite:////var/docker-registry/docker-registry.db

向下一點,到local:部分,重復上述操作,更改如下內容:
local: &localstorage: localstorage_path: _env:STORAGE_PATH:/tmp/registry

為:
local: &localstorage: localstorage_path: _env:STORAGE_PATH:/var/docker-registry/registry

樣例配置文件中的其他默認值均無需修改。一目十行即可。然而,如果你想要做一些復雜的配置,諸如採用擴展存儲裝置來存儲docker數據,那麼該文件正具有此功能。當然,這已超出本教程的范圍,你可以查看docker-registry文檔以獲取更多的幫助。
既然配置文件已置於正確的位置,那麼再一次嘗試來測試docker registry伺服器:
gunicorn --access-logfile - --debug -k gevent -b 0.0.0.0:5000 -w 1 docker_registry.wsgi:application

你會看到如下的輸出:
2014-07-27 07:12:24 [29344] [INFO] Starting gunicorn 18.02014-07-27 07:12:24 [29344] [INFO] Listening at: http://0.0.0.0:5000 (29344)2014-07-27 07:12:24 [29344] [INFO] Using worker: gevent2014-07-27 07:12:24 [29349] [INFO] Booting worker with pid: 293492014-07-27 07:12:24,807 DEBUG: Will return docker-registry.drivers.file.Storage

棒極了!現在我們已經擁有一個運行著的docker registry。下面執行Ctrl+C終止該程序。
到目前為止,docker registry並不是那麼有用。它並不會自行啟動除非我們執行上述gunicorn命令。另外,docker registry不沒有引入任何的內置的認證機制,因此,其當前狀態下是不安全並且對外部完全開放的。
第三步——以服務的形式啟動docker registry
通過創建Upstart腳本,設置docker registry在系統的啟動程序中開始運行。
首先,創建日誌文件目錄:
sudo mkdir -p /var/log/docker-registry

然後,用一款你拿手的文本編輯器來創建Upstart腳本:
sudo nano /etc/init/docker-registry.conf

將如下內容寫入上述腳本中:
description "Docker Registry"start on runlevel [2345]stop on runlevel [016]respawnrespawn limit 10 5script exec gunicorn --access-logfile /var/log/docker-registry/access.log --error-logfile /var/log/docker-registry/server.log -k gevent --max-requests 100 --graceful-timeout 3600 -t 3600 -b localhost:5000 -w 8 docker_registry.wsgi:applicationend script

更多關於Upstart腳本的內容,請閱讀該教程。
此時,執行如下命令:
sudo service docker-registry start

將看到下面的輸出:
docker-registry start/running, process 25303

當然,你也可以通過運行下面的命令查看server.log日誌文件,驗證docker-registry服務是否正在運行:
tail /var/log/docker-registry/server.log

如果一切正常的話,你會看到像之前執行gunicorn命令時輸出的文本信息。
既然docker-registry伺服器已在後台運行,那麼下面我們來配置Nginx,以使registry更加安全。

『陸』 有沒有人用過html流控的

html流量控制系統,對openvpn和ssr優化做的很好哦。支持openvpn+ssr對用戶的流量控制,還是非常不錯的

熱點內容
android列表顯示 發布:2025-02-07 17:01:19 瀏覽:63
芒果tv緩存的視頻在哪個文件里 發布:2025-02-07 16:45:05 瀏覽:814
php郵件群發 發布:2025-02-07 16:45:05 瀏覽:612
mysql資料庫基本語句 發布:2025-02-07 16:41:48 瀏覽:250
醫院門禁密碼多少 發布:2025-02-07 16:41:43 瀏覽:527
伺服器遭美國ip攻擊簽名 發布:2025-02-07 16:22:48 瀏覽:546
如何配置二良腌料 發布:2025-02-07 16:11:54 瀏覽:735
資料庫課程設計學生管理系統 發布:2025-02-07 16:11:50 瀏覽:764
美國文化密碼是什麼 發布:2025-02-07 16:07:14 瀏覽:261
安卓手機下雪特效怎麼p 發布:2025-02-07 15:49:30 瀏覽:319