GNU/Linux >> Znalost Linux >  >> Panels >> Panels

Nastavte Ubuntu-Server 6.06 LTS jako bránu firewall/bránu pro prostředí vaší malé firmy

Nastavte Ubuntu-Server 6.06 LTS jako bránu firewall/bránu pro prostředí vaší malé firmy

Zahrnuje:Shorewall, NAT, Caching NameServer, DHCP Server, VPN Server, Webmin, Munin, Apache (s povoleným SSL), Squirrelmail, nastavení Postfixu s virtuálními doménami, kurýrní imap imaps pop3 pop3s, sasl autentizace pro silniční bojovníky, MailScanner jako obal pro SpamAssassin, Razor, ClamAV atd. Samba nainstalována, není nakonfigurována.

Vyžaduje velmi malou údržbu a je rozšiřitelný za hranice vaší nejdivočejší představivosti. Vše samozřejmě závisí na použitém hardwaru.

Toto je pouze návod COPY&PASTE. Pro více informací použijte net. Já ano... Nicméně příspěvky a návrhy jsou vždy vítány! Vím, že se to dá udělat lépe, takže neváhejte.

Měl jsem tento návod okamžitě založit na 6.06 LTS, kvůli LTS. Omlouvám se za to. Kvůli některým drobným, ale důležitým změnám, které jsou potřeba k tomu, aby to fungovalo s Ubuntu 6.06 LTS, jsem to napsal znovu.

Pokud si někdo z vás najde čas přidat dobrou instalaci a konfiguraci pro snort AND snortsam, včetně komplexního ovládacího panelu, byl bych mu vděčný.

