319a299eef72c30f80ac21f298876e31bf521e0d
[www.jankratochvil.net.git] / project / ssht / Index.html.pl
1 #! /usr/bin/perl
2
3 # $Id$
4 # Main page of 'My::Project::ssht'
5 # Copyright (C) 2003 Jan Kratochvil <project-www.jankratochvil.net@jankratochvil.net>
6
7 # This program is free software; you can redistribute it and/or modify
8 # it under the terms of the GNU General Public License as published by
9 # the Free Software Foundation; exactly version 2 of June 1991 is required
10
11 # This program is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 # GNU General Public License for more details.
15
16 # You should have received a copy of the GNU General Public License
17 # along with this program; if not, write to the Free Software
18 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
19
20
21 package project::ssht::Index;
22 require 5.6.0;  # at least 'use warnings;' but we need some 5.6.0+ modules anyway
23 our $VERSION=do { my @r=(q$Revision$=~/\d+/g); sprintf "%d.".("%03d"x$#r),@r; };
24 our $CVS_ID=q$Id$;
25 use strict;
26 use warnings;
27
28 BEGIN{ open F,"Makefile"; our $top_dir=pop @{[split /\s/,(grep /^top_srcdir/,<F>)[0]]}; eval "use lib '$top_dir'"; close F; }
29 use My::Web;
30 Wuse 'My::Project';
31 Wuse 'project::ssht::ListItem';
32
33
34 My::Project->init_project(
35                 "__PACKAGE__"=>__PACKAGE__,
36                 "ListItem"=>\@project::ssht::ListItem::ListItem,
37                 );
38
39
40 my $cvsfile=sub ($) {
41 my($file)=@_;
42
43         return a_href $W->{"project_viewcvs"}.'/*checkout*/ssht/hostintranet/etc-inittab?rev=HEAD',
44                         CGI::escapeHTML($file);
45 };
46
47 print <<"HERE";
48
49 <ul>
50         <li>
51                 <p>Replace all strings <b>hostintranet</b> by the name of your firewalled
52                 intranet machine (without any dots - it must be valid string token).</p>
53         </li>
54         <li>
55                 <p>Replace all strings <b>public.internet.com</b> by the hostname of your
56                 server in public Internet. Replace <b>1.2.3.4-IP-of-public.internet.com</b>
57                 with IP address of this host</p>
58         </li>
59         <li>Generate new keypair by '<b>ssh-keygen -t dsa</b>'.</p>
60                 <p>Place its public key part to
61                 @{[ &{$cvsfile}('public.internet.com/home-hostintranet-ssht/.ssh/authorized_keys') ]}.</p>
62                 <p>Place its private key part to
63                 @{[ &{$cvsfile}('hostintranet/public.internet.com--hostintranet-ssht--identity') ]}.
64                 Protect this file by '<i>chmod 600 hostintranet/public.internet.com--hostintranet-ssht--identity</i>'.</p>
65         <li>
66                 <p>Append line from @{[ &{$cvsfile}('public.internet.com/etc-passwd') ]}
67                 to the file <b>/etc/passwd</b> on your server in public Internet.</p>
68         </li>
69         <li>
70                 <p>Append line from @{[ &{$cvsfile}('hostintranet/etc-inittab') ]} to
71                 the file <b>/etc/inittab</b> on your firewalled intranet machine.</p>
72                 <p>Execute '<i>init q</i>' command there.</p>
73         </li>
74 </ul>
75 HERE
76
77
78 My::Web->footer();