# Webserver - vServer (1blu) - Schritt für Schritt



## Grille (18. August 2013)

Hallo,

ich versuche seit ein paar Tagen meinen Webserver neu aufzusetzen. Ich komme mit den vielen HowTo’s nicht so richtig klar, weil ab einem bestimmten Punkt Programme Installiert werden sollen, welche bei mir eine Fehlermeldung ausgeben.
Grundlage für meinen Server ist ein vServer von 1blu. Bei diesem gibt es verschiedene vorinstallierte Betriebssysteme: ich möchte Debian ohne Plesk nutzen.
Der fertige Webserver soll diese Aufgaben bewältigen: ca. 10 bis maximal 100 Webseiten mit unterschiedlichen Domains und SubDomains. Die Webseiten sollen meinst mit Typo3 v 6.x laufen, aber auch Magento, XTC, Joomla, Wordpress und änliche Projekte sind gedacht. Die webseiten werden wahrscheinlich mehr schlecht bis mittelmäßig besucht sein. Der Server soll mir mehr als Basis für Webdesign dienen. Emails möchte ich nicht über diesen Server abfertigen.

Wichtig sind mir:
1) Server-Sicherheit
2) Performance und Geschwindigkeit
3) Gute Bedienbarkeit: ich möchte möglichst mit gleichbleibenden Arbeitsabläufen Domains und Subdomains für neue Projekte anlegen
4) ich möchte einfach und vollständig Backup‘s erstellen und genauso einfach wieder den gesamten Server von einem Backup wiederherstellen

Der Anfang:
Nachdem ich eine Neuinstallation in meinem Benutzerkonto von 1blu ausgelöst habe, wird mir ein Debian6 installiert, welches recht schmal ist: ein Systembackup ist nur 10MB groß.

diese Programme sind Installiert

