Commit 8592f2b5dd90570c38710df67760751d48e636b7

Authored by Sergio Oliveira
2 parents 279ab334 211bc5d3

Merge branch 'reverseproxy-port-forward'

cookbooks/gitlab/templates/gitlab-shell.yml.erb
... ... @@ -8,7 +8,7 @@ http_settings:
8 8 # ca_path: /etc/pki/tls/certs
9 9 self_signed_cert: false
10 10  
11   -repos_path: "/var/lib/gitlab/repositories/"
  11 +repos_path: "/var/lib/gitlab-shell/repositories/"
12 12 auth_file: "/var/lib/gitlab-shell/.ssh/authorized_keys"
13 13  
14 14 redis:
... ...
cookbooks/gitlab/templates/gitlab.yml.erb
... ... @@ -29,7 +29,7 @@ production: &base
29 29 path: /var/lib/gitlab/backups
30 30 gitlab_shell:
31 31 path: /usr/lib/gitlab-shell
32   - repos_path: /var/lib/gitlab/repositories/
  32 + repos_path: /var/lib/gitlab-shell/repositories/
33 33 hooks_path: /usr/lib/gitlab-shell/hooks/
34 34 # Git over HTTP
35 35 upload_pack: true
... ...
cookbooks/reverse_proxy/files/ip_forward.conf 0 → 100644
... ... @@ -0,0 +1 @@
  1 +net.ipv4.ip_forward = 1
... ...
cookbooks/reverse_proxy/recipes/default.rb
  1 +package 'iptables-services'
  2 +
  3 +service 'iptables' do
  4 + action :enable
  5 + supports :restart => true
  6 +end
  7 +
  8 +template '/etc/sysconfig/iptables' do
  9 + owner 'root'
  10 + group 'root'
  11 + mode 0644
  12 + notifies :restart, 'service[iptables]'
  13 +end
  14 +
1 15 cookbook_file "/etc/nginx/#{node['config']['external_hostname']}.crt" do
2 16 owner 'root'
3 17 group 'root'
... ... @@ -5,6 +19,14 @@ cookbook_file "/etc/nginx/#{node['config']['external_hostname']}.crt" do
5 19 notifies :restart, 'service[nginx]'
6 20 end
7 21  
  22 +cookbook_file "/etc/sysctl.d/ip_forward.conf" do
  23 + owner 'root'
  24 + group 'root'
  25 + mode 0644
  26 +end
  27 +
  28 +execute 'sysctl -w net.ipv4.ip_forward=1'
  29 +
8 30 cookbook_file "/etc/nginx/#{node['config']['external_hostname']}.key" do
9 31 owner 'root'
10 32 group 'root'
... ...
cookbooks/reverse_proxy/templates/iptables.erb 0 → 100644
... ... @@ -0,0 +1,7 @@
  1 +*nat
  2 +
  3 +# Forward reverseproxy:22 to integration:22. Required to enable git pushes over SSH
  4 +-A PREROUTING -d <%= node['peers']['reverseproxy'] %>/32 -p tcp -m tcp --dport 22 -j DNAT --to-destination <%= node['peers']['integration'] %>:22
  5 +-A POSTROUTING -d <%= node['peers']['integration'] %>/32 -p tcp -m tcp --dport 22 -j SNAT --to-source <%= node['peers']['reverseproxy'] %>
  6 +
  7 +COMMIT
... ...
server
... ... @@ -13,13 +13,14 @@ fi
13 13 sudo -v
14 14 sudo redir --lport 80 --cport 80 --caddr $reverseproxy &
15 15 sudo redir --lport 443 --cport 443 --caddr $reverseproxy &
  16 +sudo redir --lport 22 --cport 22 --caddr $reverseproxy &
16 17  
17 18 cleanup() {
18 19 sudo -v
19 20 sudo pkill -9 redir
20 21 }
21 22  
22   -echo "Forwarding ports 80 and 443"
  23 +echo "Forwarding ports 22, 80 and 443"
23 24 echo "Hit ctrl-c to stop"
24 25 echo "Browse to: https://softwarepublico.dev/"
25 26 echo "Browse to: https://listas.softwarepublico.dev/"
... ...