㈠ linux怎麼抓包,看每個包的url
抓包的話,linux和windows其實一樣,都需要一些輔助的工具,你可以在linux下安裝一個wireshark,他可以幫助你抓取你需要的url信息
㈡ linux如何抓包讀域名
用libpcap庫寫一個抓包軟體,分析DNS協議,將域名取出來
㈢ Linux curl,https get 地址里有特殊字元怎麼處理
先試試非特殊字元是否OK;如果OK,那應該就是url encode的問題了。
建議最後的URL用引號引起來:
https://192.168.1.23:443/bmsc/\\\~\_\!\@\$\^\&\*.xml
非特殊字元的是OK的。
「 建議最後的URL用引號引起來:
https://192.168.1.23:443/bmsc/\\\~\_\!\@\$\^\&\*.xml 」
是這樣嗎:
curl --data-urlencode "\\~\_\!\@\$\^\&\*.xml" --cacert /var/ca-pem/ca-bundle-for-cdn.pem --digest 「https://192.168.1.23:443/bmsc/\\\~\_\!\@\$\^\&\*.xml 」
引用 3 樓 xiaoxiao_0223 的回復:非特殊字元的是OK的。
「 建議最後的URL用引號引起來:
https://192.168.1.23:443/bmsc/\\\~\_\!\@\$\^\&\*.xml 」
是這樣嗎:
curl --data-urlencode "\\~\_\!\@\$\^\&\*.xml" --cacert /var/ca-pem/ca-bundle-for-cdn.pem --digest 「https://192.168.1.23:443/bmsc/\\\~\_\!\@\$\^\&\*.xml 」
注意中英文,最好用單引號,雙引號的話Shell還是會解析的。
引用 4 樓 lishanchao 的回復:Quote: 引用 3 樓 xiaoxiao_0223 的回復:
非特殊字元的是OK的。
「 建議最後的URL用引號引起來:
https://192.168.1.23:443/bmsc/\\\~\_\!\@\$\^\&\*.xml 」
是這樣嗎:
curl --data-urlencode "\\~\_\!\@\$\^\&\*.xml" --cacert /var/ca-pem/ca-bundle-for-cdn.pem --digest 「https://192.168.1.23:443/bmsc/\\\~\_\!\@\$\^\&\*.xml 」
注意中英文,最好用單引號,雙引號的話Shell還是會解析的。
這個含特殊字元的URL解析不了,主要是因為有了一個反斜杠在裡面,當沒有反斜杠時是可以正常 get的,最後找到了解決的方法,不過是個比較笨的方法,命令是這樣的,用 反斜杠 encode的值代替 加到URL裡面:
curl -v -G --cacert /var/ca-pem/ca-bundle-for-cdn.pem --digest https://MPD-IS-01:443/bmsc/%5C\~_\!\@\$\^\&\*%23.xml -o sa003.xml
這里沒有再用 --data-urlencode 這個參數了,因為 --data-urlencode後會在你的URL後面會多出一個問號:?;而是直接先將"\\" encode,方法如下:
curl -v -G --cacert /var/ca-pem/ca-bundle-for-cdn.pem --digest https://MPD-IS-01:443/bmsc/ --data-urlencode "\\"
用上面的命令可以得到"\\"的 Unicode編碼,會在命令下直接打出來的,能看到是"%5C",得到這個值後,直接替換URL裡面的反斜杠就好了。
㈣ linux有沒有命令把一個url抓取並在終端列印出返回內容
簡單點,你可以用wget命令吧url的東西給弄下來,再列印到屏幕上
㈤ 如何在 Linux 下大量屏蔽惡意 IP 地址
很多情況下,你可能需要在Linux下屏蔽IP地址。比如,作為一個終端用戶,你可能想要免受間諜軟體或者IP追蹤的困擾。或者當你在運行P2P軟體時。你可能想要過濾反P2P活動的網路鏈接。如果你是一名系統管理員,你可能想要禁止垃圾IP地址訪問你們的公司郵件伺服器。或者你因一些原因想要禁止某些國家訪問你的web服務。在許多情況下,然而,你的IP地址屏蔽列表可能會很快地增長到幾萬的IP。該如何處理這個?
Netfilter/IPtables 的問題
在Linux中,可以很簡單地用netfilter/iptables框架禁止IP地址:
$ sudo iptables -A INPUT -s 1.1.1.1-p TCP -j DROP
如果你想要完全屏蔽一個IP地址段,你可以用下面的命令很簡單地做到:
$ sudo iptables -A INPUT -s 1.1.2.0/24-p TCP -j DROP
然而,當你有1000個獨立IP地址,且不帶CIDR(無類別域間路由)前綴,你該怎麼做?你要有1000條iptable規則!這顯然這並不適於大規模屏蔽。
$ sudo iptables -A INPUT -s 1.1.1.1-p TCP -j DROP
$ sudo iptables -A INPUT -s 2.2.2.2-p TCP -j DROP
$ sudo iptables -A INPUT -s 3.3.3.3-p TCP -j DROP
....
什麼是IP集?
這時候就是IP集登場了。IP集是一個內核特性,它允許多個(獨立)IP地址、MAC地址或者甚至是埠號被編碼和有效地存儲在點陣圖/哈希內核數據結構中。一旦IP集創建之後,你可以創建一條iptables規則來匹配這個集合。
你馬上就會看見IP集合的好處了,它可以讓你用一條iptable規則匹配多個ip地址!你可以用多個IP地址和埠號的方式來構造IP集,並且可以動態地更新規則而沒有性能影響。
在Linux中安裝IPset工具
為了創建和管理IP集,你需要使用稱為ipset的用戶空間工具。
要在Debian、Ubuntu或者Linux Mint上安裝:
$ sudo apt-get install ipset
Fedora或者CentOS/RHEL 7上安裝:
$ sudo yum install ipset
使用IPset命令禁止IP
讓我通過簡單的示例告訴你該如何使用ipset命令。
首先,讓我們創建一條新的IP集,名為banthis(名字任意):
$ sudo ipset create banthis hash:net
第二個參數(hash:net)是必須的,代表的是集合的類型。IP集有多個類型。hash:net類型的IP集使用哈希來存儲多個CIDR塊。如果你想要在一個集合中存儲單獨的IP地址,你可以使用hash:ip類型。
一旦創建了一個IP集之後,你可以用下面的命令來檢查:
$ sudo ipset list
這顯示了一個可用的IP集合列表,並有包含了集合成員的詳細信息。默認上,每個IP集合可以包含65536個元素(這里是CIDR塊)。你可以通過追加"maxelem N"選項來增加限制。
$ sudo ipset create banthis hash:net maxelem 1000000
現在讓我們來增加IP塊到這個集合中:
$ sudo ipset add banthis 1.1.1.1/32
$ sudo ipset add banthis 1.1.2.0/24
$ sudo ipset add banthis 1.1.3.0/24
$ sudo ipset add banthis 1.1.4.10/24
你會看到集合成員已經改變了。
$ sudo ipset list
以上圖片上傳到紅聯Linux系統教程頻道中。
現在是時候去創建一個使用IP集的iptables規則了。這里的關鍵是使用"-m set --match-set "選項。
現在讓我們創建一條讓之前那些IP塊不能通過80埠訪問web服務的iptable規則。可以通過下面的命令:
$ sudo iptables -I INPUT -m set--match-set banthis src -p tcp --destination-port 80-j DROP
如果你願意,你可以保存特定的IP集到一個文件中,以後可以從文件中還原:
$ sudo ipset save banthis -f banthis.txt
$ sudo ipset destroy banthis
$ sudo ipset restore -f banthis.txt
上面的命令中,我使用了destory選項來刪除一個已有的IP集來看看我是否可以還原它。
自動IP地址禁用
現在你應該看到了IP集合的強大了。維護IP黑名單是一件繁瑣和費時的工作。實際上,有很多免費或者收費的服務可以來幫你完成這個。一個額外的好處是,讓我們看看如何自動將IP黑名單加到IP集中。
首先讓我們從https://www.iblocklist.com/lists.php得到免費的黑名單,這個網站有不同的免費和收費的名單。免費的版本是P2P格式。
接下來我要使用一個名為iblocklist2ipset的開源Python工具來將P2P格式的黑名單轉化成IP集。
首先,你需要安裝了pip。
使用的下面命令安裝iblocklist2ipset。
$ sudo pip install iblocklist2ipset
在一些發行版如Fedora,你可能需要運行:
$ sudo python-pip install iblocklist2ipset
現在到https://www.iblocklist.com/lists.php,抓取任何一個P2P列表的URL(比如"level1"列表)。
粘帖URL到下面的命令中。
$ iblocklist2ipset generate \
--ipset banthis "http://list.iblocklist.com/?list=ydxerpxkpcfqjaybcssw&fileformat=p2p&archiveformat=gz" \
> banthis.txt
上面的命令運行之後,你會得到一個名為banthis.txt的文件。如果查看它的內容,你會看到像這些:
create banthis hash:net family inet hashsize 131072 maxelem 237302
add banthis 1.2.4.0/24
add banthis 1.2.8.0/24
add banthis 1.9.75.8/32
add banthis 1.9.96.105/32
add banthis 1.9.102.251/32
add banthis 1.9.189.65/32
add banthis 1.16.0.0/14
你可以用下面的ipset命令來載入這個文件:
$ sudo ipset restore -f banthis.txt
現在可以查看自動創建的IP集:
$ sudo ipset list banthis
在寫這篇文章時候,「level1」類表包含了237,000個屏蔽的IP列表。你可以看到很多IP地址已經加入到IP集中了。
最後,創建一條iptables命令來屏蔽這些壞蛋!
總結
這篇文章中,我描述了你該如何用強大的ipset來屏蔽不想要的IP地址。同時結合了第三方工具iblocklist2ipset,這樣你就可以流暢地維護你的IP屏蔽列表了。那些對ipset的性能提升好奇的人,下圖顯示了iptables在使用和不使用ipset的基準測試結果(注意時間坐標軸)。
㈥ 如何用linux shell 進行 url解碼
|URL編碼/解碼方法(來linuxshell實現自),方法如下:
1、編碼的兩種方法:
admin@~11:14:29>echo'手機'|tr-d' '|xxd-plain|sed's/(..)/%1/g'
admin@~11:14:29>echo'手機'|tr-d' '|od-An-tx1|tr''%
2、解碼的兩個步驟:
admin@~11:15:11>url="要解碼的URL地址"
admin@~11:15:11>printf$(echo-n$url|sed's/\/\\/g;s/(%)([0-9a-fA-F][0-9a-fA-F])/\x2/g')" "
㈦ 在linux伺服器下url地址怎麼去掉index.php/home
一》在linux裡面設置
1.打開apache的配置文件,conf/httpd.conf :
LoadMole rewrite_mole moles/mod_rewrite.so,把該行前的# 去掉 。
搜索 AllowOverride None(配置文件中有多處),看注釋信息,將相關.htaccess的該行信息改為AllowOverride All。【其實apache 默認的都已經打開的】
2.在 CI 的根目錄下,即在 index.php ,system的同級目錄下,建立.htaccess,直接建立該文件名不會成功,可以先建立記事本文件,另存為該名的文件即可。內容如下( CI 手冊上也有介紹):
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ / index.php /$1 [L]
如果文件不是在www的根目錄下,例如是: http://localhost/nianyi_2011/ index.php ,第三行
需要改寫為RewriteRule ^(.*)$ /nianyi_2011/ index.php /$1 [L]
另外,如果你的網站的根目錄下面還有其他的文件夾,例:js,css,images,config等等文件夾,這需要過濾除去,第二行需要改寫為:
RewriteCond $1 !^index\.php|images|js|css|config|robots\.txt)。
3.將 CI 中配置文件(application/config/config.php)中$config['index_page'] ="index.php ";改寫成$config['index_page'] = "";
4.ok,完成。還要記得重啟apache。
二》在 windows 裡面開發
以上的配置在 windows 上面是不起任何作用的,所以我們在 windows 裡面需要設置我們的apache的虛擬主機,在apache裡面找到Apache-20\conf\extra\httpd-vhosts.conf 這個文件【我用的是服務是PHPnow,很多的人用wamp】,同樣找到此文件,在裡面修改,例:
# http://www.PHPnow.org
# filename: httpd-vhosts.conf
<Directory ../vhosts>
AllowOverride All
Order allow,deny
Allow from all
</Directory>
NameVirtualHost *
<VirtualHost *>
DocumentRoot ../htdocs
ServerName default:80
ErrorLog logs/default-error_log
</VirtualHost>
修改成:
# http://www.PHPnow.org
# filename: httpd-vhosts.conf
<Directory ../vhosts>
RewriteEngine on
RewriteCond $1 !^(index\.php|images|js|css|config|robots\.txt)
RewriteRule ^(.*)$ / index.php /$1 [L]
AllowOverride All
Order allow,deny
Allow from all
</Directory>
NameVirtualHost *
<VirtualHost *>
DocumentRoot ../htdocs
ServerName default:80
ErrorLog logs/default-error_log
</VirtualHost>
也就是把路由寫到這裡面來。記得重新啟動服務。
繼續修改你的配置文件:
$config['enable_query_strings'] = true
$config['controller_trigger'] = 'c';
$config['function_trigger'] = 'm';
把$config['enable_query_strings'] 修改成 false 這樣就關閉了查詢字元串形式 URL
現在你的文件的路徑就可以寫得了,例如:http://localhost/nianyi_2011/user/user_point
就相當於先前沒有配置的路由: http://localhost/nianyi_2011/ index.php ?c=user&m=user_point 同樣如果後面有參數的話,只用往後一次累加就好的了。
請注意:有時候我們這樣寫之後樣式文件載入進來會有問題,找不到js css images等等目錄,我們可以配置文件config.php裡面設置$config['base_url'] = 'http://localhost/2011_11_cms/';站點的目錄,接著我們在view模板文件<head></head>之間添加<base href="<?=base_url()?>" />,這樣就能載入其他的文件的了
㈧ linux無法通過URL訪問某些資源
把你的/etc/apache2/apache2.conf和/etc/apache2/sites-enabled/000-default文件內容貼出來,是配置問題,一般來說,644許可權就可以了,根本專不需屬要777許可權的。
㈨ Linux 文件鏈接命令 如何讓URL去訪問這個鏈接文件下的文件
用apache做個虛擬目錄
㈩ 在linux命令下如何訪問一個url
使用lynx命令。
lynx命令是純文本模式的網頁瀏覽器,不支持圖形、音視頻等多媒體信專息。
lynx語法:
lynx [options] [file]
options : 選項屬
-case:在搜索字元串時,區分大小寫;
-ftp:關閉ftp功能;
-nobrowse : 關閉目錄瀏覽功能;
-nocolor:關閉色彩顯示模式;
-reload:更新代理伺服器的緩存,只對首頁有效;
-help:顯示指令的幫助信息;
-version:顯示指令的版本信息
示例:
$ lynx www..com #訪問網路,沒有加任何選項
www..com cookie: BDSVRTM=0 Allow? (Y/N/Always/neVer) #進入之後會詢問載入cookie