적용 대상: SQL Server 2025(17.x) 미리 보기 - Linux
이 문서에서는 SQL Server on Linux에 대한 SQL 로그인 암호 정책을 설정하고 관리하는 방법을 설명합니다.
암호 정책은 데이터베이스 환경을 보호하는 중요한 측면입니다. 다음을 적용합니다.
- 복잡성
- 만료
- 변경
이 적용을 통해 SQL Server 인증을 사용하는 로그인이 안전하게 보호됩니다.
비고
암호 정책은 Windows에서 사용할 수 있습니다. 자세한 내용은 Password Policy을 참조하세요.
사용자 지정 정책 설정
Linux의 SQL Server 2025(17.x) 미리 보기부터 파일에서 mssql.conf
다음 구성 매개 변수를 설정하여 사용자 지정 암호 정책을 적용할 수 있습니다.
구성 옵션 | 설명 |
---|---|
passwordpolicy.passwordminimumlength |
암호에 필요한 최소 문자 수를 정의합니다. 암호는 최대 128자까지 가능합니다. |
passwordpolicy.passwordhistorylength |
기억해야 하는 이전 암호의 수를 결정합니다. |
passwordpolicy.passwordminimumage |
사용자가 암호를 다시 변경하기 전에 기다려야 하는 최소 기간을 지정합니다. |
passwordpolicy.passwordmaximumage |
암호를 변경하기 전에 사용할 수 있는 최대 기간을 설정합니다. |
비고
현재는 passwordminimumlength
8자 미만으로 설정할 수 있습니다. 암호는 SQL Server 기본 암호 정책을 따라야 합니다. 기본적으로 암호의 길이는 8자 이상이어야 하며 대문자, 소문자, 밑이 10자리 숫자, 기호 등 네 집합 중 세 가지의 문자를 포함해야 합니다. 암호는 최대 128자까지 가능합니다. 가능한 한 길고 복잡한 암호를 사용합니다.
SQL Server on Linux에서 SQL 인증 로그인에 대한 사용자 지정 암호 정책을 구성하는 방법에는 두 가지가 있습니다.
- adutil을 사용하여 사용자 지정 암호 정책 적용
-
mssql.conf
도구를 사용하여 수동으로 파일 구성
adutil을 사용하여 사용자 지정 암호 정책 설정
AD(Active Directory) 서버에서 정책 관리가 중앙 집중식으로 관리되는 환경에서 도메인 관리자는 AD 서버에서 암호 정책 값을 설정하고 수정할 수 있습니다. 또한 SQL Server를 실행하는 Linux 컴퓨터도 Windows 도메인의 일부여야 합니다.
adutil을 사용하여 AD 서버에서 암호 정책을 가져와 파일에 씁니다mssql.conf
. 이 메서드는 중앙 집중식 관리의 이점을 제공하고 SQL Server 환경에서 일관된 정책 적용을 보장합니다.
adutil에 대한 요구 사항
Kerberos 인증 세션 설정
kinit
을sudo
와 함께 실행하여 Kerberos TGT(티켓 부여 티켓)를 가져오거나 갱신합니다.kinit
명령에 권한 있는 계정을 사용합니다. 계정에 도메인에 연결할 수 있는 권한이 있어야 합니다.
도메인 내에서 상승된 권한이 있는 계정으로
<user>
을(를) 바꾸십시오.sudo kinit <user>@CONTOSO.COM
티켓이 부여되었는지 확인합니다.
sudo klist
암호 정책을 업데이트하려면 adutil을 사용하여 도메인을 쿼리합니다.
sudo adutil updatepasswordpolicy
명령이 성공하면 비슷한 메시지가 표시됩니다.
Successfully updated password policy in mssqlconf. Restart SQL Server to apply the changes.
원하면 이전 명령에
--path
옵션을 추가할 수 있습니다. 기본 경로와 다른 위치에 mssql-conf 도구가 있는 경우 이 옵션을 사용할 수 있습니다. 기본 경로는/opt/mssql/bin/mssql-conf
입니다.SQL Server 서비스를 다시 시작합니다.
sudo systemctl restart mssql-server
mssql-conf를 사용하여 수동으로 사용자 지정 암호 정책 설정
mssql.conf
를 사용하여 파일의 매개 변수 를 업데이트하여 SQL 인증 로그인 암호 정책을 설정할 수 있습니다. 이 방법은 정책 설정에 대한 단순성과 직접 제어를 제공합니다.
SQL Server를 실행하는 Linux 호스트가 도메인에 속하지 않고 암호 정책을 가져올 도메인 컨트롤러가 없는 경우 이 메서드를 사용합니다.
다음 mssql-conf 명령을 실행하여 각 정책 구성 속성을 설정합니다.
암호 정책에 설명된 복잡성 요구 사항을 준수하여 최소 암호 길이를 14자로 설정합니다.
sudo /opt/mssql/bin/mssql-conf set passwordpolicy.minimumpasswordlength 14
최소 암호 사용 기간을 1일로 설정합니다. 사용자는 하루 후에 암호를 변경할 수 있습니다.
sudo /opt/mssql/bin/mssql-conf set passwordpolicy.passwordminimumage 1
암호 기록 길이를 8로 설정합니다. 사용자는 이전 암호를 다시 사용하기 전에 8개의 고유한 암호를 사용해야 합니다.
sudo /opt/mssql/bin/mssql-conf set passwordpolicy.passwordhistorylength 8
최대 암호 사용 기간을 45일로 설정합니다. 사용자가 암호를 변경하기 전에 최대 45일 동안 암호를 사용할 수 있습니다.
sudo /opt/mssql/bin/mssql-conf set passwordpolicy.passwordmaximumage 45
SQL Server 서비스를 다시 시작합니다.
sudo systemctl restart mssql-server
제한점
현재는 minimumpasswordlength
14자 이상으로 설정할 수 없습니다.
Active Directory에서 그룹 암호 정책을 업데이트한 후 수동으로 명령을 실행 adutil updatepasswordpolicy
하여 업데이트 mssql.conf
해야 합니다. 이 명령은 자동으로 실행되지 않습니다. SQL Server를 실행하는 Linux 컴퓨터가 도메인의 일부인지 확인하거나 mssql-conf를 사용하여 수동으로 설정합니다.
Active Directory에서 각 그룹 수준 암호 정책은 확인란을 사용하여 정의하거나 정의되지 않도록 할 수 있습니다.
그러나 정책 선택을 취소해도 SQL Server on Linux에서 사용하지 않도록 설정되지는 않습니다. 사용자 지정 암호 정책을 적용하지 않도록 하려면 확인란을 사용하는 대신 mssql-conf 의 설정을 업데이트합니다.