```
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                            Version                      Description
+++-===============================-============================-======================================================================
ii  adduser                         3.112+nmu2                   add and remove users and groups
ii  apache2                         2.2.16-6+squeeze11           Apache HTTP Server metapackage
ii  apache2-doc                     2.2.16-6+squeeze11           Apache HTTP Server documentation
ii  apache2-mpm-prefork             2.2.16-6+squeeze11           Apache HTTP Server - traditional non-threaded model
ii  apache2-utils                   2.2.16-6+squeeze11           utility programs for webservers
ii  apache2.2-bin                   2.2.16-6+squeeze11           Apache HTTP Server common binary files
ii  apache2.2-common                2.2.16-6+squeeze11           Apache HTTP Server common files
ii  apt                             0.8.10.3+squeeze1            Advanced front-end for dpkg
ii  apt-utils                       0.8.10.3+squeeze1            APT utility programs
ii  aptitude                        0.6.3-3.2+squeeze1           terminal-based package manager (terminal interface only)
ii  base-files                      6.0squeeze7                  Debian base system miscellaneous files
ii  base-passwd                     3.5.22                       Debian base system master password and group files
ii  bash                            4.1-3                        The GNU Bourne Again SHell
ii  bind9                           1:9.7.3.dfsg-1~squeeze10     Internet Domain Name Server
ii  bind9-host                      1:9.7.3.dfsg-1~squeeze10     Version of 'host' bundled with BIND 9.X
ii  bind9utils                      1:9.7.3.dfsg-1~squeeze10     Utilities for BIND
ii  binutils                        2.20.1-16                    The GNU assembler, linker and binary utilities
ii  bsd-mailx                       8.1.2-0.20100314cvs-1        simple mail user agent
ii  bsdmainutils                    8.0.13                       collection of more utilities from FreeBSD
ii  bsdutils                        1:2.17.2-9                   Basic utilities from 4.4BSD-Lite
ii  bzip2                           1.0.5-6+squeeze1             high-quality block-sorting file compressor - utilities
ii  ca-certificates                 20090814+nmu3squeeze1        Common CA certificates
ii  cifs-utils                      2:4.5-2+squeeze1             Common Internet File System utilities
ii  console-common                  0.7.85                       basic infrastructure for text console configuration
ii  console-data                    2:1.10-9                     keymaps, fonts, charset maps, fallback tables for console-tools
ii  console-tools                   1:0.2.3dbs-69.1              Linux console and font utilities
ii  console-tools-dev               1:0.2.3dbs-69.1              Development files for Linux console and font manipulation
ii  coreutils                       8.5-1                        GNU core utilities
ii  cpio                            2.11-4                       GNU cpio -- a program to manage archives of files
ii  cpp                             4:4.4.5-1                    The GNU C preprocessor (cpp)
ii  cpp-4.4                         4.4.5-8                      The GNU C preprocessor
ii  cracklib-runtime                2.8.16-4                     runtime support for password checker library cracklib2
ii  cron                            3.0pl1-116                   process scheduling daemon
ii  dash                            0.5.5.1-7.4                  POSIX-compliant shell
ii  db4.8-util                      4.8.30-2                     Berkeley v4.8 Database Utilities
ii  dbconfig-common                 1.8.46+squeeze.0             common framework for packaging database applications
ii  debconf                         1.5.36.1                     Debian configuration management system
ii  debconf-i18n                    1.5.36.1                     full internationalization support for debconf
ii  debconf-utils                   1.5.36.1                     debconf utilities
ii  debian-archive-keyring          2010.08.28+squeeze1          GnuPG archive keys of the Debian archive
ii  debianutils                     3.4                          Miscellaneous utilities specific to Debian
ii  defoma                          0.11.11                      Debian Font Manager -- automatic font configuration framework
ii  dhcp3-client                    4.1.1-P1-15+squeeze8         ISC DHCP server (transitional package)
ii  dhcp3-common                    4.1.1-P1-15+squeeze8         ISC DHCP common files (transitional package)
ii  diff                            1:3.0-1                      dummy transitional package for diff -> diffutils
ii  diffutils                       1:3.0-1                      File comparison utilities
ii  dmsetup                         2:1.02.48-5                  The Linux Kernel Device Mapper userspace library
ii  dpkg                            1.15.8.13                    Debian package management system
ii  dselect                         1.15.8.13                    Debian package management front-end
ii  e2fslibs                        1.41.12-4stable1             ext2/ext3/ext4 file system libraries
ii  e2fsprogs                       1.41.12-4stable1             ext2/ext3/ext4 file system utilities
ii  ed                              1.4-3                        The classic UNIX line editor
ii  expat                           2.0.1-7+squeeze1             XML parsing C library - example application
ii  fetchmail                       6.3.18-2                     SSL enabled POP3, APOP, IMAP mail gatherer/forwarder
ii  file                            5.04-5+squeeze2              Determines file type using "magic" numbers
ii  findutils                       4.4.2-1+b1                   utilities for finding files--find, xargs
ii  finger                          0.17-14                      user information lookup program
ii  fontconfig                      2.8.0-2.1                    generic font configuration library - support binaries
ii  fontconfig-config               2.8.0-2.1                    generic font configuration library - configuration
ii  ftp                             0.17-23                      The FTP client
ii  gawk                            1:3.1.7.dfsg-5               GNU awk, a pattern scanning and processing language
ii  gcc-4.4-base                    4.4.5-8                      The GNU Compiler Collection (base package)
ii  gettext                         0.18.1.1-3                   GNU Internationalization utilities
ii  gettext-base                    0.18.1.1-3                   GNU Internationalization utilities for the base system
ii  gnupg                           1.4.10-4+squeeze1            GNU privacy guard - a free PGP replacement
ii  gpgv                            1.4.10-4+squeeze1            GNU privacy guard - signature verification tool
ii  grep                            2.6.3-3                      GNU grep, egrep and fgrep
ii  groff-base                      1.20.1-10                    GNU troff text-formatting system (base system components)
ii  gzip                            1.3.12-9+squeeze1            GNU compression utilities
ii  hostname                        3.04                         utility to set/show the host name or domain name
ii  ifupdown                        0.6.10                       high level tools to configure network interfaces
ii  info                            4.13a.dfsg.1-6               Standalone GNU Info documentation browser
ii  initramfs-tools                 0.98.8                       tools for generating an initramfs
ii  initscripts                     2.88dsf-13.1+squeeze1        scripts for initializing and shutting down the system
ii  insserv                         1.14.0-2                     Tool to organize boot sequence using LSB init.d script dependencies
ii  install-info                    4.13a.dfsg.1-6               Manage installed documentation in info format
ii  iproute                         20100519-3                   networking and traffic control tools
ii  iptables                        1.4.8-3                      administration tools for packet filtering and NAT
ii  iputils-arping                  3:20100418-3                 Tool to send ICMP echo requests to an ARP address
ii  iputils-ping                    3:20100418-3                 Tools to test the reachability of network hosts
ii  iputils-tracepath               3:20100418-3                 Tools to trace the network path to a remote host
ii  isc-dhcp-client                 4.1.1-P1-15+squeeze8         ISC DHCP client
ii  isc-dhcp-common                 4.1.1-P1-15+squeeze8         common files used by all the isc-dhcp* packages
ii  joe                             3.7-2                        user friendly full screen text editor
ii  klibc-utils                     1.5.20-1+squeeze1            small utilities built with klibc for early boot
ii  klogd                           1.5-6                        Kernel Logging Daemon
ii  ldap-utils                      2.4.23-7.3                   OpenLDAP utilities
ii  less                            436-1                        pager program similar to more
ii  libacl1                         2.2.49-4                     Access control list shared library
ii  libapache2-mod-php5             5.3.3-7+squeeze16            server-side, HTML-embedded scripting language (Apache 2 module)
ii  libapr1                         1.4.2-6+squeeze4             The Apache Portable Runtime Library
ii  libaprutil1                     1.3.9+dfsg-5                 The Apache Portable Runtime Utility Library
ii  libaprutil1-dbd-sqlite3         1.3.9+dfsg-5                 The Apache Portable Runtime Utility Library - SQLite3 Driver
ii  libaprutil1-ldap                1.3.9+dfsg-5                 The Apache Portable Runtime Utility Library - LDAP Driver
ii  libattr1                        1:2.4.44-2                   Extended attribute shared library
ii  libavahi-client3                0.6.27-2+squeeze1            Avahi client library
ii  libavahi-common-data            0.6.27-2+squeeze1            Avahi common data files
ii  libavahi-common3                0.6.27-2+squeeze1            Avahi common library
ii  libbind9-60                     1:9.7.3.dfsg-1~squeeze10     BIND9 Shared Library used by BIND
ii  libblkid1                       2.17.2-9                     block device id library
ii  libboost-iostreams1.42.0        1.42.0-4                     Boost.Iostreams Library
ii  libbsd0                         0.2.0-1                      utility functions from BSD systems - shared library
ii  libbz2-1.0                      1.0.5-6+squeeze1             high-quality block-sorting file compressor library - runtime
ii  libc-bin                        2.11.3-4                     Embedded GNU C Library: Binaries
ii  libc6                           2.11.3-4                     Embedded GNU C Library: Shared libraries
ii  libcap2                         1:2.19-3                     support for getting/setting POSIX.1e capabilities
ii  libck-connector0                0.4.1-4                      ConsoleKit libraries
ii  libcomerr2                      1.41.12-4stable1             common error description library
ii  libconsole                      1:0.2.3dbs-69.1              Shared libraries for Linux console and font manipulation
ii  libcrack2                       2.8.16-4                     pro-active password checker library
ii  libcroco3                       0.6.2-1                      a generic Cascading Style Sheet (CSS) parsing and manipulation toolkit
ii  libcups2                        1.4.4-7+squeeze3             Common UNIX Printing System(tm) - Core library
ii  libcwidget3                     0.5.16-3                     high-level terminal interface library for C++ (runtime files)
ii  libdb1-compat                   2.1.3-13                     The Berkeley database routines [glibc 2.0/2.1 compatibility]
ii  libdb4.7                        4.7.25-9                     Berkeley v4.7 Database Libraries [runtime]
ii  libdb4.8                        4.8.30-2                     Berkeley v4.8 Database Libraries [runtime]
ii  libdbd-mysql-perl               4.016-1                      Perl5 database interface to the MySQL database
ii  libdbi-perl                     1.612-1                      Perl Database Interface (DBI)
ii  libdbus-1-3                     1.2.24-4+squeeze2            simple interprocess messaging system
ii  libdevmapper1.02.1              2:1.02.48-5                  The Linux Kernel Device Mapper userspace library
ii  libdigest-hmac-perl             1.02+dfsg-1                  module for creating standard message integrity checks
ii  libdigest-sha1-perl             2.13-1                       NIST SHA-1 message digest algorithm
ii  libdns69                        1:9.7.3.dfsg-1~squeeze10     DNS Shared Library used by BIND
ii  libedit2                        2.11-20080614-2              BSD editline and history libraries
ii  libept1                         1.0.4                        High-level library for managing Debian package information
ii  libexpat1                       2.0.1-7+squeeze1             XML parsing C library - runtime library
ii  libfile-copy-recursive-perl     0.38-1                       Perl extension for recursively copying files and directories
ii  libfontconfig1                  2.8.0-2.1                    generic font configuration library - runtime
ii  libfreetype6                    2.4.2-2.1+squeeze4           FreeType 2 font engine, shared library files
ii  libgcc1                         1:4.4.5-8                    GCC support library
ii  libgcrypt11                     1.4.5-2                      LGPL Crypto library - runtime library
ii  libgdbm3                        1.8.3-9                      GNU dbm database routines (runtime version)
ii  libgeoip1                       1.4.7~beta6+dfsg-1           A non-DNS IP-to-country resolver library
ii  libglib2.0-0                    2.24.2-1                     The GLib library of C routines
ii  libgmp3c2                       2:4.3.2+dfsg-1               Multiprecision arithmetic library
ii  libgnutls26                     2.8.6-1+squeeze2             the GNU TLS library - runtime library
ii  libgomp1                        4.4.5-8                      GCC OpenMP (GOMP) support library
ii  libgpg-error0                   1.6-1                        library for common error values and messages in GnuPG components
ii  libgpm2                         1.20.4-3.3                   General Purpose Mouse - shared library
ii  libgssapi-krb5-2                1.8.3+dfsg-4squeeze6         MIT Kerberos runtime libraries - krb5 GSS-API Mechanism
ii  libhtml-parser-perl             3.66-1                       collection of modules that parse HTML text documents
ii  libhtml-tagset-perl             3.20-2                       Data tables pertaining to HTML
ii  libhtml-tree-perl               3.23-2                       Perl module to represent and create HTML syntax trees
ii  libidn11                        1.15-2                       GNU Libidn library, implementation of IETF IDN specifications
ii  libisc62                        1:9.7.3.dfsg-1~squeeze10     ISC Shared Library used by BIND
ii  libisccc60                      1:9.7.3.dfsg-1~squeeze10     Command Channel Library used by BIND
ii  libisccfg62                     1:9.7.3.dfsg-1~squeeze10     Config File Handling Library used by BIND
ii  libjs-mootools                  1.2.4.0~debian1-1            compact JavaScript framework
ii  libk5crypto3                    1.8.3+dfsg-4squeeze6         MIT Kerberos runtime libraries - Crypto Library
ii  libkeyutils1                    1.4-1                        Linux Key Management Utilities (library)
ii  libklibc                        1.5.20-1+squeeze1            minimal libc subset for use with initramfs
ii  libkrb5-3                       1.8.3+dfsg-4squeeze6         MIT Kerberos runtime libraries
ii  libkrb5support0                 1.8.3+dfsg-4squeeze6         MIT Kerberos runtime libraries - Support library
ii  libldap-2.4-2                   2.4.23-7.3                   OpenLDAP libraries
ii  liblocale-gettext-perl          1.05-6                       Using libc functions for internationalization in Perl
ii  liblockfile1                    1.08-4                       NFS-safe locking library, includes dotlockfile program
ii  libltdl7                        2.2.6b-2                     A system independent dlopen wrapper for GNU libtool
ii  liblwres60                      1:9.7.3.dfsg-1~squeeze10     Lightweight Resolver Library used by BIND
ii  liblzma2                        5.0.0-2                      XZ-format compression library
ii  libmagic1                       5.04-5+squeeze2              File type determination library using "magic" numbers
ii  libmcrypt4                      2.5.8-3.1                    De-/Encryption Library
ii  libmilter1.0.1                  8.14.3-9.4                   Sendmail Mail Filter API (Milter)
ii  libmpfr4                        3.0.0-2                      multiple precision floating-point computation
ii  libmysqlclient16                5.1.66-0+squeeze1            MySQL database client library
ii  libncurses5                     5.7+20100313-5               shared libraries for terminal handling
ii  libncursesw5                    5.7+20100313-5               shared libraries for terminal handling (wide character support)
ii  libnet-daemon-perl              0.43-1                       Perl module for building portable Perl daemons easily
ii  libnet-dns-perl                 0.66-2                       Perform DNS queries from a Perl script
ii  libnet-ip-perl                  1.25-2                       Perl extension for manipulating IPv4/IPv6 addresses
ii  libnetaddr-ip-perl              4.028+dfsg-1                 IP address manipulation module
ii  libnewt0.52                     0.52.11-1                    Not Erik's Windowing Toolkit - text mode windowing with slang
ii  libnfnetlink0                   1.0.0-1                      Netfilter netlink library
ii  libnl1                          1.1-6                        library for dealing with netlink sockets
ii  libonig2                        5.9.1-1                      Oniguruma regular expressions library
ii  libpam-ck-connector             0.4.1-4                      ConsoleKit PAM module
ii  libpam-foreground               0.7                          transitional dummy package which can be safely removed
ii  libpam-modules                  1.1.1-6.1+squeeze1           Pluggable Authentication Modules for PAM
ii  libpam-runtime                  1.1.1-6.1+squeeze1           Runtime support for the PAM library
ii  libpam0g                        1.1.1-6.1+squeeze1           Pluggable Authentication Modules library
ii  libpaper1                       1.1.24                       library for handling paper characteristics
ii  libpcap0.8                      1.1.1-2+squeeze1             system interface for user-level packet capture
ii  libpcre3                        8.02-1.1                     Perl 5 Compatible Regular Expression Library - runtime files
ii  libperl5.10                     5.10.1-17squeeze6            shared Perl library
ii  libplrpc-perl                   0.2020-2                     Perl extensions for writing PlRPC servers and clients
ii  libpopt0                        1.16-1                       lib for parsing cmdline parameters
ii  libpq5                          8.4.17-0squeeze1             PostgreSQL C client library
ii  libqdbm14                       1.8.77-4                     QDBM Database Libraries [runtime]
ii  libreadline6                    6.1-3                        GNU readline and history libraries, run-time libraries
ii  libsasl2-2                      2.1.23.dfsg1-7               Cyrus SASL - authentication abstraction library
ii  libselinux1                     2.0.96-1                     SELinux runtime shared libraries
ii  libsensors4                     1:3.1.2-6                    library to read temperature/voltage/fan sensors
ii  libsepol1                       2.0.41-1                     SELinux library for manipulating binary security policies
ii  libsigc++-2.0-0c2a              2.2.4.2-1                    type-safe Signal Framework for C++ - runtime
ii  libslang2                       2.2.2-4                      The S-Lang programming library - runtime version
ii  libsnmp-base                    5.4.3~dfsg-2                 SNMP (Simple Network Management Protocol) MIBs and documentation
ii  libsnmp15                       5.4.3~dfsg-2                 SNMP (Simple Network Management Protocol) library
ii  libsocket6-perl                 0.23-1                       Perl extensions for IPv6
ii  libsqlite3-0                    3.7.3-1                      SQLite 3 shared library
ii  libss2                          1.41.12-4stable1             command-line interface parsing library
ii  libssl0.9.8                     0.9.8o-4squeeze14            SSL shared libraries
ii  libstdc++6                      4.4.5-8                      The GNU Standard C++ Library v3
ii  libsys-hostname-long-perl       1.4-2                        Figure out the long (fully-qualified) hostname
ii  libsysfs2                       2.1.0+repack-1               interface library to sysfs
ii  libtalloc2                      2.0.1-1                      hierarchical pool based memory allocator
ii  libtasn1-3                      2.7-1+squeeze+1              Manage ASN.1 structures (runtime)
ii  libtext-charwidth-perl          0.04-6                       get display widths of characters on the terminal
ii  libtext-iconv-perl              1.7-2                        converts between character sets in Perl
ii  libtext-wrapi18n-perl           0.06-7                       internationalized substitute of Text::Wrap
ii  libudev0                        164-3                        libudev shared library
ii  libunistring0                   0.9.3-3                      Unicode string library for C
ii  liburi-perl                     1.54-2                       module to manipulate and access URI strings
ii  libusb-0.1-4                    2:0.1.12-16                  userspace USB programming library
ii  libuuid1                        2.17.2-9                     Universally Unique ID library
ii  libwbclient0                    2:3.5.6~dfsg-3squeeze9       Samba winbind client library
ii  libwrap0                        7.6.q-19                     Wietse Venema's TCP wrappers library
ii  libwww-perl                     5.836-1                      Perl HTTP/WWW client/server library
ii  libxapian22                     1.2.3-2                      Search engine library
ii  libxml2                         2.7.8.dfsg-2+squeeze7        GNOME XML library
ii  locales                         2.11.3-4                     Embedded GNU C Library: National Language (locale) data [support]
ii  login                           1:4.1.4.2+svn3283-2+squeeze1 system login tools
ii  logrotate                       3.7.8-6                      Log rotation utility
ii  lsb-base                        3.2-23.2squeeze1             Linux Standard Base 3.2 init script functionality
ii  lsb-release                     3.2-23.2squeeze1             Linux Standard Base version reporting utility
ii  lsof                            4.81.dfsg.1-1                List open files
ii  lynx                            2.8.8dev.5-1                 Text-mode WWW Browser (transitional package)
ii  lynx-cur                        2.8.8dev.5-1                 Text-mode WWW Browser with NLS support (development version)
ii  lzma                            4.43-14                      Compression method of 7z format in 7-Zip program
ii  m4                              1.4.14-3                     a macro processing language
ii  make                            3.81-8                       An utility for Directing compilation.
ii  makedev                         2.3.1-89                     creates device files in /dev
ii  man-db                          2.5.7-8                      on-line manual pager
ii  manpages                        3.27-1                       Manual pages about using a GNU/Linux system
ii  memtester                       4.1.3-1                      A utility for testing the memory subsystem
ii  mime-support                    3.48-1                       MIME files 'mime.types' & 'mailcap', and support programs
ii  mktemp                          8.5-1                        coreutils mktemp transitional package
ii  mlocate                         0.22.2-1                     quickly find files on the filesystem based on their name
ii  module-init-tools               3.12-2                       tools for managing Linux kernel modules
ii  mount                           2.17.2-9                     Tools for mounting and manipulating filesystems
ii  mtools                          4.0.12-1                     Tools for manipulating MSDOS files
ii  mysql-client                    5.1.66-0+squeeze1            MySQL database client (metapackage depending on the latest version)
ii  mysql-client-5.1                5.1.66-0+squeeze1            MySQL database client binaries
ii  mysql-common                    5.1.66-0+squeeze1            MySQL database common files, e.g. /etc/mysql/my.cnf
ii  mysql-server-5.1                5.1.66-0+squeeze1            MySQL database server binaries and system database setup
ii  mysql-server-core-5.1           5.1.66-0+squeeze1            MySQL database server binaries
ii  ncurses-base                    5.7+20100313-5               basic terminal type definitions
ii  ncurses-bin                     5.7+20100313-5               terminal-related programs and man pages
ii  ncurses-term                    5.7+20100313-5               additional terminal type definitions
ii  net-tools                       1.60-23                      The NET-3 networking toolkit
ii  netbase                         4.45                         Basic TCP/IP networking system
ii  odbcinst                        2.2.14p2-1                   Helper program for accessing odbc ini files
ii  odbcinst1debian2                2.2.14p2-1                   Support library for accessing odbc ini files
ii  openssh-blacklist               0.4.1                        list of default blacklisted OpenSSH RSA and DSA keys
ii  openssh-client                  1:5.5p1-6+squeeze3           secure shell (SSH) client, for secure access to remote machines
ii  openssh-server                  1:5.5p1-6+squeeze3           secure shell (SSH) server, for secure access from remote machines
ii  openssl                         0.9.8o-4squeeze14            Secure Socket Layer (SSL) binary and related cryptographic tools
ii  openssl-blacklist               0.5-2                        list of blacklisted OpenSSL RSA keys
ii  passwd                          1:4.1.4.2+svn3283-2+squeeze1 change and administer password and group data
ii  perl                            5.10.1-17squeeze6            Larry Wall's Practical Extraction and Report Language
ii  perl-base                       5.10.1-17squeeze6            minimal Perl system
ii  perl-modules                    5.10.1-17squeeze6            Core Perl modules
ii  php5-common                     5.3.3-7+squeeze16            Common files for packages built from the php5 source
ii  php5-mcrypt                     5.3.3-7+squeeze16            MCrypt module for php5
ii  php5-mysql                      5.3.3-7+squeeze16            MySQL module for php5
ii  phpmyadmin                      4:3.3.7-7                    MySQL web administration tool
ii  portmap                         6.0.0-2                      RPC port mapper
ii  procinfo                        1:2.0.304-1                  reporter for system information from /proc and /sys
ii  procmail                        3.22-19                      Versatile e-mail processor
ii  procps                          1:3.2.8-9squeeze1            /proc file system utilities
ii  proftpd-basic                   1.3.3a-6squeeze6             Versatile, virtual-hosting FTP daemon - binaries
ii  proftpd-mod-ldap                1.3.3a-6squeeze6             Versatile, virtual-hosting FTP daemon - LDAP module
ii  proftpd-mod-mysql               1.3.3a-6squeeze6             Versatile, virtual-hosting FTP daemon - MySQL module
ii  proftpd-mod-pgsql               1.3.3a-6squeeze6             Versatile, virtual-hosting FTP daemon - PostgreSQL module
ii  psmisc                          22.11-1                      utilities that use the proc file system
ii  psutils                         1.17-27                      A collection of PostScript document handling utilities
ii  pwgen                           2.06-1+b1                    Automatic Password generation
ii  python                          2.6.6-3+squeeze7             interactive high-level object-oriented language (default version)
ii  python-minimal                  2.6.6-3+squeeze7             minimal subset of the Python language (default version)
ii  python-support                  1.0.10                       automated rebuilding support for Python modules
ii  python2.6                       2.6.6-8+b1                   An interactive high-level object-oriented language (version 2.6)
ii  python2.6-minimal               2.6.6-8+b1                   A minimal subset of the Python language (version 2.6)
ii  quota                           4.00~pre1-6                  implementation of the disk quota system
ii  readline-common                 6.1-3                        GNU readline and history libraries, common files
ii  rmail                           8.14.3-9.4                   MTA->UUCP remote mail handler
ii  rsync                           3.0.7-2                      fast remote file copy program (like rcp)
ii  samba                           2:3.5.6~dfsg-3squeeze9       SMB/CIFS file, print, and login server for Unix
ii  samba-common                    2:3.5.6~dfsg-3squeeze9       common files used by both the Samba server and client
ii  sasl2-bin                       2.1.23.dfsg1-7               Cyrus SASL - administration programs for SASL users database
ii  screen                          4.0.3-14                     terminal multiplexor with VT100/ANSI terminal emulation
ii  sed                             4.2.1-7                      The GNU sed stream editor
ii  sendmail                        8.14.3-9.4                   powerful, efficient, and scalable Mail Transport Agent
ii  sendmail-base                   8.14.3-9.4                   powerful, efficient, and scalable Mail Transport Agent
ii  sendmail-bin                    8.14.3-9.4                   powerful, efficient, and scalable Mail Transport Agent
ii  sendmail-cf                     8.14.3-9.4                   powerful, efficient, and scalable Mail Transport Agent
ii  sendmail-doc                    8.14.3-9.4                   powerful, efficient, and scalable Mail Transport Agent
ii  sensible-mda                    8.14.3-9.4                   Mail Delivery Agent wrapper
ii  sensible-utils                  0.0.4                        Utilities for sensible alternative selection
ii  sharutils                       1:4.9-1                      shar, unshar, uuencode, uudecode
ii  smbfs                           2:4.5-2+squeeze1             Common Internet File System utilities - compatibility package
ii  snmp                            5.4.3~dfsg-2                 SNMP (Simple Network Management Protocol) applications
ii  spamass-milter                  0.3.1-10                     milter for filtering mail through spamassassin
ii  spamassassin                    3.3.1-1                      Perl-based spam filter using text analysis
ii  spamc                           3.3.1-1                      Client for SpamAssassin spam filtering daemon
ii  ssl-cert                        1.0.28                       simple debconf wrapper for OpenSSL
ii  sudo                            1.7.4p4-2.squeeze.4          Provide limited super user privileges to specific users
ii  sysklogd                        1.5-6                        System Logging Daemon
ii  syslinux                        2:4.02+dfsg-7                collection of boot loaders
ii  syslinux-common                 2:4.02+dfsg-7                collection of boot loaders (common files)
ii  sysv-rc                         2.88dsf-13.1+squeeze1        System-V-like runlevel change mechanism
ii  sysvinit                        2.88dsf-13.1+squeeze1        System-V-like init utilities
ii  sysvinit-utils                  2.88dsf-13.1+squeeze1        System-V-like utilities
ii  tar                             1.23-3                       GNU version of the tar archiving utility
ii  tcpd                            7.6.q-19                     Wietse Venema's TCP wrapper utilities
ii  tcpdump                         4.1.1-1                      A powerful tool for network monitoring and data acquisition
ii  tcsh                            6.17.02-4                    TENEX C Shell, an enhanced version of Berkeley csh
ii  telnet                          0.17-36                      The telnet client
ii  tofrodos                        1.7.8.debian.1-2             Converts DOS <-> Unix text files, alias tofromdos
ii  traceroute                      1:2.0.15-1                   Traces the route taken by packets over an IPv4/IPv6 network
ii  ttf-dejavu                      2.31-1                       Metapackage to pull in ttf-dejavu-core and ttf-dejavu-extra
ii  ttf-dejavu-core                 2.31-1                       Vera font family derivate with additional characters
ii  ttf-dejavu-extra                2.31-1                       Vera font family derivate with additional characters
ii  ttf-freefont                    20090104-7                   Freefont Serif, Sans and Mono Truetype fonts
ii  tzdata                          2012g-0squeeze1              time zone and daylight-saving time data
ii  ucf                             3.0025+nmu1                  Update Configuration File: preserve user changes to config files.
ii  udev                            164-3                        /dev/ and hotplug management daemon
ii  unixodbc                        2.2.14p2-1                   ODBC tools libraries
ii  unzip                           6.0-4                        De-archiver for .zip files
ii  update-inetd                    4.38+nmu1+squeeze1           inetd configuration file updater
ii  util-linux                      2.17.2-9                     Miscellaneous system utilities
ii  uuid-runtime                    2.17.2-9                     runtime components for the Universally Unique ID library
ii  vim                             2:7.2.445+hg~cb94c42c0e1a-1  Vi IMproved - enhanced vi editor
ii  vim-common                      2:7.2.445+hg~cb94c42c0e1a-1  Vi IMproved - Common files
ii  vim-runtime                     2:7.2.445+hg~cb94c42c0e1a-1  Vi IMproved - Runtime files
ii  wget                            1.12-2.1                     retrieves files from the web
ii  whiptail                        0.52.11-1                    Displays user-friendly dialog boxes from shell scripts
ii  whois                           5.0.10                       an intelligent whois client
ii  wide-dhcpv6-client              20080615-8squeeze1           DHCPv6 client for automatic IPv6 hosts configuration
ii  xinetd                          1:2.3.14-7                   replacement for inetd with many enhancements
ii  xz-utils                        5.0.0-2                      XZ-format compression utilities
ii  zlib1g                          1:1.2.3.4.dfsg-3             compression library - runtime
```

