<reponame>rhysmdnz/pulumi-alicloud-rhys-hacks<gh_stars>0// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;

namespace Pulumi.AliCloud.Vpn.Inputs
{

    public sealed class IpsecServerIkeConfigArgs : global::Pulumi.ResourceArgs
    {
        /// <summary>
        /// The authentication algorithm that is used in Phase 1 negotiations. Default value: `sha1`.
        /// </summary>
        [Input("ikeAuthAlg")]
        public Input<string>? IkeAuthAlg { get; set; }

        /// <summary>
        /// The encryption algorithm that is used in Phase 1 negotiations. Default value: `aes`.
        /// </summary>
        [Input("ikeEncAlg")]
        public Input<string>? IkeEncAlg { get; set; }

        /// <summary>
        /// IkeLifetime: the SA lifetime determined by Phase 1 negotiations. Valid values: `0` to `86400`. Default value: `86400`. Unit: `seconds`.
        /// </summary>
        [Input("ikeLifetime")]
        public Input<int>? IkeLifetime { get; set; }

        /// <summary>
        /// The IKE negotiation mode. Default value: `main`.
        /// </summary>
        [Input("ikeMode")]
        public Input<string>? IkeMode { get; set; }

        /// <summary>
        /// The Diffie-Hellman key exchange algorithm that is used in Phase 1 negotiations. Default value: `group2`.
        /// </summary>
        [Input("ikePfs")]
        public Input<string>? IkePfs { get; set; }

        /// <summary>
        /// The IKE version. Valid values: `ikev1` and `ikev2`. Default value: `ikev2`.
        /// </summary>
        [Input("ikeVersion")]
        public Input<string>? IkeVersion { get; set; }

        /// <summary>
        /// The identifier of the IPsec server. The value can be a fully qualified domain name (FQDN) or an IP address. The default value is the public IP address of the VPN gateway.
        /// </summary>
        [Input("localId")]
        public Input<string>? LocalId { get; set; }

        /// <summary>
        /// The identifier of the customer gateway. The value can be an FQDN or an IP address. By default, this parameter is not specified.
        /// </summary>
        [Input("remoteId")]
        public Input<string>? RemoteId { get; set; }

        public IpsecServerIkeConfigArgs()
        {
        }
        public static new IpsecServerIkeConfigArgs Empty => new IpsecServerIkeConfigArgs();
    }
}