Rozsah:vytvoření firewallu/(mail) brány pro malou síť (řekněme 10 až 15 uživatelů nebo tak na PIII 450 MHz, 512 MB RAM a dvě identické síťové karty rozhraní, širokopásmové připojení, plně funkční, pro obchodní prostředí. Lepší specifikace vašeho hardwaru (zejména množství paměti RAM) výrazně zlepší výkon vašeho serveru. Zmíněné specifikace jsou naprosté minimum pro méně náročné zákazníky, jen naznačují, že pokud opravdu chcete, lze to skutečně udělat (je třeba udělat poté nějaké úpravy).

Očekávané publikum:(počáteční) sysop.

Tento návod vede k pevnému systému „připraveno k použití“. Zábavná část, myslím, (ladění a ladění atd.) začíná, když jste hotovi. Možná budete chtít zkontrolovat své protokoly, abyste našli vodítka, kde by mělo ladění začít. Munin by vám toho mohl také hodně říct.

Bavte se!

Nejprve proveďte čistou instalaci pomocí Ubuntu-Server 6.06 LTS. Během instalace bude automaticky detekováno správné nastavení pro eth0. Pokud se to nezdaří, vyměňte síťové kabely a zkuste to znovu. Existuje velmi malá šance, že váš ISP neprovozuje server DHCP (to se nikdy nestalo), nebo že by mohl být mimo provoz (toho bylo vidět již několikrát, také si tu a tam mohou pokazit DNS). V takovém případě je nejlepší počkat, až to opraví. Takže začneme s adresou přidělenou DHCP pro eth0. Toto je jen snadný způsob, jak zjistit, která NIC je ve skutečnosti eth0. Pokud již víte, která je která, raději začněte se statickou adresou pro eth0. Pokud váš ISP není mizerný, máte pro něj správná nastavení.

Nyní pokračujte a přijměte všechna výchozí nastavení (ale možná budete chtít udělat vlastní rozdělení), neinstalujte LAMP.

Nyní se přihlaste jako nový uživatel, kterého jste právě vytvořili, a proveďte:

sudo passwd

Nyní znovu zadejte své heslo. Dále zadejte nové heslo pro uživatele „root“ a potvrďte. Takže jsme vynechali ošklivé sudo (na serveru trochu divné, že?) Nyní se odhlaste a přihlaste se znovu jako root s novým heslem root.

Pomocí vim (nebo vašeho oblíbeného editoru) upravte /etc/apt/sources.list. Zakomentujte úložiště cd. Dále přidejte „universe“ (bez uvozovek) ke všem řádkům, které nejsou zakomentovány, a odkomentujte úložiště backport. Uložte soubor.

Upravte /etc/network/interfaces a přidejte následující:

auto eth1iface eth1 inet statická adresa 192.168.1.1 maska ​​sítě 255.255.255.0 vysílání 192.168.1.255 síť 192.168.1.0

Všimněte si, že zbytek tohoto návodu předpokládá, že jste skutečně provedli nastavení pro eth1, jak je uvedeno.

Moje full/etc/network/interfaces vypadá takto:

# Tento soubor popisuje síťová rozhraní dostupná na vašem systému# a jak je aktivovat. Další informace viz interfaces(5).# Síťové rozhraní zpětné smyčkyauto loiface lo inet loopback# Primární síťové rozhraníauto eth0iface eth0 inet dhcpauto eth1iface eth1 inet statická adresa 192.168.1.1 síťová maska ​​255.255.255.0160 broadcast.1 1655.255.0125 broadcast.1 />

Jak můžete vidět, můj eth0 získává svá nastavení pomocí DHCP.

Uložte soubor. Dále postupujte:

aktualizace apt-get
apt-get install openssh-server
upgrade apt-get

Během procesu upgradu je nainstalován nový obraz jádra. Další postup:

restartovat

Zbytek toho můžete udělat ze své pracovní stanice, buď linuxové nebo druhé (musí mít putty), takže můžete skutečně kopírovat a vkládat. Stačí se přihlásit k 192.168.1.1 jako root a začít.

Ujistěte se, že nastavení sítě vaší pracovní stanice odpovídá nastavení vašeho serveru eth1

Pokud jste zmateni, nejprve nakonfigurujte a spusťte server DHCP, jak je uvedeno v tomto článku, a nechte svou pracovní stanici automaticky detekovat správná nastavení.

Nastavte Ubuntu-Server 6.06 LTS jako bránu firewall/bránu pro prostředí malých firem – Strana 2

Nyní udělejte:

apt-get install libmd5-perl libnet-ssleay-perl libauthen-pam-perl libio-pty-perl shorewall dnsmasq openssl
wget http://surfnet.dl.sourceforge.net/sourceforge/webadmin/webmin_1.390_all.deb

"surfnet" je holandský server. Změňte to na „heanet“ (pro Irsko), „belnet“ (pro Belgii), „mesh“ (pro Německo) a tak dále.

dpkg -i webmin_1.390_all.deb
cp /usr/share/doc/shorewall/examples/two-interfaces/* /etc/shorewall/
cd /etc/shorewall
gunzip interfaces.gz masq.gz rules.gz

Nyní otevřete svůj prohlížeč a přihlaste se do webminu na https://192.168.1.1:10000 jako root se svým heslem root a pomocí modulu webmin's shorewall změňte zásady a pravidla vašeho firewallu podle potřeby (prozatím nastavuji pouze pravidla Pokud nemáte rádi webmin, můžete pro začátek zkopírovat a vložit soubor mých pravidel.

Také nastavte v /etc/shorewall/shorewall.conf  řádek „IP_FORWARDING=Keep“  na  „IP_FORWARDING=On“ (bez uvozovek)
a povolte firewall v /etc/default/shorewall.

Můj /etc/shorewall/rules  nyní vypadá takto:

############################################## ################################################## ############
#AKCE ZDROJ CÍL PROTO DEST ZDROJ PŮVODNÍ CENA UŽIVATELSKÁ/
# PORT PORT(S) LIMITNÍ SKUPINA PORTŮ
# PORT PORT(S) DEST LIMIT GROUP
#
# Přijímat připojení DNS z firewallu do sítě
#
DNS/AKCEPTOVAT $FW net
AKCEPTOVAT $FW net all
PŘIJÍMEJTE $FW loc all
PŘIJMEJTE loc $FW vše
#
# Přijměte SSH připojení z místní sítě pro správu
#
SSH/ACCEPT loc $FW
#
# Povolit Ping z místní sítě
#
Ping/ACEPT loc $FW
#
# Odmítnout Ping ze „špatné“ síťové zóny. a zabraňte zaplavení vašeho logu..
#
Ping/REJECT net $FW
AKCEPTOVAT $FW loc icmp
AKCEPTOVAT $FW net icmp
#LAST LINE - - PŘIDEJTE SVÉ PŘÍSPĚVKY PŘED TOTO - NEODSTRAŇUJTE
Dále proveďte:
rm /etc/shorewall/README.txt Makefile
/etc/init.d/shorewall start

Nyní byste měli být schopni surfovat na internetu.

NEPOKRAČUJTE, DOKUD NEBUDETE ÚSPĚŠNĚ BURZOVAT NA SÍTI. PROTOŽE TOTO JE VÁŠ RÁMEC. MUSÍ to být v pořádku.

Nastavte Ubuntu-Server 6.06 LTS jako bránu firewall/bránu pro prostředí malých firem – Strana 3

Takže teď potřebujeme nějaké balíčky. Udělejte (vše v jednom řádku!):

apt-get install clamav-daemon xfsdump břitva pyzor mailscanner spamc spamassassin postfix courier-authmysql courier-pop courier-pop-ssl courier-imap courier-imap-ssl libsasl2-modules-sql-mysql sasl dpkg-dev fakeroot debhelper libdb4.2-dev libgdbm-dev libldap2-dev libpcre3-dev libmysqlclient12-dev libssl-dev libsasl2-dev postgresql-dev zipdegfetdate po-debconf dpatch zoptjpch zlibde fileutils curl imagemagick squirrelmail squirrelmail-locales munin munin-node ntp nfs-kernel-server samba unzoo mysql-server mysql-client libapache2-mod-php4 libapache2-mod-perl2 php4 php4-cli php4php4-common php4-php4-common php4 domxml php4-gd php4-imap php4-ldap php4-mcal php4-mhash php4-mysql php4-odbc php4-hruška php4-xslt curl php-hruška mailx libzzip-dev libgmp3c2 libgmp3-dev dhcp>
 

Přijmout všechna výchozí nastavení.

Nyní udělejte:

mysqladmin -u root heslo yourrootsqlpassword

ZDE POUŽÍVEJTE SKUTEČNÉ HESLO!

Nyní nakonfigurujte Apache a Squirrelmail.

/usr/sbin/squirrelmail-configure

Nastavte jej na courier (možnost D) a udělejte si ik ​​jinak, jak se vám líbí.
Nezapomeňte povolit některé pluginy a v případě potřeby nastavit výchozí jazyk. Také doporučuji nastavit toto:

$show_contain_subfolders_option =true;

Můj/etc/squirrelmail/config.php nyní vypadá takto:(Pouze moje aktuální konfigurace. Nekopírujte ji, použijte ji jako referenci.)


/**
* Konfigurační soubor SquirrelMail
* Vytvořeno pomocí konfiguračního skriptu conf.pl
*/

globální $version;
$config_version ='1.4.0';
$config_use_color =2;

$org_name ="Lürsen";
$org_logo =SM_PATH . 'images/sm_logo.png';
$org_logo_width ='564';
$org_logo_height ='261';
$org_title ="Lürsen";
$signout_page ='https ://lursen.net/webmail';
$frame_top ='_top';

$provider_uri ='http://www.squirrelmail.org/';

$provider_name ='SquirrelMail';

$motd ="";

$squirrelmail_default_language ='nl_NL';
$default_charset ='iso-8859 -1';
$lossy_encoding =false;

$domain ='lursen.net';
$imapServerAddress ='localhost';
$imapPort =143;
$useSendmail =false;
$smtpServerAddress ='localhost';
$smtpPort =25;
$sendmail_path ='/usr/sbin/sendmail';
$ sendmail_args ='-i -t';
$pop_before_smtp =false;
$imap_server_type ='kurýr';
$invert_time =false;
$optional_delimiter ='.';
$encode_header_key ='';

$default_folder_prefix ='INBOX.';
$trash_folder ='Koš';
$sent_folder ='Odesláno';
$draft_folder ='Koncepty';
$default_move_to_trash =true;
$default_move_to_sent =true;
$default_save_as_draft =true;
$show_prefix_option =false;
$list_special_folders_first =true;
$use_color =true;
$auto_expunge =true;
$default_sub_of_inbox =false;
$show_contain_subfolders_option =true;
$default_unseen_notify =2;
$default_unseen_type =1;
$ auto_create_special =true;
$delete_folder =true;
$noselect_fix_enable =false;

$data_dir ='/var/lib/squirrelmail/data/';
$ attachment_dir ='/var/spool/squirrelmail/attach/';
$dir_hash_level =0;
$default_left_size ='150';
$force_username_lowercase =false;
$default_use_priority =true;
$hide_sm_attributions =false;
$default_use_mdn =true;
$edit_identity =true;
$edit_name =true;
$hide_auth_header =false;
$allow_thread_sort =false;
$allow_server_sort =false;
$allow_charset_search =true;
$uid_support =true;

$plugins[0] ='abook_take';
$plugins[1] ='delete_move_next';
$plugins[2] =' calendar';
$plugins[3] ='filtry';
$plugins[4] ='message_details';
$plugins[5] ='mail_fetch';
$ plugins[6] ='newmail';

$theme_css ='';
$theme_default =0;
$theme[0]['PATH'] =SM_PATH . 'themes/default_theme.php';
$theme[0]['NAME'] ='Výchozí';
$theme[1]['PATH'] =SM_PATH . 'themes/plain_blue_theme.php';
$theme[1]['NAME'] ='Plain Blue';
$theme[2]['PATH'] =SM_PATH . 'themes/sandstorm_theme.php';
$theme[2]['NAME'] ='Písečná bouře';
$theme[3]['PATH'] =SM_PATH . 'themes/deepocean_theme.php';
$theme[3]['NAME'] ='Hluboký oceán';
$theme[4]['PATH'] =SM_PATH . 'themes/slashdot_theme.php';
$theme[4]['NAME'] ='Slashdot';
$theme[5]['PATH'] =SM_PATH . 'themes/purple_theme.php';
$theme[5]['NAME'] ='Purple';
$theme[6]['PATH'] =SM_PATH . 'themes/forest_theme.php';
$theme[6]['NAME'] ='Forest';
$theme[7]['PATH'] =SM_PATH . 'themes/ice_theme.php';
$theme[7]['NAME'] ='Ice';
$theme[8]['PATH'] =SM_PATH . 'themes/seaspray_theme.php';
$theme[8]['NAME'] ='Sea Spray';
$theme[9]['PATH'] =SM_PATH . 'themes/bluesteel_theme.php';
$theme[9]['NAME'] ='Blue Steel';
$theme[10]['PATH'] =SM_PATH . 'themes/dark_grey_theme.php';
$theme[10]['NAME'] ='Tmavě šedá';
$theme[11]['PATH'] =SM_PATH . 'themes/high_contrast_theme.php';
$theme[11]['NAME'] ='Vysoký kontrast';
$theme[12]['PATH'] =SM_PATH . 'themes/black_bean_burrito_theme.php';
$theme[12]['NAME'] ='Black Bean Burrito';
$theme[13]['PATH'] =SM_PATH . 'themes/servery_theme.php';
$theme[13]['NAME'] ='Servery';
$theme[14]['PATH'] =SM_PATH . 'themes/maize_theme.php';
$theme[14]['NAME'] ='Kukuřice';
$theme[15]['PATH'] =SM_PATH . 'themes/bluesnews_theme.php';
$theme[15]['NAME'] ='BluesNews';
$theme[16]['PATH'] =SM_PATH . 'themes/deepocean2_theme.php';
$theme[16]['NAME'] ='Deep Ocean 2';
$theme[17]['PATH'] =SM_PATH . 'themes/blue_grey_theme.php';
$theme[17]['NAME'] ='Blue Grey';
$theme[18]['PATH'] =SM_PATH . 'themes/dompie_theme.php';
$theme[18]['NAME'] ='Dompie';
$theme[19]['PATH'] =SM_PATH . 'themes/methodical_theme.php';
$theme[19]['NAME'] ='Metodické';
$theme[20]['PATH'] =SM_PATH . 'themes/greenhouse_effect.php';
$theme[20]['NAME'] ='Skleníkový efekt (změny)';
$theme[21]['PATH'] =SM_PATH . 'themes/in_the_pink.php';
$theme[21]['NAME'] ='V růžové (změny)';
$theme[22]['PATH'] =SM_PATH . 'themes/kind_of_blue.php';
$theme[22]['NAME'] ='Druh modré (změny)';
$theme[23]['PATH'] =SM_PATH . 'themes/monostochastic.php';
$theme[23]['NAME'] ='Monostochastic (změny)';
$theme[24]['PATH'] =SM_PATH . 'themes/shades_of_grey.php';
$theme[24]['NAME'] ='Odstíny šedi (změny)';
$theme[25]['PATH'] =SM_PATH . 'themes/spice_of_life.php';
$theme[25]['NAME'] ='Koření života (změny)';
$theme[26]['PATH'] =SM_PATH . 'themes/spice_of_life_lite.php';
$theme[26]['NAME'] ='Spice of Life – Lite (změny)';
$theme[27]['PATH'] =SM_PATH . 'themes/spice_of_life_dark.php';
$theme[27]['NAME'] ='Spice of Life – Dark (změny)';
$theme[28]['PATH'] =SM_PATH . 'themes/christmas.php';
$theme[28]['NAME'] ='Svátky - Vánoce';
$theme[29]['PATH'] =SM_PATH . 'themes/darkness.php';
$theme[29]['NAME'] ='Tma (změny)';
$theme[30]['PATH'] =SM_PATH . 'themes/random.php';
$theme[30]['NAME'] ='Náhodné (změní každé přihlášení)';
$theme[31]['PATH'] =SM_PATH . 'themes/midnight.php';
$theme[31]['NAME'] ='Půlnoc';
$theme[32]['PATH'] =SM_PATH . 'themes/alien_glow.php';
$theme[32]['NAME'] ='Alien Glow';
$theme[33]['PATH'] =SM_PATH . 'themes/dark_green.php';
$theme[33]['NAME'] ='Tmavě zelená';
$theme[34]['PATH'] =SM_PATH . 'themes/penguin.php';
$theme[34]['NAME'] ='Penguin';
$theme[35]['PATH'] =SM_PATH . 'themes/minimal_bw.php';
$theme[35]['NAME'] ='Minimální BW';
$theme[36]['PATH'] =SM_PATH . 'themes/redmond.php';
$theme[36]['NAME'] ='Redmond';
$theme[37]['PATH'] =SM_PATH . 'themes/netstyle_theme.php';
$theme[37]['NAME'] ='Net Style';
$theme[38]['PATH'] =SM_PATH . 'themes/silver_steel_theme.php';
$theme[38]['NAME'] ='Stříbrná ocel';
$theme[39]['PATH'] =SM_PATH . 'themes/simple_green_theme.php';
$theme[39]['NAME'] ='Simple Green';
$theme[40]['PATH'] =SM_PATH . 'themes/wood_theme.php';
$theme[40]['NAME'] ='Wood';
$theme[41]['PATH'] =SM_PATH . 'themes/bluesome.php';
$theme[41]['NAME'] ='Bluesome';
$theme[42]['PATH'] =SM_PATH . 'themes/simple_green2.php';
$theme[42]['NAME'] ='Simple Green 2';
$theme[43]['PATH'] =SM_PATH . 'themes/simple_purple.php';
$theme[43]['NAME'] ='Simple Purple';
$theme[44]['PATH'] =SM_PATH . 'themes/autumn.php';
$theme[44]['NAME'] ='Autumn';
$theme[45]['PATH'] =SM_PATH . 'themes/autumn2.php';
$theme[45]['NAME'] ='Podzim 2';
$theme[46]['PATH'] =SM_PATH . 'themes/blue_on_blue.php';
$theme[46]['NAME'] ='Modrá na modré';
$theme[47]['PATH'] =SM_PATH . 'themes/classic_blue.php';
$theme[47]['NAME'] ='Classic Blue';
$theme[48]['PATH'] =SM_PATH . 'themes/classic_blue2.php';
$theme[48]['NAME'] ='Classic Blue 2';
$theme[49]['PATH'] =SM_PATH . 'themes/powder_blue.php';
$theme[49]['NAME'] ='Powder Blue';
$theme[50]['PATH'] =SM_PATH . 'themes/techno_blue.php';
$theme[50]['NAME'] ='Techno Blue';
$theme[51]['PATH'] =SM_PATH . 'themes/turquoise.php';
$theme[51]['NAME'] ='Tyrkysová';

$default_use_javascript_addr_book =false;
$abook_global_file ='';
$abook_global_file_writeable =false;

$addrbook_dsn ='';
$addrbook_table ='adresa';

$prefs_dsn ='';
$prefs_table ='userprefs';
$prefs_user_field ='uživatel';
$prefs_key_field ='prefkey';
$prefs_val_field ='prefval';
$addrbook_global_dsn =' ';
$addrbook_global_table ='global_abook';
$addrbook_global_writeable =false;
$addrbook_global_listing =false;

$no_list_for_subscribe =false;
$smtp_auth_me ='none';
$imap_auth_mech ='přihlášení';
$use_imap_tls =false;
$use_smtp_tls =false;
$session_name ='SQMSESSID';

$config_location_base ='';

@include SM_PATH . 'config/config_local.php';

/**
* Ujistěte se, že za koncovou značkou PHP
* níže nejsou žádné znaky (včetně znaků nového řádku a mezer).
* V opačném případě tento znak způsobí, že se záhlaví
* odešlou a spustí se běžný výstup, což výrazně zpacká
*, když se později pokusíme odeslat další záhlaví.
*/
?>

Dále proveďte:

apache2-ssl-certificate -days 3650

Vyplňte správný název serveru!!!

To znamená:adresy, na kterých plánujete poskytnout svým uživatelům přístup ke Squirrelmail nebo jakékoli jiné službě prostřednictvím apache na portu 443. Postačí pouze doména (MUSÍ EXISTOVAT V DNS). Ne doména/webmail.

Pokud se něco pokazilo, smažte certifikát a opakujte tento krok.

Nyní zadejte:

a2enmod ssl
a2enmod přepsat
Zahrnout a2enmod
cp /etc/apache2/sites-available/default /etc/apache2/sites-available/https
ln -s /etc/apache2/sites-available/https /etc/apache2/sites-enabled/https
ln -s /etc/squirrelmail/apache.conf /etc/apache2/sites-enabled/squirrelmail

Nastavte Ubuntu-Server 6.06 LTS jako bránu firewall/bránu pro prostředí malých firem – Strana 4

Dále upravte /etc/courier/imapd-ssl a změňte následující:

TLS_CERTFILE=/etc/apache2/ssl/apache.pem

Nyní udělejte totéž s vaším /etc/courier/pop3d-ssl.

Nyní upravte /etc/apache2/sites-available/default. Horní část musí být změněna tak, aby zněla:

NameVirtualHost *:80

Upravte také /etc/apache2/sites-available/https, v horní části souboru by mělo být uvedeno:

NameVirtualHost *:443

SSLEngine na
SSLCertificateFile /etc/apache2/ssl/apache.pem
Upravit /etc/squirrelmail/apache.conf Mělo by to vypadat takto:
Alias ​​/webmail /usr/share/squirrelmail


php_flag register_globals off
Možnosti Indexy FollowSymLinks

DirectoryIndex index.php


# přístup ke configtestu je ve výchozím nastavení omezeno, aby se zabránilo úniku informací

order deny,allow
deny from all
allow from 127.0.0.1
Uživatelé

# budou preferovat jednoduchou adresu URL, jako je http://webmail.example.com
#
# DocumentRoot /usr/share /squirrelmail
# ServerName webmail.example.com
#

# přesměrování na https, pokud je k dispozici (díky [email protected])
#
# Poznámka:Existuje několik způsobů, jak to provést, a který z nich je vhodný pro
# konfiguraci vašeho webu, závisí. Pokud si nejste jisti
#, nahlédněte do dokumentace Apache, protože tento příklad nemusí fungovat všude.
#



RewriteEngine na
RewriteCond %{HTTPS} !^on$ [NC]
RewriteRule . https://%{HTTP_HOST}%{REQUEST_URI} [L]



Nyní se ujistěte, že řádek DirectoryIndex v /etc/apache2/apache2.conf zní:

DirectoryIndex index.html index.htm index.shtml index.cgi index.php index.php3 index.pl index.xhtml

Upravte /etc/apache2/ports.conf a přidejte Listen 443:

Listen 80Listen 443

Nastavte Ubuntu-Server 6.06 LTS jako bránu firewall/bránu pro prostředí vaší malé firmy – Strana 5

Nyní nechte squirrelmail mluvit vaším jazykem. Pokud používáte pouze angličtinu, můžete samozřejmě přeskočit poslední řádek v souboru.

Upravte /var/lib/locales/supported.d/local.

Mělo by to vypadat takto:(pokud jste Holanďané, jinak upravte podle potřeby). Hlavní věcí je povolit národní prostředí pomocí znakové sady ISO-8859-1.

cs_US.UTF-8 UTF-8en_US.ISO-8859-1 ISO-8859-1nl_NL.ISO-8859-1 ISO-8859-1

dpkg-reconfigure locales

Nyní nakonfigurujeme postfix.

postconf -e 'mynetworks =127.0.0.0/8, 192.168.1.0/24'
postconf -e 'smtpd_sasl_local_domain ='
postconf -e 'smtpd_sasl_auth_enable =yes'
postconf -e 'smtpd_sasl_security_options =noanonymous'
postconf -e 'broken_sasl_auth_clients =yes'

postconf -e 'smtpd_recipient_restrictions =permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination'

postconf -e 'inet_interfaces =all'
echo 'pwcheck_method:saslauthd'>> /etc/postfix/sasl/smtpd.conf
echo 'mech_list:plain login'>> /etc/postfix/sasl/smtpd.conf
postconf -e 'smtpd_tls_auth_only =no'
postconf -e 'smtp_use_tls =yes'
postconf -e 'smtpd_use_tls =yes'
postconf -e 'smtp_tls_note_starttls_offer =yes'
postconf -e 'smtpd_tls_key_file =/etc/apache2/ssl/apache.pem'
postconf -e 'smtpd_tls_cert_file =/etc/apache2/ssl/apache.pem'
postconf -e 'smtpd_tls_loglevel =1'
postconf -e 'smtpd_tls_received_header =yes'
postconf -e 'smtpd_tls_session_cache_timeout =3600s'
postconf -e 'tls_random_source =dev:/dev/urandom'
postconf -e 'home_mailbox =Maildir/'
postconf -e 'mailbox_command ='
postconf -e 'header_checks =regexp:/etc/postfix/header_checks'
postconf -e 'relayhost ='
postconf -e 'virtual_alias_domains =hash:/etc/postfix/virtual'
postconf -e 'virtual_alias_maps =hash:/etc/postfix/virtual'
postconf -e 'smtp_never_send_ehlo =yes'
klepněte na /etc/postfix/header_checks
dotkněte se /etc/postfix/virtual

Nastavte Ubuntu-Server 6.06 LTS jako bránu firewall/bránu pro prostředí malých firem – Strana 6

Nyní upravte etc/postfix/header_checks.

Mělo by to vypadat takto:

/^Přijato:/ HOLD

cd /root
Nyní nakonfigurujte MailScanner.
chown postfix.postfix /var/spool/MailScanner/incoming
chown postfix.postfix /var/spool/MailScanner/quarantine
mkdir /var/spool/MailScanner/spamassassin
ln -s /etc/MailScanner/spam.assassin.prefs.conf /etc/spamassassin/mailscanner.cf
chown postfix.postfix /var/spool/MailScanner/spamassassin

Nyní upravte /etc/MailScanner/MailScanner.conf a nastavte následující řádky podle obrázku:

Spustit jako uživatel =postfix
Spustit jako skupina =postfix
Interval skenování fronty =120
Příchozí fronta Dir =/var/spool/postfix/hold
Odchozí fronta Dir =/var/spool/postfix/incoming
MTA =postfix
Virové skenery =clamav
Vždy zahrnout zprávu SpamAssassin =ano
SpamAssassin User State Dir =/var/spool/MailScanner/spamassassin
Odkomentujte řádek # run_mailscanner=1 ve vašem /etc/default/mailscanner.

Nyní udělejte cron úlohu /usr/sbin/check_mailscanner a spouštějte jej každých 20 minut.

Nyní oklameme spouštěcí skript MailScanneru. To je nutné, protože MailScanner odmítá spustit, mám podezření, že kvůli skriptu zaměřenému na exim (ve skutečnosti jsem Exim nikdy nepoužil, takže si tím nejsem jistý). Nechci upravovat samotný skript, protože by mohl být v budoucnu nahrazen jinou aktualizací „nespouští se“. Jen pro jistotu.

dotkněte se /etc/init.d/mailscanner_pre

Upravte /etc/init.d/mailscanner_pre. Mělo by to vypadat takto:

#!/bin/sh
mkdir /var/lock/subsys
mkdir /var/lock/subsys/MailScanner
mkdir /var/run/MailScanner
chown postfix .postfix /var/run/MailScanner
chown postfix.postfix /var/lock/subsys/MailScanner

chmod 755 /etc/init.d/mailscanner_pre
mv /etc/rc2.d/S20mailscanner /etc/rc2.d/S99mailscanner
mv /etc/rc3.d/S20mailscanner /etc/rc3.d/S99mailscanner
mv /etc/rc4.d/S20mailscanner /etc/rc4.d/S99mailscanner
mv /etc/rc5.d/S20mailscanner /etc/rc5.d/S99mailscanner
ln -s /etc/init.d/mailscanner_pre /etc/rc2.d/S20mailscanner_pre
chown postfix.postfix /var/spool/MailScanner
chown postfix.postfix /var/lib/MailScanner

To by teď mělo stačit, souhlasíte?

Nastavte Ubuntu-Server 6.06 LTS jako bránu firewall/bránu pro prostředí malých firem – Strana 7

Nyní nakonfigurujte ověřování sasl.

mkdir -p /var/spool/postfix/var/run/saslauthd

Nyní musíme upravit /etc/default/saslauthd. Mělo by to vypadat takto:

# Toto musí být odkomentováno, než bude saslauthd automaticky spuštěnSTART=yesPARAMS="-m /var/spool/postfix/var/run/saslauthd -r"# Musíte zadat ověřovací mechanismy, které chcete použít.# Toto výchozí hodnota je "pam" pro podporu PAM, ale může také obsahovat # "shadow" nebo "sasldb", například takto:# MECHANISMS="pam shadow"MECHANISMS="pam"
Dále upravte /etc/init.d/saslauthd a změňte umístění souboru PID saslauthd. Změňte hodnotu PIDFILE na /var/spool/postfix/var/run/${NAME}/saslauthd.pid, aby četl:
PIDFILE="/var/spool/postfix/var/run/${NAME}/saslauthd.pid"

Nyní naplňte svůj systém skutečnými uživateli. Nastavte uživatelské prostředí na /bin/false, abyste se vyhnuli bezpečnostním dírám.

Dále vyplňte /etc/postfix/virtual, jak chcete. Za tohle miluji Webmin. Můžete ho samozřejmě také přímo upravit. Webmin však odvádí skvělou práci.

Mám to!:"nějaká.doména" atd. se nemůže rovnat ničemu uvedenému v řádku "mydestination" v

/etc/postfix/main.cf

Můj /etc/postfix/virtual má následující strukturu:

nějaká.doména virtuální doménanějaká.jiná.doména virtuální doménanějaká.opravdu.jiná.doména virtuální doménapří[email protected] uživatel pří[email protected] jinýuživatelskýpří[email protected] uživatelskýpří[email protected] jinýuživatelskýpří[email protected] uživatel online ně[email protected] někdoidonelike [email protected]@unixlinux.online jiný uživatel pří[email protected][email protected]čně.jiná.doména someonidontlike [email protected]
a tak dále. Takže musím pouze nastavit alias pro root a postmaster v /etc/aliasesVšechny ostatní aliasy by měly být v tomto souboru. Přeposílání a doručování pošty na více adres a tak fort lze (a věřím, že by mělo) být nastaveno i v tomto souboru.

Všimněte si, že v tomto druhu nastavení mohou mít vaši uživatelé tolik aliasů, kolik chtějí (dokud se vám z nich nebude dělat špatně), ale pro každého uživatele musíte stále přidat skutečného uživatele s domovským adresářem.

Nezapomeňte to udělat

postmap /etc/postfix/virtual

až budete hotovi.

Nyní chceme nějaká pravidla, aby spamassassin odváděl lepší práci.

Nejprve upravte /etc/MailScanner/spam.assassin.prefs.conf.

Zakomentujte cestu dcc /usr/bin/dccproc. Zakomentujte také razor_timeout 10 a
skóre RCVD_IN_RSL 0.

Dále postupujte:

cd ..
wget http://www.fsl.com/support/Rules_Du_Jour.tar.gz
tar -zxvf Rules_Du_Jour.tar.gz
cd rules_du_jour
mkdir /etc/rulesdujour
cp config /etc/rulesdujour/config
cp rules_du_jour /usr/bin
cp rules_du_jour_wrapper /etc/cron.daily
/etc/cron.daily/rules_du_jour_wrapper

Dále nakonfigurujeme DHCP server.

Upravte /etc/dhcp3/dhcpd.conf. Moje teď vypadá takto:

# Local Networksubnet 192.168.1.0 maska ​​sítě 255.255.255.0 { option netbios-name-servers 192.168.1.1; volba servery doménových jmen 192.168.1.1; volba název-domény "vaše.doména.zde"; volba broadcast-adresa 192.168.1.255; opční routery 192.168.1.1; rozsah 192.168.1.100 192.168.1.130; }

Upravte /etc/default/dhcp3-server. Mělo by to číst

INTERFACES=eth1

Dále postupujte:

/etc/init.d/dhcp3-server start

Dále nainstalujte dcc ze zdroje

cd /root
wget http://www.dcc-servers.net/dcc/source/dcc.tar.Z
gunzip dcc.tar.Z
tar -xvf dcc.tar
cd dcc*
./configure
vyrobit
proveďte instalaci
vypnout -r nyní

a počkejte, až se znovu spustí.

Nastavte Ubuntu-Server 6.06 LTS jako bránu firewall/bránu pro prostředí malých firem – Strana 8

Nyní musíte každému skutečnému uživateli poslat uvítací zprávu a vytvořit tak počáteční struktury Maildir v jejich domovských adresářích, které jsou potřeba k tomu, aby se mohli přihlásit ke svým účtům. K tomu můžete použít postfixový modul webmin. Není třeba nic posílat na jejich aliasy. K odesílání těchto uvítacích zpráv možná budete chtít použít externí e-mailový účet, ale k tomu budete muset nejprve otevřít port 25 ve vaší bráně firewall, jak je znázorněno na této stránce výukového programu.

Pamatujte, že po tomto počátečním nastavení budete muset samozřejmě také poslat zprávu každému novému uživateli přidanému.

Váš webový poštovní server se nachází na adrese https://vaše.doména/webmail (nejprve odešlete tyto zprávy!)

Munin je na adrese http://vase.domena/munin

Webmin je na adrese https://vase.domena:10000

Pokud jste nenastavili žádné domény, použijte https://192.168.1.1/webmail atd.

Check that you can log in to your webmail and actually send and receive mail within your local network. If you're satisfied, open port 25 on your firewall for incoming tcp traffic (postfix) and port 6277 for incoming udp traffic (dcc). You may wish to make your webmail server availableto your users from the outside world. Open port 443 for incoming tcp traffic as well (apache ssl). Opening port 993 is also a good idea for incoming tcp connections, as it facilitates imaps.

My /etc/shorewall/rules now looks like this:(just to begin with, all firewall settings shown in this article are just ment to get you up and running, you might want to adjust these settings once you are done!)

#############################################################################################################
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGINAL RATE USER/
# PORT PORT(S) DEST LIMIT GROUP
# PORT PORT(S) DEST LIMIT GROUP
ACCEPT net $FW tcp 25
ACCEPT net $FW tcp 443
ACCEPT net $FW tcp 993
ACCEPT net $FW udp 6277
#
# Accept DNS connections from the firewall to the network
#
DNS/ACCEPT $FW net
ACCEPT $FW net all
ACCEPT $FW loc all
ACCEPT loc $FW all
#
# Accept SSH connections from the local network for administration
#
SSH/ACCEPT loc $FW
#
# Allow Ping from the local network
#
Ping/ACCEPT loc $FW
#
# Reject Ping from the "bad" net zone.. and prevent your log from being flooded..
#
Ping/REJECT net $FW
ACCEPT $FW loc icmp
ACCEPT $FW net icmp
#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
Restart the firewall:
/etc/init.d/shorewall restart

Next do:

/var/dcc/libexec/updatedcc

Now we configure your VPN Server.

Edit /etc/pptpd.conf. It should look like this now:

###############################################################################
# $Id:pptpd.conf 4255 2004-10-03 18:44:00Z rene $
#
# Sample Poptop configuration file /etc/pptpd.conf
#
# Changes are effective when pptpd is restarted.
###############################################################################

# TAG:ppp
# Path to the pppd program, default '/usr/sbin/pppd' on Linux
#
#ppp /usr/sbin/pppd

# TAG:option
# Specifies the location of the PPP options file.
# By default PPP looks in '/etc/ppp/options'
#
option /etc/ppp/pptpd-options

# TAG:debug
# Turns on (more) debugging to syslog
#
#debug

# TAG:stimeout
# Specifies timeout (in seconds) on starting ctrl connection
#
# stimeout 10

# TAG:noipparam
# Suppress the passing of the client's IP address to PPP, which is
# done by default otherwise.
#
#noipparam

# TAG:logwtmp
# Use wtmp(5) to record client connections and disconnections.
#
logwtmp

# TAG:bcrelay
# Turns on broadcast relay to clients from interface
#
#bcrelay eth1

# TAG:localip
# TAG:remoteip
# Specifies the local and remote IP address ranges.
#
# Any addresses work as long as the local machine takes care of the
# routing. But if you want to use MS-Windows networking, you should
# use IP addresses out of the LAN address space and use the proxyarp
# option in the pppd options file, or run bcrelay.
#
# You can specify single IP addresses seperated by commas or you can
# specify ranges, or both. For example:
#
# 192.168.0.234,192.168.0.245-249,192.168.0.254
#
# IMPORTANT RESTRICTIONS:
#
# 1. No spaces are permitted between commas or within addresses.
#
# 2. If you give more IP addresses than MAX_CONNECTIONS, it will
# start at the beginning of the list and go until it gets
# MAX_CONNECTIONS IPs. Others will be ignored.
#
# 3. No shortcuts in ranges! ie. 234-8 does not mean 234 to 238,
# you must type 234-238 if you mean this.
#
# 4. If you give a single localIP, that's ok - all local IPs will
# be set to the given one. You MUST still give at least one remote
# IP for each simultaneous client.
#
# (Recommended)
localip 192.168.1.1
remoteip 192.168.1.10-30
# or
#localip 192.168.0.234-238,192.168.0.245
#remoteip 192.168.1.234-238,192.168.1.245

Next edit /etc/ppp/options.It should look like this:
asyncmap 0
noauth
lock
hide-password
proxyarp
lcp-echo-interval 30
lcp-echo-failure 4
noipx

Edit /etc/ppp/pptpd-options. It should look like this:
###############################################################################
# $Id:pptpd-options 4643 2006-11-06 18:42:43Z rene $
#
# Sample Poptop PPP options file /etc/ppp/pptpd-options
# Options used by PPP when a connection arrives from a client.
# This file is pointed to by /etc/pptpd.conf option keyword.
# Changes are effective on the next connection. See "man pppd".
#
# You are expected to change this file to suit your system. As
# packaged, it requires PPP 2.4.2 and the kernel MPPE module.
###############################################################################


# Authentication

# Name of the local system for authentication purposes
# (must match the second field in /etc/ppp/chap-secrets entries)
name pptp-vpn

# Optional:domain name to use for authentication
# domain mydomain.net

# Strip the domain prefix from the username before authentication.
# (applies if you use pppd with chapms-strip-domain patch)
#chapms-strip-domain


# Encryption
# Debian:on systems with a kernel built with the package
# kernel-patch-mppe>=2.4.2 and using ppp> =2.4.2, ...
# {{{
refuse-pap
refuse-chap
refuse-mschap
# Require the peer to authenticate itself using MS-CHAPv2 [Microsoft
# Challenge Handshake Authentication Protocol, Version 2] authentication.
require-mschap-v2
# Require MPPE 128-bit encryption
# (note that MPPE requires the use of MSCHAP-V2 during authentication)
require-mppe-128
# }}}




# Network and Routing

# If pppd is acting as a server for Microsoft Windows clients, this
# option allows pppd to supply one or two DNS (Domain Name Server)
# addresses to the clients. The first instance of this option
# specifies the primary DNS address; the second instance (if given)
# specifies the secondary DNS address.
# Attention! This information may not be taken into account by a Windows
# client. See KB311218 in Microsoft's knowledge base for more information.
#ms-dns 10.0.0.1
ms-dns 192.168.0.1

# If pppd is acting as a server for Microsoft Windows or "Samba"
# clients, this option allows pppd to supply one or two WINS (Windows
# Internet Name Services) server addresses to the clients. The first
# instance of this option specifies the primary WINS address; the
# second instance (if given) specifies the secondary WINS address.
#ms-wins 10.0.0.3
ms-wins 192.168.0.1

# Add an entry to this system's ARP [Address Resolution Protocol]
# table with the IP address of the peer and the Ethernet address of this
# system. This will have the effect of making the peer appear to other
# systems to be on the local ethernet.
# (you do not need this if your PPTP server is responsible for routing
# packets to the clients -- James Cameron)
proxyarp

# Debian:do not replace the default route
nodefaultroute


# Logging

# Enable connection debugging facilities.
# (see your syslog configuration for where pppd sends to)
#debug

# Print out all the option values which have been set.
# (often requested by mailing list to verify options)
#dump


# Miscellaneous

# Create a UUCP-style lock file for the pseudo-tty to ensure exclusive
# access.
lock

# Disable BSD-Compress compression
nobsdcomp
auth

Next, edit /etc/ppp/chap-secrets. Mělo by to vypadat takto:

# Secrets for authentication using CHAP# client server secret IP addressesuser pptp-vpn abcdefg "*"
Now do:
/etc/init.d/pptpd restart

You must be able now to setup a vpn connection to your new server from the inside of your firewall as "user" with password "abcdefg" (without the quotes) Change this initial username and password and add some users, if you like. Maybe you'll have to reboot some machines to make it work.

Now open your firewall for incoming vpn connections. To do this, set your /etc/shorewall/rules as shown.

My /etc/shorewall/rules at this time:

#############################################################################################################
#ACTION SOURCE DEST PROTO DEST SOURCE ORIGINAL RATE USER/
# PORT PORT(S) DEST LIMIT GROUP
# PORT PORT(S) DEST LIMIT GROUP
ACCEPT net $FW tcp 25
ACCEPT net $FW tcp 443
ACCEPT net $FW tcp 993
ACCEPT net $FW udp 6277
DNAT net fw:192.168.1.1 tcp 1723
DNAT net fw:192.168.1.1 47
#
# Accept DNS connections from the firewall to the network
#
DNS/ACCEPT $FW net
ACCEPT $FW net all
ACCEPT $FW loc all
ACCEPT loc $FW all
#
# Accept SSH connections from the local network for administration
#
SSH/ACCEPT loc $FW
#
# Allow Ping from the local network
#
Ping/ACCEPT loc $FW
#
# Reject Ping from the "bad" net zone.. and prevent your log from being flooded..
#
Ping/REJECT net $FW
ACCEPT $FW loc icmp
ACCEPT $FW net icmp
#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE
To complete this step, do:
/etc/init.d/shorewall restart

So now your customers will be able to do their (computer network related) job at home as well.

Note, that this only makes sense when your server has a reliable broadband connection to the internet, which in The Netherlands is the defacto standard, even for very tiny offices and most home addresses. In this respect we are way ahead of the rest of the world.

Now edit your /etc/MailScanner/spam.assassin.prefs.conf and add the following lines at the bottom:

score RCVD_IN_SORBS_WEB 10
score RCVD_IN_WHOIS_INVALID 10
score RCVD_IN_WHOIS_BOGONS 10
score RCVD_IN_NJABL_PROXY 10
score RCVD_IN_DSBL 10
score RCVD_IN_XBL 10
score RCVD_IN_BL_SPAMCOP_NET 10
score RCVD_IN_SORBS_DUL 10
score SARE_LWSYMFMT 3
score SARE_MLB_Stock4 3
score SARE_BAYES_5x8 3
score SARE_BAYES_6x8 3
score URIBL_SC_SURBL 10
score URIBL_WS_SURBL 10
score URIBL_PH_SURBL 10
score URIBL_OB_SURBL 10
score URIBL_AB_SURBL 10
score URIBL_JP_SURBL 10
score URIBL_SBL 10
score ALL_TRUSTED 0

Now clean your /root directory. That's where all the downloads went.

Samba is installed. As every setup of Samba is unique, I can't help you out here. Don't know how to do it? This is a good starting point.

To complete all of this, do:

/etc/init.d/mailscanner restart

Now watch the spam reports in the headers of incoming mail (but make sure your users agree to this, as you will be violating some postal and maybe other laws) to adjust the last edit (and add some) to make it work as you like. Especially false negatives and even more false positives should draw your attention. When you are done you may wish to send most spam, if not all, to /dev/null.

Make this spy yob easy:Create a special account to which you send a copy of all mail handled by your server. Let's assume you create this user and call it "spy" (without quotes) and you have given spy a line in /etc/postfix/virtual, (like "[email protected]    spy", without quotes). Next do:

postmap /etc/postfix/virtual

Now send spy a welcome message, as a rule of thumb, and check that spy's account is fully operational. Next do:

postconf -e 'always_bcc =spy' 

DONE!


Panels
  1. 5 nejlepších softwarových řešení pro volání pro vaši firmu

  2. Jak nastavit přesměrování pro váš web v cPanel

  3. Jak nastavit bránu firewall s UFW na Ubuntu 16.04

  1. Nastavte Ubuntu-Server 6.10 jako bránu firewall/bránu pro prostředí vaší malé firmy

  2. Cloudový hosting databází pro malé firmy:Proč je to ideální

  3. Jak vybrat správný plán VPS pro vaši firmu

  1. 7 výhod používání virtuálního privátního serveru pro vaše podnikání

  2. Jak nastavit proměnné prostředí pro službu systemd v CentOS/RHEL 7

  3. Jak nastavím výchozí přezdívku pro nová připojení irssi?