Ich denke mal, dass die wichtigsten Programme sind:
Apache2
PHP
MySql

Gerne hätte ich nginx. Was ich bis jetzt von diesem Programm gelesen habe, fängt es kleinere Anfragen ab und leitet sie direkt zur Quelle, anstatt PHP darüber nachdenken zu lassen, was die Seite langsamer macht.

ein gutes FTP-Programm wäre mir noch lieb, und all der andere Mist ... kann eigentlich weg: Vim (ich bevorzuge nano), spamassassin, sendmail (braucht man das um von einem Kontaktformular eine Email zu versenden?) ...

Könntet Ihr mir bitte dabei helfen?


----------



## Grille (18. August 2013)

-----------------------------
Der erste Schritt
-----------------------------


```
# Putty start
# login mit root mit 1blu-Passwort

# neue Gruppe nichtroot anlegen
sudo addgroup nichtroot

# Benutzer meinlogin in Gruppe nichtroot anlegen und Passwort und Daten eintragen
sudo adduser meinlogin --ingroup nichtroot

# Passwort für root ändern
sudo passwd root

# Ein zweites Putty öffnen und neues root-Passwort prüfen - wenn OK schließen
# Ein zweites Putty öffnen und mit meinlogin einloggen und su root prüfen - wenn OK schließen

# Update und Upgrade
apt-get update
apt-get upgrade
apt-get dist-upgrade

# nano und tree installieren
apt-get -y install nano tree

# direktes Einloggen mit root unterbinden
nano /etc/ssh/sshd_config
# den Eintrag "PermitRootLogin" von yes auf no
/etc/init.d/ssh restart

# sourcelist anpassen
nano /etc/apt/sources.list

deb http://ftp.at.debian.org/debian/ squeeze main
deb-src http://ftp.at.debian.org/debian/ squeeze main
 
deb http://security.debian.org/ squeeze/updates main
deb-src http://security.debian.org/ squeeze/updates main
 
deb http://ftp.at.debian.org/debian/ squeeze-updates main
deb-src http://ftp.at.debian.org/debian/ squeeze-updates main

# Update und Upgrade
apt-get update
apt-get upgrade
apt-get dist-upgrade
```

