iptables-web 0.3.5.pre5 → 0.3.5.pre6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7d36a31c66b49086fabd42fd7b569aab936ae2da
4
- data.tar.gz: 436a09fbe39d003c2b4ae6fd4e0554feb8397872
3
+ metadata.gz: 8d6e366fe90d0ec24a41af58b4c6778badd58498
4
+ data.tar.gz: 2a765207650ecad4f48a5df34557f9b8db0a58e1
5
5
  SHA512:
6
- metadata.gz: 540c848d4d9e5dec8aa55bd4f2ab24a89a5ef8a7f7f92f6edf04b1c34f062411372218175b5b822e76bf40842e222dc2706cec560d255b8eda24d81363574f97
7
- data.tar.gz: c60611fce9ee54ab35a6e0bb8ab95d9151df5022f95718c90512b92700c904e467cb3d1f99b20736f7a8955567b6e4ed4965e805f1630573d8b568c997947a6a
6
+ metadata.gz: 52f3b2f154e644e14fdd2aaef0b29dc6ef7b1e476ce178e63efebdfc535931f4eefc494f51e107d7b959234a816c34eb9602f0d34fd36c08134a2fe4c0c0575a
7
+ data.tar.gz: 3c0bd11be8f2d3ee629dfb0ff39a33a72dc4b666eee5e159c0784efbeff3f0b984f22b2137c0817e6449bc9027f1ce07435ad8c7c80da972017d1d2787b62da7
@@ -42,8 +42,9 @@ module IptablesWeb
42
42
  end
43
43
  end
44
44
  rescue Exception => e
45
- logger_log(e.message)
46
- logger_log(e.backtrace.join("\n"))
45
+ logger_log(e.message, ::Logger::ERROR)
46
+ logger_log(e.backtrace.join("\n"), ::Logger::ERROR)
47
+ raise e
47
48
  end
48
49
  end
49
50
  end
@@ -42,10 +42,10 @@ module IptablesWeb
42
42
  logger.log(log_level, message.to_s.strip) if logger
43
43
  end
44
44
 
45
- # def logger_log(message, log_level = Logger::INFO)
46
- # logger_log(message, log_level)
47
- # say(message)
48
- # end
45
+ def logger_say(message, log_level = Logger::INFO)
46
+ logger_log(message, log_level)
47
+ say(message)
48
+ end
49
49
  end
50
50
  end
51
51
  end
@@ -19,7 +19,7 @@ module IptablesWeb
19
19
  end
20
20
 
21
21
  global_option('--verbose', 'Combination of --log-level debug and --log-stdout') do |_|
22
- IptablesWeb.log_level = ::Logger::INFO
22
+ IptablesWeb.log_level = ::Logger::DEBUG
23
23
  IptablesWeb.log_stdout
24
24
  end
25
25
 
@@ -16,26 +16,26 @@ module IptablesWeb
16
16
  bash_file.write "set -e\n"
17
17
 
18
18
  lines = combine_new_rules(access_rules)
19
- current_rules = parse_rules(execute('iptables-save'))
20
- # set default policy to ACCEPT
21
- bash_file.write "#{IPTABLES_COMMAND} -P INPUT ACCEPT\n"
19
+ current_rules = parse_rules(`#{sudo(IPTABLES_SAVE_COMMAND)}`)
20
+ bash_file.write sudo("#{sudo(IPTABLES_COMMAND)} -P INPUT ACCEPT")
21
+ bash_file.write "\n"
22
22
  current_rules.each do |table, rules|
23
23
  rules.each do |rule|
24
24
  next unless rule.include?(LABEL)
25
- bash_file.write("#{IPTABLES_COMMAND} -t #{table} #{rule.gsub('-A', '-D')}")
26
- bash_file.write("\n")
25
+ bash_file.write sudo("#{IPTABLES_COMMAND} -t #{table} #{rule.gsub('-A', '-D')}")
26
+ bash_file.write "\n"
27
27
  end
