P R O F I L
Transcription
P R O F I L
INTERNETSERVICES chner INTERNETSERVICES | Schönfließer Straße 4 10439 Berlin WEB/codeX e.K. Schönfließer Straße 4 10439 Berlin - Germany Claus Prüfer fon: +49 (30) 47 90 71 62 fax: +49 (30) 43 72 32 49 [email protected] www.webcodex.de PROFIL Prüfer, Claus Software Design, Software Development, IP Engineering Seite 1/19 INTERNETSERVICES Persönliche Daten Name Prüfer Vorname Claus Geburtsdatum 08.04.1974 Geburtsort Ludwigshafen / Rhein Familienstand Ledig Staatsangehörigkeit Deutsch Sprachen Deutsch (Muttersprache) Englisch (Gut in Wort und Schrift) Hobbies Mountainbiking Kochen DJing (Breakbeat, Drum & Bass) Betriebssysteme Workstation Windows 7 Ultimate (32 Bit, 64 Bit) Gentoo Gentoo Hardened (PaX + GrSecurity) Ubuntu 10.04 LTS Mac OSX Server Gentoo Gentoo Hardened (PaX + GrSecurity) Ubuntu Server 11.10 CentOS 5 Monolith Linux 0.1 Windows 2000 Server (NT) Windows Server 2008 R1 (64 Bit) Oracle Solaris 10 OpenBSD FreeBSD Seite 2/19 INTERNETSERVICES Programmiersprachen Assembler 8 Bit (Commodore C64) 16 Bit (Commodore Amiga) x86_64 (Kein aktueller Stand) Structured Query Language ANSI SQL (SQL) Postgres SQL 8,9 (plpsql, plperl, plpython) Oracle 11g Stored Procedures Microsoft SQL Server Python 2.7, 3.2 (OOP) Packages (Einbindung, Erstellung) Module Exceptions Listen Dictionaries Multiprocessing Multithreading Unit Tests JavaScript (OOP) Prototyping Asynchronous XMLHttp Requests Document Object Model (DOM) C Header Präprozessor Pointer Types Structs Posix Threads Linux glibc C++ Standard Tempalte Library (STL) Mehrfachzeiger als Funktionsparameter Abstrakte Klassen Virtuelle Basisklassen Namespaces Generischer Code Model, View, Control Design Patterns Perl (OOP) Performance Reguläre Ausdrücke Arrays Hashes CPAN Repository Seite 3/19 INTERNETSERVICES Internet Protocol / Data Link Layer (Layer2) Tunnel Layer 2 Tunneling Protocol (L2TP) Point to Point Tunneling Protocol (PPP) Point to Point Tunneling Protocol over Ethernet (PPPoE) Bridging Transparentes Firewalling (ArpTables Linux, OpenBSD ipf) Subnet zu Subnetz Kommunikation ohne Gateway VMWare Workstation, XEN Virtualisierung ohne „Open vSwitch“ Internet Protocol / Network Layer (Layer 3) Version 4 Control Internet Control Message Protocol (ICMP) Internet Group Message Protocol (IGMP) Routing Statisches Routing (Linux) “ip route add table route1 default via 10.1.1.254” Multihomed Server Network Address Translation (NAT) 1:1 NAT Reverse NAT Network Address Port Translation (NAPT) NAT Traversal (NAT-T), IPSec Firewall Linux iptables OpenBSD ipf Solaris 10 IPFilter Tunnel GRE Tunnel IP in IP Tunnel PPP (Point to Point Protocol) Traffic Shaping Linux Advanced Routing & Traffic Control („tc“) Egress, Ingress Shaping Compact Fair Queuing (CFQ) Stochastic Fairness Queuing (SFQ) Classful Queuing Discipline (qdisc) Hierarchical Token Bucket (HTB) Virtual Private Networking IPSec AH/ESP (VPN) Linux OpenSWAN Linux openl2tp OpenVPN SSL/TLS + PKI (Private Key Infrastructure) Anbindung Virtual LAN (VLAN 802.1Q) Port based VLAN (Switchport Trunking / Tagging) Linux virtual VLAN Interfaces NIC Level VLAN Tagging Seite 4/19 INTERNETSERVICES Internet Protocol / Transport (Layer 4) TCP Transmission Control Protocol UDP User Datagram Protocol UDP-Lite UDP ohne Protocol Level Checksums / Retransmissions Internet Protocol / Application Layer (Layer 7) dns Dynamic Name Service dhcp Dynamic Host Configuration Protocol http Hyper Text Transfer Protocol https Hyper Text Transfer Protocol (Secure) ftp File Transfer Protocol (FTP/FXP) ssh Secure Shell sftp Secure File Transfer Protocol (FTP over SSH) scp Secure Copy ntp Network Time Protocol snmp Simple Network Management Protocol smtp Simple Mail Transport Protocol smtps Simple Mail Transport Protocol (Secure) pop3 Post Office Protocol imap Internet Message Access Protocol imaps Internet Message Access Protocol sip Session Initiation Protocol rtp Realtime Transfer Protocol rtsp Realtime Streaming Protocol nntp Network News Transfer Protocol xmmp Extensible Messaging and Presence Protocol Internet Protocol Version 6 Dauerhafte Weiterbildung Seite 5/19 INTERNETSERVICES Socket Programmierung AF_UNIX Unix Domain Sockets (Lokal) AF_INET Internet Sockets AF_PACKET Raw Socket Zugriff SOCK_STREAM TCP Sockets SOCK_DGRAM UDP Sockets SOCK_RAW RAW Sockets SOCK_NONBLOCK Nonblocking Sockets SO_DEBUG Socket Debug SO_BROADCAST Erlaube Senden von Broadcast Paketen SO_KEEPALIVE Automatisches Aufrechterhalten einer Verbindung durch intervalbasiertes Senden von Paketen (Protokoll abhängig) SO_SNDBUF Größe Sendepuffer SO_RCVBUF Größe Empfangspuffer SO_NODELAY Nagle Algorithmus, Pakete werden ohne Warten auf weitere Pakete sofort an die höhere Schicht weitergegeben Socket States SYN_SENT SYN Packet versendet SYN_RECEIVED SYN Packet empfangen ESTABLISHED Verbindung aufgebaut LISTEN Server Socket Listening FIN_WAIT_1 Warte auf ACK FIN_WAIT_2 Warte auf FIN/ACK TIME_WAIT Warte auf ACK LAST_ACK Last ACK versendet CLOSING Closing Connection Seite 6/19 INTERNETSERVICES Domain Name System (DNS) ANS Autoritative DNS Server CNS Caching Nameserver Multi Master / Multi Slave Redundantes Setup der Master und Slave Server Konfiguration Hidden Master Konfiguration Einzelner Master Server, der intern als Administrationsserver dient und nicht öffentlich erreichbar ist Forward Resolving Forwärts-Auflösung (Name zu IP Adresse) Reverse Resolving Rückwärts-Auflösung (IP zu Name) Time to Live Zeit, die ein Eintrag in einem Caching Server zwischengespeichert werden Negative Time to Live Clientspezifische Zeitspanne, wie lange ein abgefragter Nichtexistierender Ressource Record im Client Cache besteht Zonentransfer Transfer einer DNS Zone AXFR Zonentransfer (all) IXFR Zonentransfer (inkrementell, Einzel-Einträge) Zonendelegation Ermöglicht hierarchisches Weiterleiten zu „delegierten“ ANS Servern DNSSec (Transfer) Transfer wird über Signatur autorisiert Dynamic DNS Erlaubt das Hinzufügen/Ändern/Löschen einzelner DNS Einträge A Record IP to Name (ipv4) AAAA Record IP to Name (ipv6) CNAME Record Alias (einzeln) DNAME Record Alias (mehrfach) NAPTR Record Regular Expression Rewriting MX Record Mail Exchange PTR Record Reverse Lookup Pointer SOA Record Start of Authority SRV Record Service TSIG Record Transfer Signature (Dynamic DNS Updates) TXT Record Text Seite 7/19 INTERNETSERVICES HTTP 1.1 Methoden OPTIONS Fordert Informationen bezüglich der Server Features an GET Fordert ein Dokument vom Server an HEAD Fordert Informationen über ein Dokument vom Server an POST Übermittelt Daten zum Server TRACE Debug Ausgabe der Request Daten CONNECT Proxy Konfigurationsparameter, z.B. für SSL Tunneling Erweiterte HTTP Methoden (WebDAV) PUT Datei Upload DELETE Datei vom Server löschen Linux XTables (IPTables) Chains Prerouting Input Forward Output Postrouting Tables Filter Nat Mangle Raw Targets Accept Drop Reject Stateful Filtering New (Connection Tracking) Established Related Invalid Snat Dnat Packet Mangling z.B. DSCP Tagging, MAC Rewriting Network Address Translation Source NAT (Masquerading) Destination NAT Seite 8/19 INTERNETSERVICES Linux Kernel Security (PaX, grSecurity) PAX_MPROTECT Memory Protection Verhindert ausführbaren Code in „Prozess Adressraum“ PAX_KERNEXEC Kernel Page Protection PAX_ASLR Address Space Layout Randomization PAX_RANDEXEC Randomized Code in ET_EXEC Binaries Schutz vor „Return to Glibc“ Attacken PAX_RANDKSTACK Randomized Kernel Stack PAX_RANDUSTACK Randomized User Stack PAX_RANDMMAP Kernel do_mmap() (plus Linuxthreads) Randomization ET_DYN ELF Binaries (Shared Object Binaries) Position Independent Code grSecurity RBAC Role Based Access Control grSecurity Chroot Protection Shared Memory Limitation Kill Restriktionen Ptrace Restriktionen Signal Restriktionen Mount / Remount Restriktionen „Double Chroot“ Prevention „fchdir“ Restriktion Mknod Prevention Socket / Unix Domain Socket Restriktionen Sysctl Restriktionen (Schreiben) Exec Logging Seite 9/19 INTERNETSERVICES Linux Kernel (3.0) Sysctl Kernel kernel.hostname kernel.domainname kernel.shmmax kernel.randomize_va_space kernel.ctrl-alt-del Sysctl Net (IPv4) net.ipv4.ip_forward net.ipv4.ip_no_pmtu_disc net.ipv4.tcp_timestamps net.ipv4.tcp_window_scaling net.ipv4.tcp_tw_recycle net.ipv4.tcp_tw_reuse net.ipv4.tcp_sack net.ipv4.tcp_dsack net.ipv4.tcp_fack net.ipv4.tcp_mtu_probing net.ipv4.icmp_echo_ignore_all net.ipv4.conf.eth0.accept_redirects net.ipv4.conf.eth0.secure_redirects net.ipv4.conf.eth0.accept_source_route Hardware ACPI (Advanced Configuration and Power Interface) MTRR (Memory Type Range Register), PAT MSI (Message Signalled Interrupts) PCI Express Interprocess Communication System V IPC, Message Queues Network Bonding, Tun/Tap Point to Point Tunneling Protocol (PPP) Packet Filtering Ethernet Bridging (802.1d) Network Congestion Control Cubic TCP High Speed TCP Drivers SATA/SAS/SCSI I2C, SPI, GPIO, LED Filesystems ext2, ext3, ext4, JFS, XFS, GFS2 Encryption FIPS 200 Compliance MD5, SHA, AES, Blowfish, DES, Tripple DES, Twofish Misc Paging Anonymous Memory (Swap) Performance Events and Counters Seite 10/19 INTERNETSERVICES Datenbanken - MySQL - MSSQL Server - Postgres 8, 9 - Oracle 11g R2 Database Skills Tablespaces Logische Aufteilung der Tabellenstruktur auf physikalischen Plattenplatz / Performance Optimierung Schemata Logische Unterteilung der Datenbankstruktur Indizes Indizes Design (Einspaltige, Gruppierte Indizes) Indizes Optimierung Optimierung vorhandener Index Strukturen Primary, Foreign Keys Relationale Datenintegrität, Normalisierung Sequences Erstellung Primary Key IDs (Autoincrement) Rules Datenintegrität Views Logische Sichten Data Types Daten Typen (Strukturen) Trigger Auf Insert / Update / Delete gezielte Aktionen ausführen Stored Procedures Datenbank Programmierung Transaktionen / Rollbacks ACID (Atomicity, Consistency, Isolation, Durability) Partitionierung Tabellen über mehrere Tabellen Tablespaces verteilen (Performance Optimierung) Statement Analyse SQL Performance Analyse, Optimierung durch Umstrukturierung Rollen, Sicherheit Applikationszugriff, Benutzerzugriff, Administrations- Security zugriff Data Warehousing (OLAP), Online Analytical Processing, Auswertung großer Datenmengen Statistik Performance Tuning Konfigurationstuning Infrastruktur Tuning (z.B. Inifiniband oder FibreChannel SSD RAID) Seite 11/19 INTERNETSERVICES Virtualisierung / Cloud VMWare Workstation 7,8 ESXi Hypervisor VSphere VCloudDirector XCP XEN Cloud Plattform OpenSource Variante des kommerziellen Citrix XenServer QEMU KVM (Kernel Virtualisation) Open vSwitch Enterprise Switch (XEN Cloud Plattform) Link Aggregation Protocol (Cisco LACP) Quality of Service (QoS) 802.1Q VLAN Model with Trunking NIC Bonding (MAC Balancing, Active/Backup, Layer 4 Hashing) OpenFlow Switch Virtualisierung Remote Configuration via Python openQRM Carrier Grade OpenSource Cloud Management System VMWare, KVM, XEN VastSky Carrier Grade Network Cluster Storage System Ceph Carrier Grade Petabyte Scale Storage Amazon S3 Compatible Cisco Nexus 1000V VMWare Virtual Switch (VXLAN fähig) Seite 12/19 INTERNETSERVICES Objektorientierte Formate XSLT/XML Extensible Markup Language JSON Java Script Object Notation Serviceorientierte Architektur (SOA) WSDL Web Service Definition Language SOAP Simple Object Access Protocol REST Representational State Transfer ESB Enterprise Service Bus Voice over IP Asterisk Asterisk PBX / Voicemail Server (ISDN BRI) OpenSIPS Open SIP Stack (Fork SIP Express Router) YATE Yet Another Telephony Application IMS/NGN Internet Multimedia Subsystem Next Generation Networks Streaming Video LAN Client (VLC) Streaming Server, Client (Multicast) Red 5 Flash Streaming Server h.264 HD Video Vdpau API Shoutcast Server MP3 Streaming Load Balancing / Redundanz Layer 2 Ethernet Channel Bonding Layer 4 Linux IPVS Layer 7 Application based DNS Load Balancing DNS gibt multiple Adressen auf eine Namensauflösung in zufälliger Reihenfolge wieder Rsync Remote Sync (Mirroring) Linux High Availability (HA) Linux High Availability, Heartbeat (z.B. Hardware LoadBalancer) Seite 13/19 INTERNETSERVICES Server (Linux) MAIL QMail Postfix Exim Courier IMAP Courier POP3 HTTP Apache Lighttpd Squid DNS Bind TinyDNS PowerDNS AAA Radius Kerberos VPN OpenSWAN OpenVPN NFS NFS v4 + ACL (Access Control Lists) CIFS/SMB Samba Server (Solaris) DNS Nominum ANS Nominum CNS Seite 14/19 INTERNETSERVICES Bekannte Technologien ARP Address Resulution Protocol Cache (Switches, Operating System) Path MTU Discovery Herausfinden der maximalen Pfad MTU (z.B. für IPSec Verbindungen von Bedeutung) QoS Quality of Service, TOS/DSCP tagging (Differentiated Services Code Point) MPLS Multiple Protocol Layer Switching RSTP Rapid Spanning Tree Protocol VRRP Virtual Router Redundancy Protocol IDS/IPS Intrusion Detection System / Intrusion Prevention System (z.B. Snort) Ethernet Port Anbindung an zentrales AAA (Authentication, Authorization, Ac- Authentifizierung (802.1X) counting) System Ethernet Flow Control Pause Frames, über die Congestion vermieden werden kann (z.B. Einsatz in Datacenter Bridging Protocol) Congestion Control TCP Window Resize (z.B. TCP Cubic in Linux Systemen) Snapshots Filesystem Snapshots mit der Möglichkeit von Rollbacks, z.B. Solaris zfs, IBM NetApp Storage Systeme Memory Leak Analysis In C oder C++ können durch fehlende free() oder Destruktoren schwerwiegende Speicherproblematiken entstehen. Diese können durch Tools und Analyse behoben werden. PXE Boot / JumpStart Automatisierte Netzbasierte Installation eines Betriebssystems. Layer 3 Managed Switches Switches, die über Layer 3 Funktionalität verfügen Firewall Failover Redundantes Firewall Setup NetFlow, sFlow, SPAN, RSPAN Traffic Monitoring großer Datenmengen, Switch Port Mirroring Interesse an neuen Technologien Dynamische Hardware- / z.B. Juniper QFabric als Datacenter Switch Skalierung Cloud Management Instrumentation / Integration in vorhandene Cloud Management Infrastruktur Datacenter Bridging / GeoRe- z.B. Oracle Metro Cluster dundanz Seite 15/19 INTERNETSERVICES Tools Unix / Linux - Edgewall Trac - Subversion - GIT - RRDTool - Nagios - RabbitMQ - Valgrind - QT Tools Windows - Microsoft Visual Studio - Microsoft Office 2010 - Microsoft Visio 2010 - Adobe CS5 Suite - Putty - WinSCP - Total Commander - Ultra Edit - XEN Convert - Daemon Tools - Wireshark Tools Browser - JQuery UI - Firefox Firebug Seite 16/19 INTERNETSERVICES Tätigkeiten MediaWorx (Festanstellung) - Entwicklung Online Web Shop auf PHP/MySQL Basis Tätigkeiten YOC (Festanstellung) - Entwicklung Intranet auf PHP/MSSQL Server Basis - Entwicklung Perl basierter Dienste - Technisches Projektmanagement Tätigkeiten Kabel Deutschland (Festanstellung) - Hidden Master Infrastruktur (Single Master, Multi Slave DNS), Aufbau „interner“ und „externer“ View (Inklusive Reverse Zonen) - Migration von Bind auf Nominum ANS Server - Integration Dynamic DNS in ANS / DHCP Infrastruktur (Multi Master / Multi Slave DNS) - SOA Anbindung Hidden Master als zentrale DynDNS Service Steuerung - Umsetzung DynDNS Customer Self Care Weboberfläche - Voicemail SIP Integration (Cisco BTS Callswitches) - Design, Implementation Webinterfaces (Customer Self Care) - Dynamic DNS - Voicemail Tätigkeiten Selbständigkeit - Entwicklung Interviewer / Probanden Live Aufnahme System mit sehr geringen Latenzzeiten für Realtime Anmerkungen eines aufgenommenen Interviews für ein großes deutsches Meinungsforschungsinstitut (Windows C, C++ SDK für spezielle latenzgeringe VideoSchnittkarte) - Eigenentwicklung AJAX basiertes Framework (Baukastensystem) für Browserbasierte Anwendungen - PDF Server Generator für Rechnungen / Angebote (Ghostscript, Latex Templates) - CUPS basierter, erweiterter Druckserver - Weitere Server / Eigenprotokollentwicklung unter Perl / Linux Seite 17/19 INTERNETSERVICES Weiterbildung - Umsetzung Businessplan „Stream on Media AG“ mit Studenten der FHTW Berlin (im Rahmen des Marketingseminars im Sommersemester 2004) Tätigkeiten dnbradio.net Internetradio (Hobby) - Live Streaming Appliance für Clubs auf Linux Basis - Aufbau Programmdatenbank MySQL - Streaming Server auf Linux Basis (Shoutcast Server) - Perl Streaming Proxy für bezahlte Streamings über dynamische Port- / Benutzerfreigabe (dynamische Firewall Regeln) - PayPal Anbindung (automatisierte Bezahlung) Aktuelle Projekte - Transparent Firewall auf OpenBSD Basis ("ipf" Layer2, Layer3 Filterung) - Monolith Linux (Eigenentwicklung Hardened Linux OS) auf Basis LFS, HLFS, BLFS (Linux from Scratch, Linux Hardened from Scratch, Beyond Linux from Scratch) - WCDX PKI Manager (Private Key Infrastructure Manager) - baseD ISCS (Intelligent System - Caching Server) - baseD ISWAS/ISAS (Intelligent System - Web Application Server, Application Server) - baseD ISESB (Intelligent System – Enterprise Service BUS) - A0MF (AJAX Object Modeling Framework) - Database / Postgres Row based Versioning (Table Row History) - IP Remote Control + Binary Newsgroup Integration + Homeautomation Integration Seite 18/19 INTERNETSERVICES Literatur - SIP, TCP/IP und Telekommunikationsnetze - Next Generation Networks und VoIP – konkret – 3. Auflage (Ulrich Trick, Frank Weber) – Oldenbourg Verlag München Wien - Microsoft Windows 2000 TCP/IP-Protokolle und –Dienste - Umfassender technischer Leitfaden zum Netzwerkprotokoll-Einsatz unter Windows 2000 (Microsoft Press) - C-Programmierung für Linux - in 21 Tagen (Erik de Castro Lopo, Peter Aitken, Bradley L.Jones) – Markt&Technik - Die SQL Referenz - Das umfassende Nachschlagwerk für Datenbank-Entwickler (Wayne S. Freeze) – Thomson Publishing - XML Praxis und Referenz, 2.erweiterte und aktualisierte Auflage (Oiver Pott, Gunter Wielage) – Markt&Technik - C++, UML und Design Patterns, Grundlagen und Praxis der Objektorientierung (Helmut Herold, Michael Klar, Susanne Klar) – Addison-Wesley - Linux Hacker`s Guide – Sicherheit für Linux-Server und –Netze (anonymous) – Markt&Technik Seite 19/19