was sollte ich jetzt tun?

Das Problem ist ja ... irgendwie ist schon alles vorinstalliert. Jedoch ist mir bei MySQL aufgefallen, dass der root kein Passwort hat. Welche unliebsamen Einstellungen noch auf dem Server sind, weiss ich nicht.

Ausserdem hätte ich am liebsten ein Debian7 und PHP, MySQL auf dem neusten Stand.

Gibt es da vielleicht eine Möglichkeit den Server lokal zu installieren und die Dateien dann einfach auf das bestehende System zu schreiben?


----------



## threadi (18. August 2013)

Ich würde dir raten bevor Du einen Server im Internet betreust erstmal lokal mit Linux zu experimentieren. Wie Du schon gemerkt hast, gibt es keine HowTos die explizit deine Wünsche an den Server per Anleitung erfüllen. Das was Du machen willst, kannst Du nur mit einiger Erfahrung erreichen - und die sammelt man am besten erstmal offline.

Btw. wenn Du Debian 7 willst frag deinen Serverhoster, ob sie dazu ein Image haben. Wenn nein, kann man es dennoch sicherlich auf irgendeinem Weg installieren. Bei der Bereitstellung der Ressourcen kann dir nur dein Serverhoster helfen, bei allem anderen nur Du dir selbst. Wenn Du es bisher nicht kannst, lerne es (offline!). Das ist btw. keine Sache die man mal eben so lernt, da sollte man schon einige Monate rein investieren.


