ЕКС: Обмеження IP-адреси клієнта CAS

Résumé: У цій статті описано можливість обмежувати IP-адреси клієнтів, які мають доступ до сегмента CAS.

Cet article concerne Cet article ne concerne pas Cet article n’est associé à aucun produit spécifique. Toutes les versions du produit ne sont pas identifiées dans cet article.

Instructions

Введення:

  • Цю функцію можна використовувати, коли клієнт хоче обмежити доступ IP-адрес клієнтів до сегмента CAS. Лише IP-адреси, встановлені в списку обмежень, можуть мати доступ до відповідного користувача. 
  • За замовчуванням для користувача не встановлено жодних обмежень. 
  • Обмеження IP-адреси користувача CAS застосовується до користувача на всіх VDC.
  • Ліміт IP-адреси за замовчуванням для користувача становить 10 і його можна налаштувати. 

Примітка: Зверніться до віддаленої служби віддаленої підтримки Dell ECS , щоб змінити значення ліміту IP за замовчуванням.


Кроки для налаштування обмеження IP клієнта CAS:

  1. Створення користувача CAS
  2. Створіть файл .xml зі списком IP, доступ до якого ви хочете надати користувачу, будь-яка інша спроба доступу IP до користувача CAS повинна зазнати невдачі FP_AUTHENTICATION_FAILED_ERR
  3. За допомогою кнопки PUT команда для встановлення обмеження IP для конкретного користувача
  4. За допомогою кнопки GET для отримання або перегляду обмежень, встановлених для користувача
  5. До EDIT обмеження, яке раніше було встановлено для користувача, відредагуйте XML-файл з IP-адресами і виконайте PUT
  6. До DELETE обмеження, яке було встановлено раніше, видаліть <ip_restrictions>127.127.127.127</ip_restrictions> з файлу xml і виконайте команду PUT

Приклад xml-файлу, коли встановлено обмеження IP: (тільки ці дві IP мають доступ до access_user користувача CAS)

cat new.xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<user_ip_restrictions_param>
<ip_restrictions>127.127.127.127</ip_restrictions>
<ip_restrictions>127.128.128.128 </ip_restrictions>
<user_name>access_user</user_name>
</user_ip_restrictions_param>


Нижче наведено REST команди з PUT, GET, LISTі DELETE operations, Для користувача root повинен використовуватися токен доступу.

Приклад:

