DB

DB 이관 시 C# 변경 작업 - 방화벽

박쿠리 2024. 8. 5. 22:59

방화벽 설정

  • 포트 열기: 데이터베이스 서버가 사용하는 포트를 애플리케이션 서버가 접근할 수 있도록 열어야 한다.
  • IP 허용: 애플리케이션 서버의 IP 주소가 데이터베이스 서버에 접근할 수 있도록 허용해야 한다.

 

예시 1: Windows 방화벽 설정

a. 포트 열기

  1. Windows 방화벽 고급 보안을 연다.
  2. 인바운드 규칙에서 새 규칙을 클릭한다.
  3. 포트를 선택하고 다음을 클릭한다.
  4. TCP를 선택하고 특정 로컬 포트에 데이터베이스 포트를 입력한다. (예: 1433 for SQL Server)
  5. 연결 허용을 선택하고 다음을 클릭한다.
  6. 규칙이 적용될 네트워크 프로파일을 선택하고 다음을 클릭한다.
  7. 규칙의 이름을 입력하고 마침을 클릭한다.

b. IP 허용

  1. Windows 방화벽 고급 보안을 연다.
  2. 인바운드 규칙에서 새로 만든 포트 규칙을 찾는다.
  3. 해당 규칙을 더블 클릭하여 속성을 연다.
  4. 범위 탭에서 원격 IP 주소 섹션에 애플리케이션 서버의 IP 주소를 추가한다.

예시 2: Linux 방화벽 설정 (UFW)

a. UFW로 포트 열기

UFW가 설치되어 있는지 확인한다.

sudo ufw status

 

데이터베이스 서버 포트를 연다. (예: 5432 for PostgreSQL)

sudo ufw allow 5432/tcp

 

방화벽 규칙을 리로드한다.

sudo ufw reload

 

b. 특정 IP 주소 허용

특정 IP 주소가 포트에 접근할 수 있도록 규칙을 추가한다

sudo ufw allow from <application_server_ip> to any port 5432

 

예제 적용

애플리케이션 서버의 IP가 192.168.1.10이고, 데이터베이스 서버가 PostgreSQL을 사용하며 포트 5432를 사용하는 경우:

  • Windows 방화벽: 인바운드 규칙에서 TCP 5432 포트를 열고, 범위 탭에서 원격 IP 주소에 192.168.1.10을 추가한다.
  • Linux UFW:
sudo ufw allow 5432/tcp
sudo ufw allow from 192.168.1.10 to any port 5432

 

0. 연결 테스트

using (SqlConnection conn = new SqlConnection(newConnectionString))
{
    conn.Open();
    using (SqlCommand cmd = new SqlCommand("SELECT 1", conn))
    {
        int result = (int)cmd.ExecuteScalar();
        Console.WriteLine(result); // 1이 출력되면 연결 성공
    }
}

 

반응형

'DB' 카테고리의 다른 글

Driver Setting  (0) 2024.09.01
SQL 주요 용어  (0) 2024.08.06
DB 이관 시 C# 변경 작업 - 코드  (0) 2024.08.05
JOIN 연산  (0) 2024.08.04