----------



## Grille (19. August 2013)

Hallo, Danke für Deine Antwort, die mir aber leider nicht wirklich weiter hilft. Mit Debian installiere ich nun schon seit über fünf Jahren herrum, was meiner Meinung nach auf einem localen System recht wenig bringt wenn man dort rein von der Sicherheit ausgeht. Wie soll ich dort die volle Webfunktionalität mit URL und SSL usw. einrichten und testen? Zumal es ja scheinbar so ist, dass Webserver immer Gefahr laufen, angegriffen zu werden. Also ist es doch viel mehr eine Frage, wie und wo ich welche Log-Systeme Prüfe, und wie ich Lücken erkenne: geht das lokal?

Es muss doch bestimmte Regeln geben, wie: damit dein Webserver nicht als Spam-Schleuder genutzt wird, musst du das, das und das machen. Oder: wenn dein Webserver missbraucht wird, erkennst Du das in diesem Log daran, und du musst so reagieren. Solche Tips würde ich mal für Konstruktiv halten. Leider finde ich soetwas nicht im Netz (außer Bemerkungen wie: lass die Finger davon, weil es zu gefährlich ist ...) ...

Daher ja hier mein Versuch, Step by Step den Server sicher einzurichten. Antworten wie: ich würde jetzt Apache runterschmeissen .. das macht man so, weil... das Vorinstallierte mist ist (oder so), ... dann Apache neu installieren und noch diese Zusatzpackete welche diese und jene Funktion haben ...

