class SshGuard::FirewallAdapters::IPFWAdapter

Public Class Methods

new() click to toggle source
# File lib/ssh_guard/firewall_adapters.rb, line 4
def initialize
  @logger    = Logger.new(STDOUT)
end

Public Instance Methods

block_host(host) click to toggle source
# File lib/ssh_guard/firewall_adapters.rb, line 7
def block_host(host)
  unless blocked?(host)
    `ipfw add 100 deny tcp from #{host} to me ssh`
    @logger.warn("Blocking host #{host}!")
  end
end
blocked?(host) click to toggle source
# File lib/ssh_guard/firewall_adapters.rb, line 14
def blocked?(host)
  `ipfw list | grep "deny tcp from #{host} to me dst-port 22"` =~ /deny tcp from #{host} to me dst-port 22$/ ? true : false
end