admin@ecsnode1:~> TOK=$(curl -iks https://localhost:4443/login -u root:*** | grep X-SDS-AUTH-TOKEN); echo $TOK
X-SDS-AUTH-TOKEN: BAAcc1pZcEkxK3MyUU4xZy9ocEdnUXp0MHl2aTk0PQMAjAQASHVybjpzdG9yYWdlb3M6VmlydHVhbERhdGFDZW50ZXJEYXRhOjdlNWQ0YzFkLTkzNjEtNDBkNS1iMWE4LTUwNzE5NDEwODRiZQIADTE2ODQ4MjYzOTk5OTIDAC51cm46VG9rZW46ODYzMzEyZDEtYzA3NC00MWFjLThlMjAtZDUzZmQ3Njk2MjVhAgAC0A8=
admin@ecsnode1:~> 

 

Щоб встановити обмеження IP-адреси користувачів:

Використовуйте наведену нижче команду:
PUT /object/user-cas/ip-restrictions/{namespace_name}/{user_name}

Приклад:

curl -ks -H 'Accept:application/xml' -H 'Content-Type:application/xml' -X PUT -d @new.xml -H "$TOK" https://10.245.xx.xx:4443/object/user-cas/ip-restrictions/cas_access/access_user

Приклад тіла відповіді 1: (за замовчуванням, коли для користувача не встановлено обмеження IP)

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<user_ip_restrictions>
<user_name>access_user</user_name>
</user_ip_restrictions>

Приклад тіла відповіді 2: (доступ до користувача має лише надана нижче IP-адреса клієнта)

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<user_ip_restrictions_param>
<ip_restrictions>128.128.128.128</ip_restrictions>
<ip_restrictions>127.127.127.127</ip_restrictions>
<user_name>access_user</user_name>
</user_ip_restrictions_param>

 

Щоб отримати обмеження IP-адреси користувачів:

Використовуйте наведену нижче команду:
GET /object/user-cas/ip-restrictions/{namespace_name}/{user_name}

Приклад:

curl -ks -H "$TOK" -H "Content-Type: application/json" https://10.245.xx.xx:4443/object/user-cas/ip-restrictions/cas_access/access_user | xmllint -format -

Приклад тіла відповіді: (доступ до користувача має лише надана нижче IP-адреса клієнта)

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<user_ip_restrictions>
<ip_restrictions>127.127.127.127</ip_restrictions>
<user_name>access_user</user_name>
</user_ip_restrictions>

Приклад тіла відповіді 2: (GET для користувача за замовчуванням, коли не встановлено обмеження IP)

curl -ks -H "$TOK" -H "Content-Type: application/json" https://10.245.xx.xx:4443/object/user-cas/ip-restrictions/cas_access/access_user | xmllint -format -
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<user_ip_restrictions>
<user_name>access_user</user_name>


Щоб перерахувати обмеження IP-адреси для користувачів:

Використовуйте наведену нижче команду:
GET /object/user-cas/ip-restrictions/

Приклад: (перелічує обмеження IP для кожного користувача)

curl -ks -H "$TOK" -H "Content-Type: application/json" https://10.245.xx.xx:4443/object/user-cas/ip-restrictions | xmllint -format -
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<user_ip_restrictions_list>
<userIpRestriction>
<user_name>tsouser</user_name>
</userIpRestriction>
<userIpRestriction>
<user_name>tsouser2</user_name>
</userIpRestriction>
<userIpRestriction>
<ip_restrictions>10.245.xx.xx</ip_restrictions>
<ip_restrictions>10.247.xx.xx</ip_restrictions>
<ip_restrictions>10.245.xx.xx</ip_restrictions>
<ip_restrictions>10.247.xx.xx</ip_restrictions>
<ip_restrictions>10.243.xx.xx</ip_restrictions>
<user_name>clientuser</user_name>                >>>these are the restrictions set for this user
</userIpRestriction>
<userIpRestriction>
<user_name>gctest</user_name>
</userIpRestriction>
<userIpRestriction>
<user_name>casgcuser2</user_name>
</userIpRestriction>
<userIpRestriction>
<user_name>user2</user_name>
</userIpRestriction>
<userIpRestriction>
<user_name>gcu2</user_name>
</userIpRestriction>
<userIpRestriction>
<user_name>casgcuser1</user_name>               >>>all these users doesn't have any restrictions set 
</userIpRestriction>
</user_ip_restrictions_list>


Щоб видалити встановлені для користувача обмеження IP:

Видаліть записи обмеження IP з .xml і виконайте PUT

cat new.xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<user_ip_restrictions_param>
<user_name>clientuser</user_name>
</user_ip_restrictions_param>

Команда:

curl -ks -H 'Accept:application/xml' -H 'Content-Type:application/xml' -X PUT -d @new.xml -H "$TOK" https://10.245.130.65:4443/object/user-cas/ip-restrictions/clientns/clientuser

Приклад тіла відповіді:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<user_ip_restrictions>
<user_name>clientuser</user_name>
</user_ip_restrictions>


Наведений нижче приклад показує поведінку функції під час PUTі GET, а також доступ до користувача з обмеженнями та без них:

cat new.xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<user_ip_restrictions_param>
<ip_restrictions>127.127.127.127</ip_restrictions>
<user_name>access_user</user_name>
</user_ip_restrictions_param>

PUT:

curl -ks -H 'Accept:application/xml' -H 'Content-Type:application/xml' -X PUT -d @new.xml -H "$TOK" https://10.245.xx.xx:4443/object/user-cas/ip-restrictions/cas_access/access_user

GET:

curl -ks -H "$TOK" -H "Content-Type: application/json" https://10.245.xx.xx:4443/object/user-cas/ip-restrictions/cas_access/access_user | xmllint -format -
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<user_ip_restrictions>
<ip_restrictions>127.127.127.127</ip_restrictions>
<user_name>access_user</user_name>
</user_ip_restrictions>


Використовуючи JCASS, намагався зайти в пул з 127.127.127 і зміг отримати доступ:

CASScript>po 10.245.xx.xx?name=access_user,secret=centera@1234

Attempting to connect to: 10.245.xx.xx?name=access_user,secret=centera@1234

Connected to: 10.245.xx.xx?name=access_user,secret=centera@1234

CASPool Properties:
Connection String: 10.245.xx.xx?name=access_user,secret=centera@1234
Cluster Time: 2020.07.07 06:32:24 GMT
Buffer Size: 16384
Prefetch Buffer Size: 32768
Connection Timeout: 120000
Multi-Cluster Failover Enabled: True
Collision Avoidance Enabled: False


Намагався отримати доступ до пулу з IP, якого немає в списку обмежень IP (який є дозволеним списком). Доступ до басейну повинен завершитися з наступною помилкою:

CASScript>po 10.245.xx.xx?name=access_user,secret=centera@1234

Attempting to connect to: 10.245.xx.xx?name=access_user,secret=centera@1234

SDK Error Occurred:

     Error Number: -10153
     System Error: 0
     Error:        FP_AUTHENTICATION_FAILED_ERR
     Error Class:  null
     Trace:        HPPAuthCRTransaction.run<FPConnection::authenticate<Cluster.authenticate<Cluster::updateClusterInfo()<ClusterCloud::updateClusterInfo(e9f1a3c9-5cb1-3a76-a589-f639de9ad2e4)<ClusterCloud::getClusterInfo(0,ClusterInformation&,2)<FPPool::Open(10.245.130.64?name=access_user,secret=centera@1234)<_FPPool_Open(10.245.130.64?name=access_user,secret=centera@1234)<FPPool_Open8(10.245.130.64?name=access_user,secret=centera@1234)

Informations supplémentaires

Також дивіться Посібник з адміністрування ECS:
https://dl.dell.com/content/manual52394679-ecs-3-8-administration-guide.pdf?language=en-us

https://www.dell.com/support/manuals/en-us/ecs-appliance-software-with-encryption/ecs_p_adminguide_3_8/restrict-user-ip-addresses-that-can-access-a-cas-bucket?guid=guid-c4e67b45-46f8-46fa-93cf-f63795add0ad⟨=en-us

Produits concernés

Elastic Cloud Storage

Produits

ECS, ECS Appliance
Propriétés de l’article
Numéro d’article: 000214011
Type d’article: How To
Dernière modification: 18 mai 2026
Version:  8
Trouvez des réponses à vos questions auprès d’autres utilisateurs Dell
Services de support
Vérifiez si votre appareil est couvert par les services de support.