Linux 限制IP

您所在的位置:网站首页 linux指定ip访问 Linux 限制IP

Linux 限制IP

#Linux 限制IP| 来源: 网络整理| 查看: 265

sshd的限制看起来并不复杂,它通过一个host的限制文件等命(命令?)于这样的一个设置,来完成它的一大部分,而接着你可以对它进行绝交(拒绝交谈)设置,而与此有趣的是此项设置也能用在pptp的服务,因为看起来它限制的是一个hosts端的玩意(系统底层网络服务?) ->....hosts.allow?目标..mac看起来还是保留了它...win也拐弯的有了它..(c:/windows/driver/etc/hosts?) 见识 linux下的/etc/hosts.allow和/etc/hosts.deny文件_老游爱你_百度空间 沿途见识[1]

linux下的/etc/hosts.allow和/etc/hosts.deny文件 /etc/hosts.allow和/etc/hosts.deny这两个文件是tcpd服务器的配置文件,tcpd服务器可以控制外部IP对本机服务的访问。这两个配置文件的格式如下:

服务进程名:主机列表:当规则匹配时可选的命令操作server_name:hosts-list[:command]

/etc/hosts.allow控制可以访问本机的IP地址,/etc/hosts.deny控制禁止访问本机的IP。如果两个文件的配置有冲突,以/etc/hosts.deny为准。下面是一个/etc/hosts.allow的示例: ALL:127.0.0.1 #允许本机访问本机所有服务进程smbd:192.168.0.0/255.255.255.0 #允许192.168.0.网段的IP访问smbd服务 ALL关键字匹配所有情况,EXCEPT匹配除了某些项之外的情况,PARANOID匹配你想控制的IP地址和它的域名不匹配时(域名伪装)的情况。 今天用来禁止一些恶意的ip地址登陆到服务器。因为远程登陆需要sshd进程,所以: 修改步骤如下: 1:修改“/etc/hosts.allow”文件,在最下面添加一行: sshd:192.168.100.0/255.255.255.0        #允许局域网内所有机器访问服务器上的sshd进程 sshd:60.28.160.244                                  #允许外网的60.28.160.244访问这个服务器上的sshd进程 2:修改“/etc/hosts.deny”文件,在最后一行添加: sshd:all                                                    #禁止所有 注: 1):修改前,请先修改“/etc/hosts.allow”文件,并且修改完毕之后切勿立即退出,应该做登陆测试           2):文件修改后,立即生效,但是对于已经运行的程序则不生效。

 

鳥哥的 Linux 私房菜 -- 移除不要的服務 沿途见识[2]

察看是否具有 tcp_wrappers 套件:

要使連線電腦的設定啟動,以使用 /etc/hosts.allow 與 /etc/hosts.deny 檔案的話,需要這一套軟體『tcp_wrappers』,要察看你的 Linux 主機內是否有這一套軟體的話,請使用:   rpm -q tcp_wrappers 或者 rpm -qa | grep tcp

如果有這套軟體的話,自然就會顯示出來,如果沒有的話,請放入你的 Linux 光碟片,將 rpm 檔案裝上去吧!  

設定允許登入的電腦(/etc/hosts.allow):

其實很簡單,只要修改 /etc/hosts.allow(如果沒有此檔,請自行以 vi 編輯)這這檔案即可,例如,我家裡的電腦中,我的內部網域(區域網路)是 192.168.1.0/255.255.255.0,這樣的網域代表電腦 IP 在於 192.168.1.1 - 192.168.1.255 之間!所以,我就將 /etc/hosts.allow 這個檔案的內容設定成為如此:   in.telnetd: 192.168.1.0/255.255.255.0, .ncku.edu.tw : Allow

加入 .ncku.edu.tw 的原因是因為我人在成大,所以加入此行的話,可以使我在成大連上我家裡的 Linux 主機。  

設定不許登入的電腦(/etc/hosts.deny):

由於正常的情況下, Linux 會先判斷 hosts.allow 這個檔案,這個檔案中的電腦如果設定為可連線的話,則 hosts.deny 就不會被使用,因此,設定好了 hosts.allow 之後,將 /etc/hosts.deny 設定為『所有電腦都不許登入』的情況,如下所示:   in.telnetd: ALL : Deny

這樣一來,基本的防護措施就有了(不用重新開機就自動執行了!)。

 

hosts.allow - Linux Command - Unix Command 沿途见识[3]

PATTERNS

The access control language implements the following patterns:

A string that begins with a `.' character. A host name is matched if the last components of its name match the specified pattern. For example, the pattern `.tue.nl' matches the host name `wzv.win.tue.nl'. A string that ends with a `.' character. A host address is matched if its first numeric fields match the given string. For example, the pattern `131.155.' matches the address of (almost) every host on the Eindhoven University network (131.155.x.x). A string that begins with an `@' character is treated as an NIS (formerly YP) netgroup name. A host name is matched if it is a host member of the specified netgroup. Netgroup matches are not supported for daemon process names or for client user names. An expression of the form `n.n.n.n/m.m.m.m' is interpreted as a `net/mask' pair. An IPv4 host address is matched if `net' is equal to the bitwise AND of the address and the `mask'. For example, the net/mask pattern `131.155.72.0/255.255.254.0' matches every address in the range `131.155.72.0' through `131.155.73.255'. SSH限制ip登陆 - Mr. Kang - 51CTO技术博客 沿途见识[4]

在/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 本文将讲述一些可以加强Unix,Linx服务器SSH访问的安全性的一些措施。 我个人极力非常推荐的措施是: 1.限制性SSH访问,将sshd绑定到一个ip地址,和允许所有ip地址是完全不同的安全。 2.将sshd默认端口22改为其它端口。 步骤如下: 前提: SSH 客户端 - 我推荐使用 putty (搜索google,你会很快找到它) SSH 服务已安装 第一步: 以root身份SSH登录到服务器。 第二步:在命令提示符下输入:pico -w /etc/ssh/sshd_config 第三步:向下翻页,在这个文件中找到像这样的区域:

Port 22 Protocol 2, 1 ListenAddress 0.0.0.0 ListenAddress ::

第四步:取消注释符号#,并修改 端口 #Port 22 像这样修改它 Port 5678 (选择你未被使用的4到5位数字组成的端口(49151是最高端口数)) 协议 #Protocol 2, 1 改为这样: Protocol 2 监听地址 #ListenAddress 0.0.0.0 改为这样: ListenAddress 125.121.123.15(这里的地址改为你自己访问服务器常用的客户端ip地址) 第五步 如果你想禁用直接用root登录,向下翻知道你看见

PermitRootLogin yes

去掉前面的注释符号#,修改为 PermitRootLogin no 按住Ctrl键保存修改,在按Ctrl + x组合键退出。 第六步 在命令提示符下输入: /etc/rc.d/init.d/sshd restart 第七步 退出SSH,以后再登录就必须使用新的端口号(如:49151),并且服务器限制只允许从一个指定的 IP地址(如:125.121.123.15)SSH登录了。 注意事项: 如果修改后出现不能登录或者其他问题,你只需要为服务器接上显示器 或者 Telnet 到你的服务器,修改设置,然后再重新SSH登录。Telnet 是一个非常不安全的协议,所以在你使用它之后最好是修改一下你的root密码。 (the end)   或者 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用什么帐户登陆



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3