Mit meinen Provider habe ich schon telefoniert. Die meinen, dass das Betriebssystem nicht auf dem eigentlichen vServer läge, und daher könne man auch nicht so einfach Debian7 einrichten. Ich habe aber schon das Deb6 auf Deb7 geupgraded. Läuft auch scheinbar, Ich bin mir aber nicht sicher ob das System dann noch sicher und stabil ist. Auch hier wäre ich für Hilfe sehr froh, die mir erklärt, woran man sieht ob ein System sicher ist. Dass man sich mit netstat irgend welche Ports ansehen kann, hilft mir recht wenig, wenn ich A) nicht weiss, welche Programme welche Ports für was brauchen, und wenn ich B) nicht weiss, wie ich offene Ports, welche scheinbar nicht offen sein sollten, wieder schließen kann. Wird leider auch nirgens erklärt.

nginx hätte mich schon sehr interessiert, nur dass es dann nicht mehr mit Apache lief wenn ich es eingerichtet habe: weil beide Programme am selben Port "lauschen". Wie ich nun aber eines der Porgramme dazu bringe an einen anderen Port zu "lauschen" und dabei noch die gewünschte Funktionalität erreiche, habe ich auch nicht gefunden. Selbst wenn nginx richtig installiert wäre auf einem perfekten server, wüste ich nicht, wie ich prüfen könnte, ob das Programm auch das tut was es tun soll.