28
28
  end
29
29
  bash_file.write "# Create rules\n"
30
- bash_file.write lines.join("\n")
30
+ bash_file.write lines.map { |l| sudo(l) }.join("\n")
31
31
  bash_file.write "\n"
32
- # Close only if rules exist
33
32
  if lines.size > 0
34
- bash_file.write "#{IPTABLES_COMMAND} -P INPUT DROP\n"
33
+ bash_file.write sudo("#{IPTABLES_COMMAND} -P INPUT DROP")
34
+ bash_file.write "\n"
35
35
  end
36
36
  bash_file.rewind
37
37
  backup
38
- res = execute("bash #{bash_file.path}")
38
+ res = `bash #{bash_file.path}`
39
39
  unless $? == 0
40
40
  logger_log('Failed to import settings. Restore previous configuration. See log for more details.', ::Logger::ERROR)
41
41
  logger_log(res, ::Logger::ERROR)
@@ -49,7 +49,7 @@ module IptablesWeb
49
49
  end
50
50
 
51
51
  def save
52
- execute(IPTABLES_SAVE_COMMAND).split("\n")
52
+ `#{sudo(IPTABLES_SAVE_COMMAND)}`.split("\n")
53
53
  end
54
54
 
55
55
  def static_rules
@@ -86,7 +86,7 @@ module IptablesWeb
86
86
  def diff
87
87
  if @backup
88
88
  @after = Tempfile.new('iptables-after')
89
- execute("#{IPTABLES_SAVE_COMMAND} > #{@after.path}")
89
+ `#{sudo(IPTABLES_SAVE_COMMAND)} > #{@after.path}`
90
90
  `diff -c #{@backup.path} #{@after.path}`
91
91
  end
92
92
  end
@@ -94,13 +94,13 @@ module IptablesWeb
94
94
  def backup
95
95
  @backup ||= Tempfile.new('iptables-before')
96
96
  logger_log("Create backup #{@backup.path}\n", ::Logger::DEBUG)
97
- execute("#{IPTABLES_SAVE_COMMAND} > #{@backup.path}")
97
+ `#{sudo(IPTABLES_SAVE_COMMAND)} > #{@backup.path}`
98
98
  @backup.rewind
99
99
  end
100
100
 
101
101
  def restore
102
102
  if @backup && File.exist?(@backup.path)
103
- execute("#{IPTABLES_RESTORE_COMMAND} -c #{@backup.path}")
103
+ `#{sudo(IPTABLES_RESTORE_COMMAND)} -c #{@backup.path}`
104
104
  end
105
105
  end
106
106
  end
@@ -1,11 +1,11 @@
1
1
  module IptablesWeb
2
2
  module Mixin
3
3
  module Sudo
4
- def execute(command)
4
+ def sudo(command)
5
5
  if is_root? || command.include?('sudo')
6
- `#{command}`
6
+ command
7
7
  else
8
- `sudo #{command}`
8
+ "sudo #{command}"
9
9
  end
10
10
  end
11
11
 
@@ -1,3 +1,3 @@
1
1
  module IptablesWeb
2
- VERSION = '0.3.5.pre5'
2
+ VERSION = '0.3.5.pre6'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: iptables-web
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.5.pre5
4
+ version: 0.3.5.pre6
5
5
  platform: ruby
6
6
  authors:
7
7
  - NikolayMurga
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-03-20 00:00:00.000000000 Z
11
+ date: 2016-03-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: system-getifaddrs
@@ -180,9 +180,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
180
180
  version: 1.3.1
181
181
  requirements: []
182
182
  rubyforge_project:
183
- rubygems_version: 2.4.7
183
+ rubygems_version: 2.4.5.1
184
184
  signing_key:
185
185
  specification_version: 4
186
186
  summary: Write a short summary. Required.
187
187
  test_files: []
188
- has_rdoc: