Siemens S7-300 Remote Access via VPN: Setup, Hardware & Security

David Krause15 min read
S7-300SiemensTutorial / How-to
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

Siemens S7-300 Remote Access via VPN: Setup, Hardware & Security

Remote diagnostics and monitoring of a Siemens S7-300 fleet (CPU 315-2 DP master plus two CPU 314-2 DP stations on PROFIBUS, bridged to a SCADA host through a CP 343-1) is a routine field-services requirement. This reference consolidates the network architecture, hardware selection, Siemens software licensing, and security hardening needed to access the plant over broadband Internet using a VPN tunnel — eliminating analog modems, leased lines, and dial-in routers. Procedures are valid for STEP 7 V5.5/V5.6 and TIA Portal V15-V18 against firmware V3.3.x on the CPU 315-2 DP and V3.3.x on the CPU 314-2 DP.

1. System Overview and Access Goals

The reference installation contains:

  • 1 × CPU 315-2 DP (typical catalog 6ES7315-2AG10-0AB0 or 6ES7315-2AH14-0AB0) acting as the PROFIBUS master and S7 coordinator.
  • 2 × CPU 314-2 DP (typical catalog 6ES7314-2AG14-0AB0) acting as DP slaves, exchanging data with the master via PROFIBUS DP.
  • 1 × CP 343-1 (6GK7343-1EX30-0XE0 or later 6GK7343-1CX00-0XE0 for PROFINET variants) providing the Ethernet gateway to the SCADA PC and the plant network.
  • 1 × SCADA/operator PC running WinCC flexible, WinCC, or a third-party HMI with a S7-OPC or S7-PUT/GET channel.

Access goals for the field engineer typically include: online diagnostics of the STEP 7 program, forcing and monitoring tags, firmware/fault-buffer retrieval, PROFIBUS diagnostic analysis, SCADA screen review, and remote desktop control of the engineering station. All of these are achievable over a single VPN tunnel terminated at the plant edge.

2. Network Architecture

Three logical zones must be separated: the corporate/Internet zone, the plant/automation zone, and the field/PROFIBUS zone. The CP 343-1 sits at the boundary between zones 1 and 2, while the PROFIBUS network forms zone 3.

Zone Function Typical Subnet Devices
Internet / Remote Engineer Untrusted Public IP / DHCP from ISP Laptop, home broadband router
DMZ / Edge VPN terminator, firewall 10.10.0.0/24 Industrial firewall (SCALANCE S615, SCALANCE SC622), broadband router
Plant / Automation SCADA, engineering station, CP 343-1 192.168.10.0/24 SCADA PC, engineering PG, CP 343-1
Field / PROFIBUS DP master and slaves PROFIBUS address 1-126 CPU 315-2 DP, CPU 314-2 DP, ET 200S, drives

The CP 343-1 default IP is 192.168.0.1 (or 0.0.0.0 if unconfigured). Configure a static address in the plant subnet via STEP 7 hardware configuration. The PROFIBUS master (CPU 315-2 DP) holds DP master address 2 by convention; the two CPU 314-2 DP slaves are configured as DP slaves with addresses 3 and 4. The CP 343-1 itself does not need a PROFIBUS address; it is addressed only on the Ethernet side via its ISO-on-TCP / TCP connection.

3. Hardware Selection for the Remote Link

3.1 Industrial firewall / VPN gateway

A consumer-grade broadband router can technically terminate an IPsec tunnel, but it does not survive a 480 V cabinet, has no diagnostics for PROFINET/PROFIBUS traffic, and offers no stateful packet inspection against industrial protocols. Use a Siemens SCALANCE device instead:

Part Number Model Throughput VPN Tunnels Typical Use
6GK5615-0AA00-2AA2 SCALANCE S615 ~100 Mbps 20 IPsec Small cabinet, single site
6GK5622-2GS00-2AC2 SCALANCE SC622 ~250 Mbps 100 IPsec Medium site, multiple engineers
6GK5623-2GS00-2AC2 SCALANCE SC632 ~500 Mbps 200 IPsec Multi-site, DMZ
6GK5812-1AA00-2AA2 SCALANCE M812 Cellular 4G 10 IPsec Backup link
6GK5812-2AA00-2AA2 SCALANCE M826 Cellular 4G/3G 20 IPsec Mobile plant

The SCALANCE S615 is the baseline recommendation for a single S7-300 site. It supports IPsec with PSK or X.509 certificates, has a built-in 4-port switch, and ships with the SINEC NMS configuration tool.

3.2 Broadband termination

Use a business-class broadband service (fiber, VDSL2, or cable) with a static public IPv4 address or a 1:1 NAT mapping from the ISP. Dynamic DNS (e.g., DynDNS, No-IP) is acceptable when the public IP changes; update the client VPN configuration with the FQDN.

3.3 Remote engineer laptop

Minimum specifications for a STEP 7 V5.6 / TIA Portal V18 engineering station:

  • CPU: Intel Core i5 (8th gen) or AMD Ryzen 5
  • RAM: 16 GB (TIA Portal with large projects: 32 GB)
  • Disk: 256 GB SSD (TIA installs require ~30 GB)
  • Ethernet: 1 Gbps
  • OS: Windows 10 LTSC 21H2 or Windows 11 Pro 22H2

4. VPN Configuration

4.1 IPsec tunnel parameters

The SCALANCE S615 supports IPsec IKEv1 and IKEv2. Use IKEv2 with the following cipher suite for compliance with modern guidance (verify against your corporate security policy):


IKEv2 Proposal:
  - Encryption:    AES-256-GCM
  - Integrity:     SHA-384
  - DH Group:      14 (2048-bit MODP) or 19 (256-bit ECP)
  - Lifetime:      86400 s (1 day)

ESP Proposal:
  - Encryption:    AES-256-GCM
  - Anti-replay:   Enabled
  - Lifetime:      3600 s (1 hour) or 100 MB

Authentication:
  - Method:        X.509 certificates (preferred) or Pre-Shared Key (≥32 chars)

Pre-Shared Keys are acceptable for a single trusted engineer. For multi-user sites, deploy X.509 with a local CA or use the Siemens SINEC Industrial PKI.

4.2 Addressing plan

Configure the SCALANCE S615 internal interface on 10.10.0.1/24 (DMZ side) and 192.168.10.1/24 (plant side). The CP 343-1 is configured for 192.168.10.10/24. The engineering laptop receives a virtual IP from the VPN pool, typically 10.10.0.100. Routing from the laptop to 192.168.10.0/24 is handled by the SCALANCE via a single IPsec tunnel with internal routing rules.

Do not place the CP 343-1 directly on the Internet-facing subnet. Always use a routing firewall in between. The CP 343-1 has no native firewall; exposing it directly to the Internet allows unauthenticated S7 communication attempts and is an immediate security finding under IEC 62443-3-3 SL-2.

4.3 Remote access client

The native Windows IKEv2 client (Windows 10/11) handles the tunnel without third-party software. For certificate-based auth, import the user certificate to the local computer "Personal" store. The connection is initiated from the laptop to the SCALANCE S615's public IP and authenticated with the configured credentials.

5. Siemens Software and Licensing

5.1 STEP 7 V5.5 / V5.6 floating license

STEP 7 V5.5 (6ES7810-4CC10-0YA5) and V5.6 (6ES7810-4CC11-0YA5) are the canonical programming environments for the S7-300 line. To run STEP 7 on a remote engineering PC, the user needs:

  • STEP 7 Professional / Basic license (6ES7810-4CC10-0YA5 floating, or 6ES7810-4CC10-0YA6 single)
  • A license key (Floating License Server, 6ES7810-4CC10-0YA2) hosted on a reachable license server if using floating
  • OR a single-user USB dongle (6ES7810-4CC10-0YG6) plugged into the engineering laptop

The standard "trial license" (14 days) shipped with the STEP 7 DVD is unsuitable for production remote access. The "floating license" model is preferred because one server-side license supports multiple engineers concurrently, eliminating the per-laptop license cost concern raised in the field report.

5.2 TIA Portal V15-V18

For newer installations using TIA Portal, the relevant options are:

Catalog Package Notes
6ES7822-1AA04-0YA5 TIA Portal V18 STEP 7 Professional Combo Floating license, supports S7-300/400/WinCC
6ES7822-1AE04-0YA5 TIA Portal V18 STEP 7 Basic Single license, S7-300 limited
6ES7822-1AA05-0YC5 TIA Portal V18 + WinCC Comfort/Advanced Full HMI bundle

The TIA Portal license server (Automation License Manager V6.0+) can be hosted on the engineering PC or on a separate plant server reachable over the VPN. License borrowing (up to 14 days) lets a field engineer take a network license offline if the VPN drops.

5.3 SIMATIC Automation Tool

The SIMATIC Automation Tool (free download, 6ES7853-2AE00-0AA0) is a lightweight option for read-only diagnostics, firmware update over the network, and SD card operations on the S7-300 CPUs without a full STEP 7 license. It is ideal for technicians doing basic maintenance over a VPN.

6. STEP 7 / TIA Online Access over VPN

6.1 Setting the PG/PC interface

On the remote engineering PC, open "Set PG/PC Interface" (Windows Control Panel → Siemens Automation → Set PG/PC Interface) and select the TCP/IP interface bound to the VPN virtual adapter. The CP 343-1 must be reachable: a successful ping 192.168.10.10 from the remote PC confirms L3 connectivity.

6.2 Accessible nodes

In STEP 7 V5.x, open "PLC → Accessible Nodes" (or in TIA Portal, "Online → Accessible Devices"). The CP 343-1 should appear with its IP and PROFIBUS subnet, along with the CPU 315-2 DP and the two CPU 314-2 DP slaves. Double-click to open online diagnostics, or right-click → "Go Online" to download / monitor the program.

6.3 S7 routing through the CP 343-1

The CP 343-1 is a passive S7 router for the PROFIBUS-attached CPUs. In the STEP 7 hardware configuration (HW Config), open the CP 343-1 properties, select the "S7 Routing" tab, and ensure "Use S7 routing" is enabled and that the CP is part of the S7 subnet configured for routing. Without this setting, the engineering PC can only see the CP, not the CPUs behind it on PROFIBUS.

CPU 315-2 DP firmware versions V3.3 and later support S7 routing through a CP 343-1. Earlier V2.x firmware may not route correctly — verify the CPU's online diagnostics buffer for routing errors (event ID 0x8311, 0x8312).

6.4 PG connection count and security

The CP 343-1 allows a maximum of 16 simultaneous PG connections. For a remote session, only one connection is needed. The S7-300 supports password protection on the CPU (configure in HW Config → CPU Properties → Protection). Set at minimum "Read-only access" to prevent unintended writes during a remote session.

7. SCADA Remote Access

The SCADA PC running WinCC (or WinCC flexible) can be reached over the same VPN using Windows Remote Desktop, Chrome Remote Desktop, or a third-party tool such as VNC or TeamViewer. Each option has different licensing and capability trade-offs:

Method License Bandwidth Audio/Video File Transfer Best For
Microsoft Remote Desktop (RDP) Free (built into Windows Pro) Low Audio only Drive redirection Single SCADA host, occasional use
Chrome Remote Desktop Free Medium Audio + limited video Drag-and-drop Quick review, no install
TightVNC / RealVNC Free / commercial Medium-High None Limited Cross-platform clients
Dameware Commercial per-seat Low Audio Drive redirection IT-managed environments
TeamViewer Commercial subscription Medium Audio + video Built-in Behind corporate firewalls

Microsoft Remote Desktop is the recommended default. Enable Remote Desktop on the SCADA PC (Settings → System → Remote Desktop → Enable), allow it through the Windows firewall on the 192.168.10.0/24 subnet only, and connect from the remote laptop using mstsc /v:192.168.10.50. Microsoft documents the procedure at How to use Remote Desktop.

Chrome Remote Desktop is the simplest option when the SCADA PC cannot be modified or a corporate VPN is unavailable. It runs as a service through a Chrome browser session and requires only a Google account. Setup is documented at Access another computer with Chrome Remote Desktop and the service portal at remotedesktop.google.com. The Chrome Web Store extension is at Chrome Remote Desktop - Chrome Web Store. For headless unattended access, generate an access code from the host and sign in at remotedesktop.google.com/access.

Avoid installing Chrome Remote Desktop or any screen-sharing tool on the S7-300 CPU itself. Remote screen sharing on the engineering PG or the SCADA PC only. The S7-300 has no GUI; it is accessed programmatically over S7 communication.

8. Bandwidth and Latency Planning

A typical STEP 7 online session against an S7-300 requires:

  • Idle bandwidth: ~20 kbps (heartbeat only)
  • Program download: ~200-400 kbps for projects < 500 KB
  • Firmware update: 1-2 Mbps sustained for 2-5 minutes
  • SCADA polling: 50-200 kbps depending on tag count and update rate

Latency budget: STEP 7 online diagnostics tolerates up to 500 ms RTT. SCADA polling tolerates up to 1000 ms for HMI refresh. Above 1500 ms RTT, the S7 connection times out (default TCP keepalive: 30 s, retry count: 3). For intercontinental links, enable compression on the SCALANCE S615 IPsec tunnel (LZO or DEFLATE) to compensate for the lower bandwidth-delay product.

Link Type Typical RTT Throughput Suitability
Same-city fiber 5-20 ms 100+ Mbps Excellent
Cross-country VDSL2 30-60 ms 20-50 Mbps Good
International fiber 100-200 ms 10-50 Mbps Acceptable with compression
Cellular 4G LTE 40-100 ms 5-30 Mbps Acceptable as backup
Cellular 3G HSPA 150-300 ms 1-5 Mbps Marginal, online diagnostics only
Satellite (LEO) 40-80 ms 10-100 Mbps Excellent
Satellite (GEO) 600+ ms 1-10 Mbps Poor, frequent timeouts

9. Security Hardening

An S7-300 system with a CP 343-1 has no built-in authentication for S7 communication. Anyone with L3 reachability to the CP can attempt S7 PUT/GET, fetch, or stop the CPU. Apply defense in depth:

  1. Firewall default-deny on the SCALANCE S615. Permit only the VPN source subnet to reach the SCADA PC and the CP 343-1.
  2. S7 CPU password: Configure read/write protection in HW Config (CPU Properties → Protection → "Complete protection" with password). Even a basic 8-character password blocks casual S7 reconnaissance.
  3. S7 communication limit: Disable unused S7 services. On the CP 343-1, the services "S7 Communication", "PG Communication", and "OP Communication" can each be toggled. Disable PUT/GET if the SCADA uses only OPC DA.
  4. Disable unused ports on the SCALANCE: close TCP 102 (ISO-TSAP / S7) at the firewall unless explicitly needed for online access. The VPN tunnel should be the only path to TCP 102.
  5. Enable Siemens SINEMA Remote Connect for a managed remote-access service that handles authentication, audit, and session recording centrally. The SCALANCE S615 supports SINEMA RC client mode directly.
  6. Audit logging on the SCALANCE and the SCADA PC. Forward to a SIEM if available.

Reference: IEC 62443-3-3:2013 System Security Requirements and Security Levels, applicable to industrial automation and control systems.

10. Commissioning and Verification

Walk through the following sequence on a test day before declaring the link production-ready:

  1. From the remote laptop, establish the VPN tunnel. Confirm ipconfig shows the virtual IP (e.g., 10.10.0.100/24).
  2. ping 192.168.10.10 (CP 343-1). Expect < 5% packet loss and RTT matching the ISP budget.
  3. Open STEP 7 → "Accessible Nodes". The CP 343-1, CPU 315-2 DP, and the two CPU 314-2 DP slaves must all appear.
  4. Open HW Config and perform a "Download to PG" of the CPU 315-2 DP. This verifies full online routing.
  5. Open the CPU diagnostic buffer (PLC → Diagnostic Buffer). Confirm the timestamp matches the remote laptop's local time, verifying that S7 routing and the S7 time-of-day sync are working.
  6. Open WinCC on the SCADA PC via Remote Desktop. Confirm tag values update.
  7. Disconnect the VPN and reconnect. Verify the S7 connection re-establishes within 60 s.
  8. Enable SCALANCE S615 syslog forwarding to a central log server and confirm the connection events are captured.

11. Troubleshooting Matrix

Symptom Likely Cause Diagnostic Resolution
VPN tunnel does not establish Wrong PSK, IKE proposal mismatch, public IP changed SCALANCE syslog, Windows IKE verbose log Verify PSK length ≥ 32 chars; match IKEv2 proposals; update DDNS
Tunnel up, no ping to CP 343-1 Missing route on SCALANCE, wrong subnet on CP SCALANCE → Information → Routing table Add 192.168.10.0/24 route on internal interface
STEP 7 sees CP, not the CPUs S7 routing not enabled on CP 343-1 HW Config → CP 343-1 → S7 Routing tab Enable "Use S7 routing"; download HW Config to CP
Online session times out after ~90 s TCP keepalive killed by NAT / firewall SCALANCE session log shows tunnel drop Enable keepalive on the S7 connection (default 30 s); reduce NAT timeout
RDP to SCADA PC works, but no SCADA tags update SCADA OPC server lost connection to CP WinCC channel diagnostics, S7 connection status Check S7 connection parameters; verify PG/OP access on CP is enabled
Slow online diagnostics Mismatched MTU causing fragmentation, compression disabled Path MTU test, SCALANCE interface statistics Set VPN MTU to 1400; enable IPComp on the tunnel
PUT/GET blocked by S7 CPU CPU protection level set to "Complete protection" Online → CPU Protection Lower to "Read-only access" or supply correct password
Chrome Remote Desktop not connecting Host service stopped, network change Service portal status, Chrome console Restart the host service; re-issue access code; check for proxy interference

12. Cost Optimization Strategies

For small service organizations, the license cost concerns raised in the field report are real. Practical approaches:

  • Floating license server: One STEP 7 V5.6 floating license (6ES7810-4CC10-0YA2) supports concurrent access from N engineers. Host the Automation License Manager on the office file server reachable over the corporate VPN; engineers "check out" licenses when working remotely.
  • TIA Portal + SUS: The Siemens ULTRA-SUBSCRIPTION (SUS) annual contract (6ES7822-1AC00-0YL5 or current equivalent) provides access to the latest TIA Portal version with all updates, often more economical than perpetual licenses for a small team.
  • SCALANCE SC622 over S615: The SC632 supports more VPN tunnels and removes the need for a separate site-to-site concentrator as the team grows.
  • SIMATIC Automation Tool: For diagnostics-only remote work, the free SIMATIC Automation Tool avoids the STEP 7 license cost entirely for routine checks.

FAQ

Can I access an S7-300 directly over the Internet without a VPN?

Technically yes — the CP 343-1 will accept any TCP connection to port 102 (ISO-TSAP) — but this is strongly discouraged. The S7-300 has no authentication on port 102, so any unauthenticated attacker can stop the CPU, modify data blocks, or read the program. Always terminate the connection through a stateful firewall (e.g., SCALANCE S615) and authenticate via IPsec VPN or SINEMA Remote Connect.

Do I need a STEP 7 license on every remote engineer's laptop?

No. A floating license (6ES7810-4CC10-0YA2 for STEP 7 V5.6) is checked out from a central Automation License Manager server and shared across multiple engineers. The license server can be hosted on a Windows Server in your office and reached over the same VPN used to access the plant. Alternatively, TIA Portal licenses can be borrowed for up to 14 days via the Automation License Manager if the VPN is temporarily down.

Why can STEP 7 see the CP 343-1 but not the CPU 315-2 DP behind it?

The CP 343-1 acts as an S7 router for the PROFIBUS-attached CPUs, but S7 routing is disabled by default. Open the STEP 7 project, navigate to HW Config → CP 343-1 properties → S7 Routing tab, enable "Use S7 routing," and download the hardware configuration to the CP. The CPU firmware must be V3.3 or later to support routing through the CP.

What is the maximum latency for a STEP 7 online session over VPN?

STEP 7 tolerates up to 500 ms RTT for online diagnostics without timeouts. SCADA polling tolerates up to 1000 ms. Beyond 1500 ms, the S7 connection times out (default TCP keepalive 30 s, retry 3). For intercontinental or GEO satellite links, enable IPComp compression on the SCALANCE and consider using a local engineering station on-site that you reach via Remote Desktop rather than direct S7 over the long link.

Is Chrome Remote Desktop acceptable for accessing a SCADA PC?

Yes, for diagnostics and short interventions. Chrome Remote Desktop runs as a host service on the SCADA PC and is reached through any Chrome browser at remotedesktop.google.com/access with a one-time access code. For long sessions or large file transfers, Microsoft Remote Desktop offers lower bandwidth and native drive redirection. Either way, run the screen-sharing service on the SCADA PC only — never on the S7-300 CPU itself.

Back to blog