CLI で IP アクセス制限を設定する方法

CLI で IP アクセス制限を設定することはできますか?
IP アクセスルールの有効/無効のみであれば NXCLI.exe ユーティリティで設定可能ですが、IPアドレスを指定する場合は PowerShell を使用する必要があります。

本記事の操作は PowerShell に関する知識や操作経験を必要とします。

まずは、『Titan の PowerShell モジュールの入手方法』を参考に TitanAPI をインストールしてください。

以下のサンプルでは 192.168.0.99 ~ 192.168.0.233 までの IP アドレスからの SFTP, FTP, HTTP プロトコルによるアクセスのみを許可しています。

【コードサンプル】


# Login  (use your credentials)
#
$login = Invoke-Login -UserName "test" -PassWord "123456"
$env:SRTAuthToken = $login.Response.SessionInfo.BearerToken

# Add IP access rule to server, Note: this script requires version 2.0.20 of the server or later
$myserver = "Default Server"
#
# Get current server params settings
$spResult = Get-SvrParam -ServerGuid $myserver -Fields IPAccess

$sp = $spResult.Response

# display current settings
$sp.IPAccess | Format-List
$sp.IPAccess.IPAccessRules | Format-List

$sp.IPAccess.DenyByDefault = 1
$sp.IPAccess.Enabled = 1

# allocate a new entry
$ipEntry = new-object Titan.API.Models.SrtApiModelsApiIpAccessRulePoco

$ipEntry.Allow = 1
$ipEntry.IPAddressStart = "192.168.0.99"
$ipEntry.IPAddressEnd = "192.168.0.233"

# Protocols are as follows
# Ftp = 1
# FtpS = 2
# Sftp = 3
# Http = 4
# HttpS = 5
# Dav = 6
# DavS = 7
$ipEntry.Protocols = (3,1,4);

# Add this IP access rule to array
$sp.IPAccess.IPAccessRules += $ipEntry

# Update IP Access poco in server params
$r = Set-SvrParam -serverGUID $myserver -IPAccess $sp.IPAccess
$r.Result | Format-List
# Print results
Write-Host "Updated IP Access settings"
$r.Response.IPAccess | Format-List
$r.Response.IPAccess.IPAccessRules | Format-List

管理ポータル (UI) 上では下図のような設定が反映されます。
PowerShellからのIPアクセス設定-結果

  • PowerShell の操作に関するサポートは本サポートの対象外となります。
  • PowerShell を使用した Titan の操作支援は通常のサポートではご提供していません。
    (『Professional Service』の契約者のみへ提供)