Also wenn ich mir die Liste meiner vorinstallierten Programme ansehe, scheint es ja auszureichen das System zu updaten und einen FTP-User einzurichten ... und fertig. Ich würde aber gerne mehr darüber wissen.

------------
Ich habe jetzt erstmal Lokal auf einer VM ein Debian7 eingerichtet. Leider habe ich aber kein System AMD64, sondern Intel64, und weiss daher nicht, ob allein schon das zu Problemen führen könnte, wenn ich die Dateien von der VM auf den Webserver übertrage. Auch wird bei der Installation die Festplatte partitioniert: auch hier stellt sich die Frage, ob hier wichtige Daten im System abgelegt werden, die dann auf dem eigentlichen Webserver angepasst werden müsten.

Meine Hoffnung wäre: ein sauberes Debian7 erst einmal lokal zu erstellen, dann das System als tar zu packen und auf dem Webserver zu entpacken und danach alle Dateien die älter sind als das Entpackdatum zu suchen und zu löschen.
Wäre schön wenn das klappen würde ... ich habe aber große Zweifel.


----------



## sheel (19. August 2013)

Hi



Grille hat gesagt.:


> Mit Debian installiere ich nun schon seit über fünf Jahren


Du installierst seit 5 Jahren?


Grille hat gesagt.:


> was meiner Meinung nach auf einem localen System recht wenig bringt wenn man dort rein von der Sicherheit ausgeht


Warum?
Computer daheim können genau so wie gemietete Webserver angegriffen werden.


Grille hat gesagt.:


> Wie soll ich dort die volle Webfunktionalität mit URL und SSL usw. einrichten und testen?


Geht doch?
...die Hoster kochen auch nur mit Wasser.
Da ist nichts dabei, was eine Privatperson nicht auch kann.


Grille hat gesagt.:


> wie und wo ich welche Log-Systeme Prüfe, und wie ich Lücken erkenne: geht das lokal?


Logs prüfen geht natürlich.
Nur anhand der Logs Probleme verbessern können ist aber leider seltener
(vorausgesetzt, der Server ist mit allem drum und dran eingerichtet.
Also nicht solche Problem wie "kein SSH-Passwort" oder sowas, die findet man schon)


Grille hat gesagt.:


> Es muss doch bestimmte Regeln geben, wie: damit dein Webserver nicht als Spam-Schleuder genutzt wird, musst du das, das und das machen. Oder: wenn dein Webserver missbraucht wird, erkennst Du das in diesem Log daran, und du musst so reagieren


