限定特定的IP訪問服務器

需求:html


windows and Linux系統僅限指定的IP或網段登錄linux

解決方法和思路:nginx

1. Windows設置的方法有多種:shell

方法一:經過本機自帶的防火牆設置限制IP訪問,修改下面三個規則屬性:windows

wKioL1m8pmei8L3gAAEn1mOJ9Y4535.png-wh_50


點擊屬性,查看對應設置:安全

wKiom1m8ppXBxq2gAABomJ2cOp8747.png-wh_50


 設定能夠訪問的地址段或IP,便可服務器

wKiom1m8ppbB7ReTAACQK2-yLKc644.png-wh_50


方法二:經過IP安全策略控制:app


打開本地安全策略:ssh

開始-運行-輸入secpol.msc或者開始-程序-管理工具-本地安全策略tcp

彈出來的窗口中,右擊IP安全策略,在本地計算機

wKioL1m8pmqi8d36AABkRGeQpGo240.png-wh_50


 鼠標右鍵,選擇管理IP篩選器列表和篩選操做:


wKioL1m8pmvihctQAACIakL4eIk848.png-wh_50


設定源地址和目的地址:

wKiom1m8ppqirTkRAACJb91D2xY435.png-wh_50


修改訪問的協議和端口,默認全部:

wKiom1m8pprwHmmQAAAtXQpXU_I186.png-wh_50


 再加一個deny的策略:

wKioL1m8pm7SDbtsAABjJQ5Orm4948.png-wh_50

 在篩選器裏調整策略便可:

wKioL1m8pm-T5NeCAABapR7Urss943.png-wh_50


方法三:經過AD服務器上的指定計算機登錄,這點在此不作說明。

(須要加入AD域,而後對用戶進行設置指定登錄)

參考文件地址:http://www.it165.net/os/html/201311/6707.html


Linxu 系統指定IP訪問控制:

解決方法和思路:

1.經過修改/etc/hosts/allow 和 /etc/hosts.deny 這兩個文件來控制遠程訪問,須要安裝tcp_wrappers

    輸入ldd  /usr/sbin/sshd ,若是輸出中有libwrap,則說明可使用tcp_wrappers,即該服務可使用/etc/hosts/allow 和 /etc/hosts.deny ,

    若是沒有輸出libwrap,則須要安裝。

 經過命令查看:

 rpm -q tcp_wrappers 或者 rpm -qa | grep tcp


 先來看容許的: 


[root@nginx ~]# cat /etc/hosts.allow
#
# hosts.allow   This file describes the names of the hosts which are
#               allowed to use the local INET services, as decided
#               by the '/usr/sbin/tcpd' server.
#
# for the shell
sshd:11.8.,12.1.,18.3.:allow


這個意思是容許 11.8.0.0  and  12.1.0.0 and 18.3.0.0 容許訪問服務器的sshd服務。

再看拒絕的:

編輯 /etc/hosts.deny 文件,添加以下語句,拒絕全部ssh請求 
sshd:all

此時此刻還能夠繼續增強修改:

第一步: 以root身份SSH登陸到服務器。
第二步:在命令提示符下輸入:pico -w /etc/ssh/sshd_config
第三步:向下翻頁,在這個文件中找到像這樣的區域:

  1. Port 22

  2. Protocol 2, 1

  3. ListenAddress 0.0.0.0

  4. ListenAddress ::

第四步:取消註釋符號#,並修改
端口:#Port 22 

改成:Port 8899
(選擇你未被使用的4到5位數字組成的端口(49151是最高端口數))


協議: #Protocol 2, 1
改成: Protocol 2


監聽地址 #ListenAddress 0.0.0.0
改成:ListenAddress 192.168.1.100(這裏的地址改成你本身訪問服務器經常使用的客戶端ip地址)


第五步 若是你想禁用直接用root登陸,向下翻知道你看見

#PermitRootLogin yes

改成PermitRootLogin no

按住Ctrl鍵保存修改,在按Ctrl + x組合鍵退出。
第六步 在命令提示符下輸入: /etc/rc.d/init.d/sshd restart
第七步 退出SSH,之後再登陸就必須使用新的端口號(如:49151),而且服務器限制只容許從一個指定的IP地址(如:192.168.1.100)SSH登陸了。
注意事項:
若是修改後出現不能登陸或者其餘問題,你只須要爲服務器接上顯示器 或者 Telnet 到你的服務器,修改設置,而後再從新SSH登陸。Telnet 是一個很是不安全的協議,因此在你使用它以後最好是修改一下你的root密碼。
 
或者
linux限制IP訪問ssh
 
在/etc/hosts.allow輸入   
(其中192.168.10.88是你要容許登錄ssh的ip,或者是一個網段192.168.10.0/24)   
sshd:192.168.10.88:allow   
    
在/etc/hosts.deny輸入(表示除了上面容許的,其餘的IP都拒絕登錄ssh)   
sshd:ALL
 
更改端口
vi /etc/ssh/sshd_config
port 3333

最後一行加上ip
allowusers root@ip   ------------------容許某個ip用什麼賬戶登



最後,執行service xinetd restart重啓服務或者

# /etc/rc.d/init.d/xinetd restart

# /etc/rc.d/init.d/network restart


(the end)

相關文章
相關標籤/搜索