Тук ще разгледаме подробните стъпки за Активиране на TLS в Oracle Apps R12.2
Съдържание
Въведение:
Данните между уеб браузъра и уеб сървъра пътуват некриптирани в приложението R12, така че паролата и друга информация могат да бъдат проследени от снифер. Избягваме това, като внедряваме SSL в R12.
С прилагането на SSL данните пътуват в криптирани форми и само уеб браузърът и уеб сървърът могат да ги декриптират.
Внедряването изисква SSL сертификат и конфигурация в средата R12 според конфигурацията
Какво е SSL?
SSL и TLS са криптографският протокол, който гарантира поверителност между комуникиращите приложения и техните потребители в Интернет
Какво е сигурност на транспортния слой (TLS)
Защитата на транспортния слой или TLS е наследник на SSL. TLS, подобно на SSL, е протокол, който криптира трафика между клиент и сървър. TLS създава криптирана връзка между две машини, позволявайки предаването на лична информация без проблеми с подслушване, подправяне на данни или фалшифициране на съобщения.
Как работи SSL
- Клиентът изпраща заявка до сървъра, използвайки режим на HTTPS връзка.
- Сървърът представя своя цифров сертификат на клиента. Този сертификат съдържа идентифицираща информация на сървъра като име на сървъра, публичен ключ на организация и сървър и цифров подпис на частния ключ на CA
- Клиентът (уеб браузър) има публичните ключове на целия CA. Той декриптира частния ключ на цифровия сертификат. Тази проверка доказва, че подателят е имал достъп до частния ключ и следователно вероятно е лицето, свързано с публичния ключ. Ако проверката мине добре, сървърът се удостоверява като доверен сървър.
- Клиентът изпраща на сървъра списък с нивата на криптиране или шифри, които може да използва.
- Сървърът получава списъка и избира най-силното ниво на криптиране, което им е общо.
- Клиентът криптира произволно число с публичния ключ на сървъра и изпраща резултата на сървъра (който само сървърът трябва да може да декриптира със своя частен ключ); и двете страни използват произволното число, за да генерират уникален ключ на сесията за последващо криптиране и декриптиране на данни по време на сесията
Реализацията на ssl ще зависи от топологията на изпълнението на R12. Тук подчертавам всички основни.
Точка за прекратяване на TLS
- TLS крайната точка е сървърът на крайната точка за криптираната връзка, която е инициирана от клиент (например браузър).
- В случай на Oracle E-Business Suite, Oracle HTTP сървърът може да действа като TLS крайна точка. Пред Oracle HTTP сървъра може да се конфигурира алтернативна точка на TLS, като обратен прокси сървър или балансьор на натоварване.
Различна SSL топология
- Разгръщане на един уеб сървър с точка за прекратяване на TLS като уеб сървър
Това е доста просто. Ще ни трябва цифров сертификат за уеб сървъра. Стъпките са прави. Трафикът между уеб браузър и уеб сървър ще бъде криптиран
- Наличието на балансьор на натоварване, който обслужва 2 или повече уеб сървъри, го прави малко сложно
В този случай бихме могли да имаме следните опции
1.Край до край на криптиране на трафика (TLS терминираща точка като уеб сървър)
Целият поток на трафика, т.е. от браузър до балансьор на натоварване и от балансьор на натоварване до уеб сървър, е криптиран
Има два начина да го направите
a) Конфигурация за преминаване :Балансът на натоварване в този случай не декриптира/криптира съобщението. То просто преминава през трафика към уеб сървъра
б) Декриптиране/криптиране :Балансът на натоварването в този случай декриптира трафика на ниво балансиране на натоварването и след това отново го криптира и го изпраща на уеб сървър, който отново го декриптира
2. SSL терминатор (алтернативна TLS крайна точка):Трафикът между уеб браузъра и балансира на натоварването е само криптиран. Балансът на натоварването действа като SSL терминатор и прекратява SSL на ниво балансиране на натоварването и предава некриптирания трафик към уеб сървъра.
Стъпките за конфигуриране на всяка топология са дадени по-долу
Разгръщане на един уеб сървър с точка за прекратяване на TLS като уеб сървър
Важни точки
1) Надстройте до минимум Java Development Kit (JDK) 7.
Използването на TLS 1.2 изисква минимум Java 7
2) Надстройте междинния софтуер на Oracle Fusion.
Използването на TLS 1.2 изисква Oracle Fusion Middleware 1.1.1.9
3) Приложете специфични за продукта пластири.
Oracle Workflow – Приложете кръпка 22806350 :R12.OWF.C за справяне с проблем с програмата за известия на Oracle Workflow.
Oracle iProcurement – Приложете корекцията(ите), спомената в My Oracle Support Knowledge Документ 1937220.1 , Oracle iProcurement, Exchange и OSN се провалят, след като сайтът на доставчика мигрира от SSLv3 към TLS протокол (с SSL ръкостискане SSLIOClosedOverrideGoodbyeKiss) , което съответства на съответните версии на приложението.
Oracle iPayment – Приложете кръпка 22522877 :R12.IBY.C.
Oracle XML Gateway – Приложете кръпка 22326911 :R12.ECX.C.
Стъпка 1
Задайте вашата среда
Стъпките, описани подробно в този раздел, трябва да се изпълнят на (работещата) файлова система за изпълнение, за да се гарантира, че по време на следващото онлайн корекция настройката на TLS след това се разпространява към файловата система за корекция. В този момент не трябва да има активен цикъл на корекция. За да проверите дали онлайн цикълът на корекция вече е активен или не, можете да използвате следната команда:
UNIX:
$ adop -status
- Влезте в нивото на приложението Oracle E-Business Suite, версия 12.2 като потребител на ОС, който притежава инсталационните файлове.
- Файловата система с файловата променлива на контекста на приложения s_file_edition_type настроена на „run“ обозначава файловата система за изпълнение. Източник на вашия файл на средата на ниво приложение (
.env), разположен в директорията APPL_TOP на файловата система за изпълнение. Не извеждайте файла APPS .env , в противен случай променливите на средата 10.1.2 ще бъдат взети и Oracle Wallet Manager 11g няма да се стартира. След като източникът на файла на средата, променливата на средата $FILE_EDITION трябва да се „изпълни“. - Задайте променливата на средата PATH да включва местоположението на Fusion Middleware и променлива DISPLAY за owm gui
Например
експортиране PATH=$FMW_HOME/webtier/bin:$FMW_HOME/oracle_common/bin:$PATH
експортиране DISPLAY=<име на хост или IP адрес>:0.0
S тъпка 2
Създайте портфейл
Местоположението s_web_ssl_directory все още се използва от някои компоненти на Oracle E-Business Suite версия 12.2 (например XML Gateway Transportation Agent OXTA) и по време на процеса на клониране на Oracle Fusion Middleware.
Можем да намерим това местоположение по-долу
cat $CONTEXT_FILE|grep “s_web_ssl_directory”
Отворете мениджъра на Wallet като фонов процес:
$ owm & |
От менюто на Oracle Wallet Manager отидете на Wallet>
Ново.
Отговорете НЕ на:Вашият портфейл по подразбиране не съществува. Искате ли да го създадете сега?
Новият екран на портфейла вече ще ви подкани да въведете парола за вашия портфейл
Въведете паролата и я запомнете
Създаден е нов празен портфейл. Искате ли да създадете заявка за сертификат в момента?
След като щракнете върху „Да“ в екрана за заявка за създаване на сертификат ще се появи:
Попълнете съответните стойности, където:
Общо име | Това е името на вашия сървър, включително домейна. |
Организационна единица:(по избор) | Звеното във вашата организация. |
Организация | Това е името на вашата организация |
Место/град | Това е вашето населено място или град. |
Щат/провинция | е пълното име на вашата държава или провинция, не съкращавайте. |
Изберете вашата държава от падащия списък и за размер на ключа изберете минимум 2048. Щракнете върху OK.
Щракнете върху При поискан сертификат
Ще трябва да експортирате заявката за сертификат, преди да можете да я изпратите на сертифициращ орган.
- Щракнете върху сертификат [Искан], за да го маркирате.
- От менюто щракнете върху Операции>
Заявка за сертификат за експорт
- Запазете файла като server.csr
- От менюто щракнете върху Портфейл и след това щракнете върху Запазване.
- На екрана за избор на директория променете указателя към вашата напълно квалифицирана директория на портфейла.
- Щракнете върху OK.
- От менюто щракнете върху Портфейл и поставете отметка в квадратчето Автоматично влизане.
Не забравяйте да направите тази парола нещо, което ще запомните. Ще трябва да използвате паролата всеки път, когато отваряте портфейла с Oracle Wallet Manager или извършвате операции с портфейла с помощта на интерфейса на командния ред. С активирани процеси за автоматично влизане, изпратени от потребителя на ОС, който е създал портфейла, няма да е необходимо да предоставя паролата за достъп до портфейла.
- Излезте от Wallet Manager.
Директорията на портфейла вече ще съдържа следните файлове:
cwallet.sso
ewallet.p12
server.csr
Вече можете да изпратите server.csr на вашия сертифициращ орган, за да поискате сървърен сертификат
Запазете портфейла с помощта на портфейла и запазете и дайте пътя към директорията
Изпратете заявката за сертификат до сертифициращ орган .
Забележка:Промени в алгоритъма за подпис
Индустриалните стандарти за алгоритмите за криптиране постоянно се преразглеждат. Сертификатите, издадени с алгоритъм за хеширане на подпис, базиран на SHA-1, като индустриален стандарт, се премахват постепенно. Много сертифициращи органи препоръчват или налагат SHA-2 като минимален алгоритъм за подпис за издаване на сертификати. Времевата рамка за преминаване към SHA-2 варира в зависимост от сертифициращия орган, който се използва. Изискването за SHA-2 също засяга междинните сертификати, които също трябва да бъдат SHA-2, за да се свържат обратно към издадения сертификат SHA-2 на краен обект. Основните сертификати не са засегнати.
За повече информация вижте следните документи за My Oracle Support Knowledge:
Документ 1448161.1 , Как да създадете CSR с SHA-1 или по-добър алгоритъм за подпис
Документ 1275428.1 , Състояние на поддръжка за SHA-2 в Oracle Application Server (10.1.2.X.X/10.1.3.X.X) и Fusion Middleware 11g (11.1.1.X)
Документ 1939223.1 , Възможно ли е да се генерират заявки за подписване на SHA-2 сертификат с Oracle Wallet Manager или ORAPKI в FMW11g
В зависимост от вашия доставчик на сертификати, MD5 базирани заявки за сертификат (CSR), генерирани от Oracle Wallet Manager (OWM), може да не се приемат.
Например Symantec вече ще приема само SHA-1 2048-битови CSR или по-високи. Поради текущо ограничение както в OWM, така и в orapki, те не са в състояние да генерират нищо друго освен базирани на MD5 CSR. OWM може да приема SHA-2 или по-високи доверени сертификати и сървърни сертификати, просто не може да ги генерира.
В тези случаи решението е да се използва OpenSSL за генериране на CSR. Пример за този процес е даден по-долу.
- Използвайте OpenSSL, за да вземете съществуващия портфейл и да го запишете като нов файл във формат PEM:
openssl pkcs12 -в ewallet.p12 -възли -извън nonoracle_wallet.pem
Използвайте OpenSSL, за да генерирате заявката, указваща SHA-2:
openssl req -new -key nonoracle_wallet.pem -sha256 -out server.csr
В този момент OpenSSL ще ви подкани за атрибутите на заявката. Не забравяйте да въведете същите данни, които сте въвели при създаването на CSR в OWM. Не посочвайте „парола за предизвикателство“, тъй като повечето сертифициращи органи смятат, че това е несигурно.
- CSR трябва да бъде изпратен на вашия сертифициращ орган, за да поиска сертификат за сървър.
- След като получите новоиздадения си сертификат, можете да го импортирате в портфейла си с помощта на OWM, като продължите със следващата стъпка по-долу
Стъпка 5
Импортирайте вашия сървърен сертификат в портфейла
След като получите вашия сървърен сертификат от вашия сертифициращ орган, ще трябва да го импортирате в портфейла си. Копирайте сертификата в server.crt в директорията на портфейла на вашия сървър по един от следните методи:
- ftp сертификата (в двоичен режим)
- копирайте и поставете съдържанието в server.crt
Следвайте тези стъпки, за да импортирате server.crt в портфейла си:
- Отворете Wallet Manager като фонов процес:
$ owm &
- От менюто щракнете върху Wallet и след това върху Open.
- Отговорете да, когато бъдете подканени:
Вашият портфейл по подразбиране не съществува.
Искате ли да продължите?
- На екрана за избор на директория променете директорията към вашата напълно квалифицирана директория на портфейла и
щракнете върху OK
- Въведете паролата си за портфейла и щракнете върху OK.
- От менюто на Oracle Wallet Manager отидете до Operations Import User Certificate. Сертификатите на сървъра са вид потребителски сертификат. Тъй като сертифициращият орган е издал сертификат за сървъра, поставяйки неговото отличително име (DN) в полето Тема, сървърът е собственикът на сертификата, следователно „потребител“ за този потребителски сертификат.
- Щракнете върху OK.
- Щракнете двукратно върху server.crt, за да го импортирате.
- Запазете портфейла:
- В менюто на Oracle Wallet Manager щракнете върху Wallet.
- Проверете дали квадратчето за автоматично влизане е отметнато.
- Щракнете върху Запазване
Забележка:Ако всички доверени сертификати, които съставляват веригата от server.crt, не присъстват в портфейла, добавянето на сертификата няма да бъде успешно. Когато портфейлът беше създаден, сертификатите за най-често срещаните CA (като VeriSign, GTE и Entrust) бяха включени автоматично. Свържете се с вашия сертифициращ орган, ако трябва да добавите техния сертификат, и запазете предоставения файл като ca.crt в директорията на портфейла във формат base64. Друга възможност е да следвате инструкциите, дадени по-долу, за да създадете ca.crt от вашия сървърен сертификат (server.crt). Ако вашият сертифициращ орган е предоставил междинен сертификат (за да завърши веригата), след това запишете предоставения файл като intca.crt във формат Base64, той ще трябва да бъде импортиран в Oracle Wallet Manager, преди да импортирате server.crt. Сертификатите, които се състоят от няколко части (като тип P7B), също ще попаднат в тази категория
Създаване на сертификат на вашия сертифициращ орган
За да създадете ca.crt
- Копирайте server.crt на вашия компютър (ако е необходимо), като използвате един от следните методи:
ftp (в двоичен режим) server.crt към вашия компютър .
копирайте съдържанието на server.crt и го поставете в бележника на компютъра. Запазете файла като server.crt
- Щракнете двукратно върху server.crt, за да го отворите с разширението Cyrpto Shell.
- В раздела Път на сертифициране щракнете върху първия (горния) ред и след това Преглед на сертификата.
- В раздела Подробности щракнете върху Копиране във файл, това ще стартира съветника за експортиране.
- Щракнете върху Напред, за да продължите.
- Изберете Base64 кодиран X.509 (.CER) и щракнете върху следващия.
- Щракнете върху Преглед и се придвижете до директорията по ваш избор.
- Въведете ca.crt като име и щракнете върху OK, за да експортирате сертификата.
- Затворете съветника.
- Копирайте ca.crt обратно в директорията на портфейла си (ако е необходимо), като използвате един от следните методи:
ftp (в двоичен режим) ca.crt към директорията на портфейла на ниво приложение
копирайте съдържанието на ca.crt и го поставете в нов файл в директорията на портфейла на ниво приложение, като използвате текстов редактор. Запазете файла като ca.crt
Подробни стъпки за импортиране на сертификат с екранни снимки
owm & |
След това щракнете върху портфейл -> отваряне
Щракнете върху да
Въведете пълния път до директорията на wwallet
Въведете паролата за портфейла
Сега операции :Импортиране на потребителски сертификат
Като алтернатива можете да добавите сертификата
orapki wallet add \ -wallet . \ -trusted_cert \ -cert ca.cer \ -pwd <pwd> orapki wallet add \ -wallet . \ -trusted_cert \ -cert intca.cer \ -pwd <pwd> orapki wallet add \ -wallet .\ -user_cert \ -cert tech.cer \ -pwd <pwd>
Ако трябва да импортирате CA сертификата, ще трябва също да добавите съдържанието на файла ca.crt към файла b64InternetCertificate.txt, намиращ се в директорията 10.1.2 ORACLE_HOME/sysman/config:
$ cat ca.crt>> <10.1.2 ORACLE_HOME>/sysman/config/b64InternetCertificate.txt
Ако ви е предоставен и междинен сертификат (intca.crt), тогава ще трябва да го добавите и към b64InternetCertificate.txt:
$ cat intca.crt>> <10.1.2 ORACLE_HOME>/sysman/config/b64InternetCertificate.txt
Стъпка 6 – Променете портфейла на Oracle HTTP Server .
Копирайте
Можете да намерите тези променливи от Контекстния файл
cat $CONTEXT_FILE|grep “s_ohs_instance_loc”
cat $CONTEXT_FILE|grep “s_ohs_component”
Стъпка 7 – Променете OPMN портфейла и конфигурирайте пакетите за шифроване .
Променете OPMN портфейла
Местоположението по подразбиране за OPMN портфейла е в
Можем да намерим това местоположение по-долу
cat $CONTEXT_FILE|grep “s_ohs_instance_loc”
- Отидете до директорията
/config/OPMN/opmn/wallet. - Преместете съществуващите файлове на портфейла в резервна директория, в случай че искате да ги използвате отново в бъдеще.
- Копирайте файловете cwallet.sso от директорията
/config/OHS/ /keystores/default в текущата директория.
Конфигуриране на OPMN Cipher Suites
Трябва да извършите тази конфигурация, за да наложите силни пакети за шифроване на отдалечения порт OPMN.
- Уверете се, че всички процеси не работят.
- Отворете opmn.xml файла, намиращ се под вашия екземпляр от уеб ниво.
- Към горната част на файла потърсете опциите за SSL в секцията
.
Промяна:
до
ssl-ciphers=”<Изберете два шифра от списъка с валидни шифри по-долу, разделени със запетая>”/>
Следният списък посочва валидните шифровки, които могат да се използват:
- SSL_RSA_WITH_AES_256_CBC_SHA
- SSL_RSA_WITH_AES_128_CBC_SHA
- SSL_RSA_WITH_3DES_EDE_CBC_SHA
Например:
ssl-ciphers=”SSL_RSA_WITH_AESBC_128,WISSLEBC_128>
Редактирайте файла admin.conf.
Промяна:
SSLCipherSuite SSL_RSA_WITH_RC4_128_SHA
SSLProtocol nzos_Version_1_0 nzos_Version_3_0
до
SSLCipherSuite <изберете валиден шифър от списъка по-горе>:<изберете друг валиден шифър от списъка по-горе>
SSLProtocol nzos_Version_1_0 nzos_Version_1_1 nzos_Version_1_2
Стъпка 8 – Променете контролната конзола на Oracle Fusion Middleware .
Fusion Middleware Control Console използва функционалността на OPMN за управление на вашия Oracle Fusion Middleware Enterprise.
Преместете съществуващите файлове на портфейла в резервна директория, в случай че искате да ги използвате отново в бъдеще.
- $EBS_DOMAIN_HOME/opmn/
/ /wallet - $EBS_DOMAIN_HOME/opmn/
/wallet - $FMW_HOME/webtier/instances/
/config/OHS/ /proxy-wallet
Можем да намерим това местоположение по-долу
cat $CONTEXT_FILE|grep „EBS_DOMAIN_HOME“
Копирайте файла cwallet.sso от директорията
Забележка :В случай на споделена файлова система и конфигурация с множество възли, актуализациите на първите две директории се извършват на основния възел, а актуализациите на третата директория се извършват на съответния възел от ниво приложения, където OHS се конфигурира за TLS. Причината е, че първите две директории ще съществуват само на основния възел, а третата директория ще съществува само на всеки възел от ниво приложения, където OHS е активиран.
Стъпка 9
Използвайте Oracle Fusion Middleware Control, за да направите някои допълнителни промени в конфигурационния файл:
- Влезте в Oracle Fusion Middleware Control Console (например http://
. : /em). - Изберете Web Tier Target под EBS Domain.
- Изберете Администриране > Разширена конфигурация.
- Изберете ssl.conf файл за редактиране.
- Актуализирайте директивите Listen
и VirtualHost _default_: към SSL порт, например Listen 4443. - Актуализирайте записа SSLProtocol и SSLCipherSuite, за да съответстват на следното:
SSLProtocol TLSv1 TLSv1.1 TLSv1.2
SSLCipherSuite HIGH:MEDIUM:!aNULL:!RC4:+HIGH:+MEDIUM
7. Щракнете върху Прилагане .
Следната команда трябва да се изпълни (на всички възли на ниво приложение), за да разпространи промените, направени през контролната конзола на Oracle Fusion Middleware към променливите на контекстния файл:
perl $AD_TOP/bin/adSyncContext.pl contextfile=$CONTEXT_FILE
Въведете потребителската парола на APPS:
Въведете паролата за WebLogic AdminServer:
Прегледайте adSyncContext.log за промените, които са били взети и направени в контекстния файл.
Използвайте Oracle E-Business Suite 12.2 – OAM Context Editor, за да промените свързаните с TLS променливи, показани в тази таблица:
Променливи, свързани с TLS в контекстния файл | ||
Променлива | Стойност, която не е TLS | TLS стойност |
s_url_protocol | http | https |
s_local_url_protocol | http | https |
s_webentryurlprotocol | http | https |
s_active_webport | същото като s_webport | същото като s_webssl_port |
s_webssl_port | не е приложимо | по подразбиране е 4443 |
s_https_listen_parameter | не е приложимо | същото като s_webssl_port |
s_login_page | url, изграден с http протокол и s_webport | URL адрес, създаден с https протокол и s_webssl_port |
s_external_url | url, изграден с http протокол и s_webport | URL адрес, създаден с https протокол и s_webssl_port |
Стойността на s_webport се базира на порта по подразбиране преди всяка TLS конфигурация и остава непроменена при преминаване към TLS
Стъпка 10 – Стартирайте Autoconfig
Autoconfig може да се стартира с помощта на скрипта adautocfg.sh в директорията $ADMIN_SCRIPTS_HOME на ниво приложение.
Стъпка 11 – Рестартирайте услугите на ниво приложение
Използвайте скрипта adapcctl.sh в директорията $ADMIN_SCRIPTS_HOME, за да спрете и рестартирате услугите на Application Tier Apache.
Стъпка 12 – Разпространете TLS промените във файловите системи за корекция .
Следните стъпки трябва да бъдат извършени, за да се синхронизира настройката на TLS между двете файлови системи:
- Редактиране $APPL_TOP_NE/ad/custom/adop_sync.drv.
- Ако приемем, че rsynccommand е налична в UNIX, следните директиви трябва да бъдат копирани и поставени между разделите
и след съществуващите <#Copy Ends>:
# Изисква се за миграция на TLS настройка от RUN към PATCH файлова система.
# Моля, променете командите в случай, че rsync не е наличен или платформата не поддържа примерен синтаксис.#10.1.2 b64InternetCertificate.txt
rsync -zr %s_current_base%/EBSapps/10.1.2/sysman/config/b64InternetCertificate.txt %s_other_base%/EBS1apps. txt#Oracle HTTP Server Wallet – cwallet.sso
rsync -zr %s_current_base%/FMW_Home/webtier/instances/%s_ohs_instance%/config/OHS/%s_ohs_component%/keystores/thers%/cwallet. FMW_Home/webtier/instances/%s_ohs_instance%/config/OHS/%s_ohs_component%/keystores/default/cwallet.sso#OPMN Wallet – cwallet.sso
rsync -zr %s_current_baseH%/FMWces%in s_ohs_instance%/config/OPMN/opmn/wallet/cwallet.sso %s_other_base%/FMW_Home/webtier/instances/%s_ohs_instance%/config/OPMN/opmn/wallet/cwallet.sso#Fusionso Middleware Control. />rsync -zr %s_current_base%/FMW_Home/user_projects/domains/EBS_domain_%s_dbSid%/opmn/%s_ohs_instance%/%s_ohs_component%/wallet/cwallet.sso %s/other/uther/uthers_domain%s/user/user_doma%s opmn/%s_ohs_instance%/%s_ohs_component%/wallet/cwallet.sso
rsync -zr %s_current_base%/FMW_Home/user_projects/domains/EBS_domain_%s_dbSid%/opmn/%s_ohs_instance%/wallet/cwallet.sso %s_other_base%/FMW_projects/user_projects/domains/EBS_domain_%s_dbSid%/opmn/%s_ohs_instance%/wallet/cwallet.sso %s_other_base%/FMW_projects/user_domain/user_dbs/user_dbs/user портфейл/cwallet.sso
rsync -zr %s_current_base%/FMW_Home/webtier/instances/%s_ohs_instance%/config/OHS/%s_ohs_component%/proxy-wallet/cwallet.sso %s_other_base%/FMW_Home/webtier/webtier/webtier/config_instance/webtier% %s_ohs_component%/proxy-wallet/cwallet.sso
Стъпки, които да се използват при преминаване към SSL терминатор
Няма нужда от създаване и инсталиране на сертификат на уеб сървъра. В този случай просто трябва да зададем параметъра на контекстния файл, даден по-долу
Използвайте Oracle Fusion Middleware Control, за да направите някои допълнителни промени в конфигурационния файл:
- Влезте в Oracle Fusion Middleware Control Console (например http://
. : /em). - Изберете Цел на уеб ниво под EBS домейн.
- Изберете Администриране > Разширена конфигурация.
- Изберете ssl.conf файл за редактиране.
- Актуализирайте директивата ServerName до настройката на TLS крайната точка
. . - Щракнете върху Прилагане.
- Изберете httpd.conf файл за редактиране.
- Актуализирайте директивите ServerName до настройката на TLS крайната точка
. . - Щракнете върху Прилагане.
Използвайте Oracle E-Business Suite 12.2 – Oracle Applications Manager (OAM) Context Editor, за да промените свързаните с TLS променливи, показани в тази таблица:
Промени при използване на TLS терминална точка, различна от OHS (като балансьор на натоварване или обратен прокси) | ||
Променлива | Стойност, която не е TLS | TLS стойност |
s_url_protocol | http | http |
s_local_url_protocol | http | http |
s_webentryurlprotocol | http | https |
s_active_webport | същото като s_webport | Външен порт на TLS крайна точка |
s_webentryhost | същото като s_webhost | Име на хост на TLS крайна точка |
s_webentrydomain | същото като s_domainname | Име на домейн на терминална точка на TLS |
s_enable_sslterminator | # | Премахнете „#“, за да използвате ssl_terminator.conf |
s_login_page | url, изграден с http протокол и s_webport | Конструкция на url с https протокол, s_webentryhost, s_webentrydomain, s_active_webport |
s_external_url | url, изграден с http протокол и s_webport | Конструкция на url с https протокол, s_webentryhost, s_webentrydomain, s_active_webport |
Стойността на s_webport се базира на порта по подразбиране преди всяка TLS конфигурация и остава непроменена при преминаване към TLS.
Изпълнете Autoconfig
Autoconfig може да се стартира с помощта на скрипта adautocfg.sh в директорията $ADMIN_SCRIPTS_HOME на ниво приложение.
Рестартирайте услугите на ниво приложение
Използвайте скрипта adapcctl.sh в директорията $ADMIN_SCRIPTS_HOME, за да спрете и рестартирате услугите на Application Tier Apache.
Стъпки за криптиране от край до край с конфигурация за преминаване през Load Balancer
1) Всички стъпки, дадени за един уеб сървър, трябва да бъдат изпълнени.
2) Сертификатът трябва да бъде създаден с име на балансиращото натоварване
3) Можем да изпълним стъпките на сертификата на един възел и след това да копираме всички стъпки в другите възли
Промени в контекстната стойност
Променливи, свързани с TLS в контекстния файл | ||
Променлива | Стойност, която не е TLS | TLS стойност |
s_url_protocol | http | https |
s_local_url_protocol | http | https |
s_webentryurlprotocol | http | https |
s_active_webport | same as s_webport | same as s_webssl_port |
s_webssl_port | not applicable | default is 4443 |
s_https_listen_parameter | not applicable | same as s_webssl_port |
s_login_page | url constructed with http protocol and s_webport | url constructed with https protocol and s_webssl_port |
s_external_url | url constructed with http protocol and s_webport | url constructed with https protocol and s_webssl_port |
Run Autoconfig
Autoconfig can be run by using the adautocfg.sh script in the Application Tier $ADMIN_SCRIPTS_HOME directory.
Restart the Application Tier services
Use the adapcctl.sh script in the $ADMIN_SCRIPTS_HOME directory to stop and restart the Application Tier Apache services.
Steps for End to end encryption with Encryption/decryption on Load Balancer
1) All the steps given for single web server need to be executed.
2) The certificate need to be created at load balancer level and web node level also. It need to be created with load balancer Name on both the side
3) We can execute the certificate steps on one Web Node and then copy all the steps to the other nodes
4) The Load balance should have the client SSL certificate for the Web node certificate
Context value changes
SSL Related Variables in the Context File | ||
Variable | Non-SSL Value | SSL Value |
s_url_protocol | http | https |
s_local_url_protocol | http | https |
s_webentryurlprotocol | http | https |
s_active_webport | same as s_webport | same as s_webssl_port |
s_webssl_port | not applicable | default is 4443 |
s_https_listen_parameter | not applicable | same as s_webssl_port |
s_login_page | url constructed with http protocol and s_webport | url constructed with https protocol and s_webssl_port |
s_external_url | url constructed with http protocol and s_webport | url constructed with https protocol and s_webssl_port |
Both the ssl.conf and httpd.conf will have the ServerName pointing to the local host, rather than the web entry host of the TLS termination point.
In the case of a TLS termination point used, the configuration will generally consist of two profiles:a client SSL profile and a server SSL profile. Each profile will reference the corresponding certificate information of the other. Essentially, the TLS offloader needs to be aware of the TLS certificate information on the EBS side and EBS in turn needs to be aware of the TLS certificate information of the TLS termination point. Consult the documentation relevant to your TLS termination point for information on the proper configuration.
The example here is based on use of F5 BIG-IP TLS Accelerator:
SSL Client:
Parent Profile =clientssl
Certificate &Key =Subject Alternative Name (SAN) based certificate installed on BIG-IP
Chain =Intermediate chain certificate specified
SSL Server:
Parent Profile =serverssl
Certificate &Key =Basic certificate issued to the EBS instance
Chain =Intermediate chain certificate specified
We advise that both sides of the TLS configuration be tested independently. For example, test to make sure your EBS instance works with the TLS termination point first, revert the change, and then test that TLS configured only for EBS works. Once it is confirmed that both configurations work for TLS, you can commit to the end-to-end TLS configuration by re-introducing the TLS termination point.
An example of the protocol flow in this scenario:
client https request> TLS Off-loader (https:443)> EBS TLS (https:4443)
There are two distinct TLS certificate chains in play, therefore the TLS handshake and negotiation must complete in order for the communication to be successful. Any break in this flow will result in TLS protocol errors. In this example, the TLS termination point is operating on the general default port of 443, while EBS is configured to operate on port 4443.
Run Autoconfig
Autoconfig can be run by using the adautocfg.sh script in the Application Tier $ADMIN_SCRIPTS_HOME directory.
Restart the Application Tier services
Use the adapcctl.sh script in the $ADMIN_SCRIPTS_HOME directory to stop and restart the Application Tier Apache services.
Configure Loopback and Outbound Connections
Step 1 – Update the managed server (WLS) configuration .
Append the following JVM parameter to all managed servers and the WebLogic administration server:
- Log in to Oracle Fusion Middleware Administration Console (for example, http://
. : /console) - Click on Lock &Edit.
- Under Domain Structure > your EBS domain> Environment and Servers, select one of the managed servers. (Note that you will need to repeat this for all managed servers and the WebLogic administration server in your environment.)
Then under the Server Start tab in the Arguments section, add the following:
-Dhttps.protocols=TLSv1,TLSv1.1,TLSv1.2
- Click on Save.
- Repeat steps 3 and 4 for all remaining managed servers.
- Click on Activate Changes.
Step 2 – Update the b64InternetCertificate.txt Truststores
Add the contents of the ca.crt file to b64InternetCertificate.txt file.
If you need to import the CA Certificate, you will also need to add the contents of the ca.crt file to the b64InternetCertificate.txt file located in the 10.1.2 ORACLE_HOME/sysman/config directory:
$ cat ca.crt>> <10.1.2 ORACLE_HOME>/sysman/config/b64InternetCertificate.txt
Step 3 – Update the cacerts Truststore
- Update the JDK cacerts file.
Oracle Web Services requires the certificate of the certifying authority who issued your server certificate (ca.crt from the previous step) to be present in the JDK cacerts file. In addition, some features of XML Publisher and BI Publisher require the server certificate (server.crt from previous step) to be present. - Navigate to the $OA_JRE_TOP/lib/security directory.
- Follow these steps to ensure these requirements are met:
- Backup the existing cacerts file.
- Copy your ca.crt and server.crt files to this directory and issue the following command to insure that cacerts has write permissions:
$ chmod u+w cacerts 4. Add your Apache ca.crt and server.crt to cacerts:$ keytool -import -alias ApacheRootCA -file ca.crt -trustcacerts -v -keystore cacerts $ keytool -import -alias ApacheServer -file server.crt -trustcacerts -v -keystore cacerts If you were also provided an Intermediate Certificate (intca.crt) then you will also need to add that to the cacerts before adding the server.crt:
$ keytool -import -alias ApacheRootCA -file ca.crt -trustcacerts -v -keystore cacerts $ chmod u-w cacerts |
Step 4 Database tier setup
Oracle products such as Oracle Configurator, Order Management, Order Capture, Quoting, iPayment, iStore, and Pricing are leveraging the database as an HTTP client. The implementation of TLS for the Oracle Database Server (which acts as a client sending requests to the Web server) makes use of the Oracle Wallet Manager for setting up an Oracle wallet.
Забележка :This is a mandatory requirement for Oracle iStore storefront pages when the web tier is TLS enabled.
To enable the HTTPS client request from the database using UTL_HTTP, you need to establish a truststore in wallet format. You do not need a server certificate for this wallet. You only need to import the root CA certificate for the root CAs that are the trust anchor for the sites you need UTL_HTTP to connect to.
- After setting your environment for the database tier, navigate to the $ORACLE_HOME/appsutil directory.
- Create a new wallet directory named wallet.
- Navigate to the newly created wallet directory.
- Open the Oracle Wallet Manager as a background process.
owm &
- In the Oracle Wallet Manager Menu, navigate to Wallet > New .
Answer NO to:Your default wallet directory doesn’t exist. Do you wish to create it now? The new wallet screen will now prompt you to enter a password for your wallet. Click NO when prompted:A new empty wallet has been created. Do you wish to create a certificate request at this time? - If you need to import ca.crt, on the Oracle Wallet Manager menu navigate to Operations > Import Trusted Certificate . Click OK . Double click on ca.crt to import it.
- Save the wallet:On the Oracle Wallet Manager Menu, click Wallet . Verify the Auto Login check box is selected. Click Save .
To test that the wallet is properly set up and accessible, log in to SQLPLUS as the apps user and execute the following:
SQL>select utl_http.request('[address to access]', '[proxy address]', 'file:[full path to wallet directory]', null) from dual;
where:
‘[address to access]’ =the URL for your Oracle E-Business Suite Rapid Install Portal.
‘[proxy address] ‘ =the URL of your proxy server, or NULL if not using a proxy server.
‘file:[full path to wallet directory]’ =the location of your wallet directory (do not specify the actual wallet files).
Related links
Enabling SSL or TLS in Oracle E-Business Suite Release 12 (Doc ID 2143099.1)
How to find R12 components Version
40 Adpatch question every DBA should know
awk command
Keytool command