Nö, leider.
Allgemeingültige Tipps aufzustellen ist unmöglich.
Angefangen damit, dass Webserver nicht gleich Webserver ist.
Sehr unterschiedliche Aufgaben, installierte Software usw.usw.

Kleiner Vergleich:
"Um die Klimaanlage in ihrem Auto einzuschalten drücken sie auf den A/C-Knopf".
Bei Person A gehts, bei B steht nicht A/C sondern ??,
C hat gar keine Klimaanlage (und will auch keine) und D sitzt nicht im Auto,
sondern steuert einen Öltanker.

Und im Bereich der ausnutzbaren Sicherheitslücken in Fertigsoftware bzw. Updates dagegen
ändert sich alles so schnell, dass sowas schreiben aussichtslos wäre.
Bis man fertig ist interessiert es keinen mehr.


Grille hat gesagt.:


> Daher ja hier mein Versuch, Step by Step den Server sicher einzurichten. Antworten wie: ich würde jetzt Apache runterschmeissen .. das macht man so, weil... das Vorinstallierte mist ist (oder so), ... dann Apache neu installieren und noch diese Zusatzpackete welche diese und jene Funktion haben ...


Sowas kann man nur dann machen, wenn man
a) deine Gedanken lesen kann. Alles genau so wissen, wie du es haben willst.
Bei jeder Einstellung nachfragen würde paar Jahre dauern
b) Lust hat, sehr viel Arbeit zu machen, die ganz genau nur einem hilft.
Eine auf dich zugeschnittene Anleitung passt auch nur auf dich.
Vergleich Architekt beim Hausbau.
Einen Plan, den er unter Berücksichtigung von 100 Sonderwünschen für dich macht
wird er sicher nicht für andere Kunden (ohne Änderungen) weiterverwenden können

Außerdem ist sowas wirklich nicht wenig zu tun.
Freiwillig/unbezahlt wird dir das vermutlich keiner machen
(zumindest von den Leuten, die halbwegs Ahnung haben.
Jemand, der 99% nicht weiß und nach 1% Arbeit denkt, fertig zu sein, ist ein anderer Fall)


Grille hat gesagt.:


> Die meinen, dass das Betriebssystem nicht auf dem eigentlichen vServer läge, und daher könne man auch nicht so einfach Debian7 einrichten. Ich habe aber schon das Deb6 auf Deb7 geupgraded.


Vllt. meinen sie, dass du dir Betriebssystemdateien mit anderen Kunden teilst.
Denen hättest du dann damit vermutlich ein Problem gemacht.
Allerdings hättest du vom Hoster dann auch nie die nötigen Rechte bekommen sollen,
sowas zu tun...


Grille hat gesagt.:


> wenn ich A) nicht weiss, welche Programme welche Ports für was brauchen, und wenn ich B) nicht weiss, wie ich offene Ports, welche scheinbar nicht offen sein sollten, wieder schließen kann. Wird leider auch nirgens erklärt.


Welche Programme welchen Port brauchen hängt von deinen Einstellungen ab.
Es gibt zwar "Richtwerte", zB. dass 80 ein HTTP-Server wie Apache ist,
aber das kann man beliebig umändern.

Ports schließen: Das zuständige Programm beenden.
Falls es außer Server-sein noch was tut (also auch ohne Port noch andere Arbeit erledigt
und man diese braucht) dann findet man hoffentlich in den Einstellungen des Programms was.
Wenn nicht gibts noch immer FW-Zeug wie iptables.


Grille hat gesagt.:


> Wie ich nun aber eines der Porgramme dazu bringe an einen anderen Port zu "lauschen" und dabei noch die gewünschte Funktionalität erreiche, habe ich auch nicht gefunden


Wieder mal: Einstellungen des Programms.
Apache hat einige Textdateien voll mit Einstellungszeug, dabei auch der/die Port(s).
Was welche Einstellung bedeutet und welche es überhaupt gibt ist online zum Nachlesen.
Hier das Inhaltsverzeichnis, um die Menge abzuschätzen:
http://httpd.apache.org/docs/current/mod/directives.html
Jeder Eintrag hat dahinter noch einen Block zu lesen.

Und das ist nicht nur bei Apache so.
Auch FTP, SSH, Mailserver-Software usw.usw.
Überall gibt es lange Dokumentationen, durch die man sich einfach durchquälen muss.


Grille hat gesagt.:


> Leider habe ich aber kein System AMD64, sondern Intel64, und weiss daher nicht, ob allein schon das zu Problemen führen könnte, wenn ich die Dateien von der VM auf den Webserver übertrage.


Debian:
amd64
armel
armhf
i386
ia64
kfreebsd-i386
kfreebsd-amd64
mips
mipsel
powerpc
sparc
s390
s390x
source
multi-arch

Intel64? Wo denn?


Grille hat gesagt.:


> Auch wird bei der Installation die Festplatte partitioniert: auch hier stellt sich die Frage, ob hier wichtige Daten im System abgelegt werden, die dann auf dem eigentlichen Webserver angepasst werden müsten.


Ja. Und da du die Partitionierung vom Server vermutlich nicht ändern können wirst
musst du dein System dann an dessen Platte anpassen.
fstab usw.usw.
Auch hier gilt: Viel lesen.


Grille hat gesagt.:


> Meine Hoffnung wäre: ein sauberes Debian7 erst einmal lokal zu erstellen, dann das System als tar zu packen und auf dem Webserver zu entpacken und danach alle Dateien die älter sind als das Entpackdatum zu suchen und zu löschen.
> Wäre schön wenn das klappen würde ... ich habe aber große Zweifel.


Einfach alle Dateien + Partitionen ersetzen wäre bei weitem sinnvoller.
Nur geht das nicht, während der Server mit dir übers Netz kommunizieren muss.
Nur nach Datum wird schiefgehen.


----------

