본문 바로가기
Windows

Linux FTP로 Windows AD 로그인

by Nirah 2022. 12. 6.

https://raid-1.tistory.com/99

 

Networking 문제 트러블 슈팅 팁 (route)

일전 게시글에서 구성했던 구성도 위에 추가로 CentOS7 을 구성하는 중에 문제가 생겼다. Centos7과 Win10 머신끼리만 통신이 안되고 다른 모든 경우의수의 통신은 다 되는 상황이었다. 심지어 같은

raid-1.tistory.com

 

 

 

 

이번엔 다음과 같은 구성도를 만든다.

Win10 머신이 FTP로 CentOS7을 거쳐 AD 머신의 계정으로 로그인 할 것이다.

접속 : Win10 -> Linux FTP 서버 -> AD Domain Controller -> Linux FTP 서버 -> Win10

 

 

 

 

 

Linux VM을 도메인에 가입

 

Windows join 관련 패키지 설치
# yum install -y realmd oddjob oddjob-mkhomedir sssd adcli openldap-clients 
# yum install -y policycoreutils-python samba-common samba-common-tools krb5-workstation

 

( 참고: yum install -y adcli sssd authconfig oddjob-mkhomedir samba-common-tools krb5-workstation krb5-server )


가입할 도메인 찾기

(DNS가 1.1.1.1이 잡혀야 한다)
# realm discover shrshr.shop


AD 조인

Administrator 비밀번호 입력하여 인증 (도메인 컨트롤러 마스터 계정 사용)
# realm join shrshr.shop


도메인 컨트롤러인 AD에 컴퓨터 계정 추가 된 것을 확인

 

AD 도메인 컨트롤러에서 유저 계정을 가져오기 위한 설정.
# vi /etc/sssd/sssd.conf

아래 이미지처럼 수정. 사실 이번 구성에서는 안 해도 됨

이대로 그냥 로그인 면 journalctl -xe 가 뜬다

이 오류는 소유권 문제이므로 다음과 같이 해결해본다.
# chown root:root /etc/sssd/sssd.conf
# chmod 0600 /etc/sssd/sssd.conf
# restorecon /etc/sssd/sssd.conf

# authconfig --enablesssd --enablesssdauth --enablemkhomedir --update

 

SSSD 실행!

# systemctl start sssd

 

 

 

 

AD 도메인 컨트롤러의 aa 계정을 사용해 접속해 보겠다.

 

AD user a 검색
# id a@shrshr.shop 

 

 

※ 사실 윈도우에서 만든 계정의 uid와 gid 값은 꽤 큰데, 리눅스에선 uid와 gid 값의 제한이 아주 낮다.

그래서 리눅스에서 윈도우의 계정을 불러 왔을 때 문제가 될 소지가 있다.

예전 NFS 실습때 봤던 리눅스-윈도우간 계정 권한 문제의 발생 원인이다.

(해결법은 윈도우에서 계정의 uid와 gid 값을 수정해주거나,

리눅스에서 만든 계정을 윈도우에서 똑같이 만들어줘서 가져오는 방법이 있다.)

하지만 일단 그냥 아무 조치도 안하고 진행한다.

 

 

AD user a 로그인하여 해당 유저의 home dir 생성

# su - aa@shrshr.shop

 

만약 리눅스 FTP 서버에서 이렇게 먼저 aa계정으로 로그인 해놓지 않고,

Win10 머신에서 FTP로 바로 AD의 aa계정써서 접속하려고 한다면 home디렉터리가 없다고 오류를 띄운다.

이렇게 리눅스에서 계정으로 로그인 한번 해주면 홈 디렉터리가 생성되기 때문이다.

홈 디렉터리를 직접 만들어 줘도 된다.

 

 

 

 

가운데에 있는 Mem2 방화벽을 다 내려야 한다.

(포트가 설정한 FTP 패시브모드의 포트 대역이 나가는게 아니라 랜덤하게 설정해서 나가는 문제가 있다.

Passive 포트 범위를 65000-65100로 설정했지만 실제로 그 이외 포트가 사용되고 있음. 해결 요망.)

 

 

Client W10 > FTP 접속 테스트

 

참고로 cmd 창으로는 ftp 접속 테스트하면 안된다.

cmd 창은 구려서 FTP Active mode 밖에 못하기 때문에 Passive mode가 안된다. 

 

Filezilla 로 접속 테스트를 하자.

접속은 되는데 디렉터리 목록을 조회하는 데 실패한다.

 

 

이를 해결하기 위해서 다음과 같은 문구를 FTP 설정 파일에 추가해줘야한다.

# vi /etc/vsftpd/vsftpd.conf

pasv_promiscuous=YES

 

# systemctl restart vsftpd

 

 

 

 

 

 

최종 확인

 

접속: Win10 -> Linux FTP 서버 -> AD Domain Controller -> Linux FTP 서버 -> Win10

 

 

 

 

 

 

도메인에서 Linux VM 삭제

 

realm leave domain-name -U 'username@domain-name'

 

 

 

 

참고 문서

https://cloud.google.com/managed-microsoft-ad/docs/quickstart-domain-join-linux?hl=ko#rhel-8.2-ootpa 

 

빠른 시작: Linux VM을 도메인에 가입  |  관리형 Microsoft AD 설명서  |  Google Cloud

의견 보내기 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. Linux VM을 도메인에 가입 이 항목에서는 다음 Linux 배포판과 함께 SSSD(System Security Services Daemon)를

cloud.google.com

https://learn.microsoft.com/ko-kr/sql/linux/sql-server-linux-active-directory-join-domain?view=sql-server-ver16 

 

SQL Server on Linux를 Active Directory에 가입 - SQL Server

이 문서에서는 SQL Server Linux 호스트 머신을 Active Directory 도메인에 조인하는 지침을 제공합니다. 기본 제공 SSSD 패키지를 사용하거나 타사 Active Directory 공급자를 사용할 수 있습니다.

learn.microsoft.com

해당 글의 아랫부분 유저 계정 가져오는 법 참조