-
IBM AIX SFTP계정 생성하는 방법System of Infra/Unix System 2021. 1. 25. 21:08728x90반응형
AIX SFTP계정 생성하는 방법
[root@test_svr2:/]# smit user Add a User(선택) ... User NAME [sftpadm] User ID [999] ADMINISTRATIVE USER? false Primary GROUP [staff] Group SET [staff] ...(생략) SU GROUPS [ALL] HOME directory [/home/sftpadmin]
-> 테스트를 하기 위한 user의 계정을 한 개 생성해주도록 합니다.(sftpadm이라는 이름으로 계정 생성)
[root@test_svr2:/]# cat /etc/passwd | grep -i sftpadm sftpadm:*:999:1::/home/sftpadmin:/usr/bin/ksh
-> /etc/passwd를 통해서 계정이 제대로 생성되어 있는지 확인합니다. 현재 홈 디렉터리는 /home/sftpadmin으로 설정되어 999번으로 생성이 된 것을 확인할 수 있습니다.
[root@test_svr2:/]# su - sftpadm [sftpadm@test_svr2:/home/sftpadmin]#ls -ltr drwxr-xr-x 2 sftpadm staff 256 Jan 11 15:41 . drwxr-xr-x 6 bin bin 256 Jan 11 15:40 .. -rwxr----- 1 sftpadm staff 332 Jan 11 15:40 .profile -rw------- 1 sftpadm staff 28 Jan 11 15:41 .sh_history
-> 생성된 sfpadm의 계정으로 접속이 가능한지 확인하도록 합니다.
[sftpadm@test_svr2:/home/sftpadmin]#passwd sftpadm Changing password for "sftpadm"
-> 생성된 sftpadm의 계정의 패스워드를 생성합니다.
[sftpadm@test_svr2:/home/sftpadmin]#ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/sftpadmin/.ssh/id_rsa):(ENTER) Created directory '/home/sftpadmin/.ssh'. Enter passphrase (empty for no passphrase):(ENTER) Enter same passphrase again:(ENTER) Your identification has been saved in /home/sftpadmin/.ssh/id_rsa. Your public key has been saved in /home/sftpadmin/.ssh/id_rsa.pub. The key fingerprint is:(ENTER) cf:50:9a:a7:e4:33:14:28:aa:ec:91:4d:97:54:36:a3 sftpadm@test_svr2 The key's randomart image is:(ENTER) +-----[ RSA 2048]---+ | = | | +.o | | .E. . . | | .... = | | .. o S . | |..+ . + * | |.+ . = o | |. . o | | . | +-------------------+
-> ssh-keygen의 명령어를 통해서 RSA 공개키를 생성합니다. 각각의 질문지에서는 계속 ENTER 하게 되면 키가 생성됩니다.
[sftpadm@test_svr2:/home/sftpadmin]#ls -al | grep -i .ssh drwx------ 2 sftpadm staff 256 Jan 11 15:45 .ssh [sftpadm@test_svr2:/home/sftpadmin]#cd .ssh [sftpadm@test_svr2:/home/sftpadmin/.ssh]#ls -al drwx------ 2 sftpadm staff 256 Jan 11 15:45 . drwxr-xr-x 3 sftpadm staff 256 Jan 11 15:45 .. -rw------- 1 sftpadm staff 1675 Jan 11 15:45 id_rsa -rw-r--r-- 1 sftpadm staff 399 Jan 11 15:45 id_rsa.pub
->. ssh 디렉터리 경로에서 id_rsa가 생성되어 있는지 확인합니다.(공개키)
[sftpadm@test_svr2:/home/sftpadmin/.ssh]#cat id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCtp7QHO71SLDZza7FTfzlw0CRBEABMsqkoFEEvlrEmX7F+fuOi+JCtsCY5PVd0QAX8v2KmKeDGmIKFoGlyevpyUcSoznRZu+Y4piVAHi/f5OYVM255MTZaQRQLTMOoibSnyGMUupXaVsI9e4fo79mPVcSbjb1z/KIzjWG8JxIwyfDDbTDOOHV6tY+Wr2r45JNSyXcTysfPaeey7b8PURLpYLF4Gigb/rJyU3Qxr7XhFda7f6JvXlRB+TZPWmAilhQ1+DfR7ET7n0NNjHQRjwNENkO4Ux/ELr1j90ugqikT/T48o4EAinlHPglGALgc3PHJ/he+gDGQP8r47S8nO2cp sftpadm@test_svr2 [sftpadm@test_svr2:/home/sftpadmin/.ssh]#cat id_rsa.pub >> authorized_keys [sftpadm@test_svr2:/home/sftpadmin/.ssh]#cat authorized_keys ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCtp7QHO71SLDZza7FTfzlw0CRBEABMsqkoFEEvlrEmX7F+fuOi+JCtsCY5PVd0QAX8v2KmKeDGmIKFoGlyevpyUcSoznRZu+Y4piVAHi/f5OYVM255MTZaQRQLTMOoibSnyGMUupXaVsI9e4fo79mPVcSbjb1z/KIzjWG8JxIwyfDDbTDOOHV6tY+Wr2r45JNSyXcTysfPaeey7b8PURLpYLF4Gigb/rJyU3Qxr7XhFda7f6JvXlRB+TZPWmAilhQ1+DfR7ET7n0NNjHQRjwNENkO4Ux/ELr1j90ugqikT/T48o4EAinlHPglGALgc3PHJ/he+gDGQP8r47S8nO2cp sftpadm@test_svr2
->test_svr2의 sftpadm계정의 id_rsa의 키를 authorized_keys로 복사한 뒤 서로 일치하는지 내용을 확인합니다.
[root@test_svr1:/]# ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (//.ssh/id_rsa): Created directory '//.ssh'. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in //.ssh/id_rsa. Your public key has been saved in //.ssh/id_rsa.pub. The key fingerprint is: 26:0a:43:51:f8:e5:26:32:ee:e6:1b:f0:b8:40:6f:6f root@test_svr1 The key's randomart image is: +-----[ RSA 2048]---+ | = | | +.o | | .E. . . | | .... = | | .. o S . | |..+ . + * | |.+ . = o | |. . o | | . | +-------------------+
-> ssh-keygen의 명령어를 통해서 RSA 공개키를 생성합니다. 각각의 질문지에서는 계속 ENTER 하게 되면 키가 생성됩니다.
[root@test_svr1:/]# cd .ssh [root@test_svr1:/.ssh]# ls -al total 24 drwx------ 2 root system 256 Jan 11 15:50 . drwxr-xr-x 24 root system 4096 Jan 11 15:50 .. -rw------- 1 root system 1675 Jan 11 15:50 id_rsa -rw-r--r-- 1 root system 396 Jan 11 15:50 id_rsa.pub
->. ssh 디렉터리 경로에서 id_rsa가 생성되어 있는지 확인합니다.(공개키)
[root@test_svr1:/.ssh]# cat authorized_keys ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDHqTe0v32bD6j54NbirrR6ZsG/Mjs6z/5C2n1PmEC9oeyFHbNNTR8jkbuDu81ljN2gp7vao4GFDGrIoGlL6dMX++p5UFCn1XN2FINCepSoSM5uvvgGHGacWQAH2Kcb2b27y2NeIWgpitcWR1eQfKDxqPdUlsOFTSra0OSpEv9alSs4EZE5nGx+8ohb347gJ2wRCdlMF4c2NzP2JA8R3Qxx5zrn7nASFFXCc7n6Hou1udl/li00ijbUvNOxrynHd//1PHdoYrc0Q4C6E6GZPvYi4HLOlcTKun5w2jNhL600nXY840+tN3s5FmZ1QG0hDsWMaKzVSRENi3iyDlWCpxt9 root@test_svr1 [root@test_svr1:/.ssh]# cat id_rsa.pub >> authorized_keys [root@test_svr1:/.ssh]# cat authorized_keys ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDHqTe0v32bD6j54NbirrR6ZsG/Mjs6z/5C2n1PmEC9oeyFHbNNTR8jkbuDu81ljN2gp7vao4GFDGrIoGlL6dMX++p5UFCn1XN2FINCepSoSM5uvvgGHGacWQAH2Kcb2b27y2NeIWgpitcWR1eQfKDxqPdUlsOFTSra0OSpEv9alSs4EZE5nGx+8ohb347gJ2wRCdlMF4c2NzP2JA8R3Qxx5zrn7nASFFXCc7n6Hou1udl/li00ijbUvNOxrynHd//1PHdoYrc0Q4C6E6GZPvYi4HLOlcTKun5w2jNhL600nXY840+tN3s5FmZ1QG0hDsWMaKzVSRENi3iyDlWCpxt9 root@test_svr1
->test_svr1의 id_rsa의 키를 authorized_keys로 복사한 뒤 서로 일치하는지 내용을 확인합니다.
[root@test_svr1:/.ssh]# vi authorized_keys ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDHqTe0v32bD6j54NbirrR6ZsG/Mjs6z/5C2n1PmEC9oeyFHbNNTR8jkbuDu81ljN2gp7vao4GFDGrIoGlL6dMX++p5UFCn1XN2FINCepSoSM5uvvgGHGacWQAH2Kcb2b27y2NeIWgpitcWR1eQfKDxqPdUlsOFTSra0OSpEv9alSs4EZE5nGx+8ohb347gJ2wRCdlMF4c2NzP2JA8R3Qxx5zrn7nASFFXCc7n6Hou1udl/li00ijbUvNOxrynHd//1PHdoYrc0Q4C6E6GZPvYi4HLOlcTKun5w2jNhL600nXY840+tN3s5FmZ1QG0hDsWMaKzVSRENi3iyDlWCpxt9 root@test_svr1 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCtp7QHO71SLDZza7FTfzlw0CRBEABMsqkoFEEvlrEmX7F+fuOi+JCtsCY5PVd0QAX8v2KmKeDGmIKFoGlyevpyUcSoznRZu+Y4piVAHi/f5OYVM255MTZaQRQLTMOoibSnyGMUupXaVsI9e4fo79mPVcSbjb1z/KIzjWG8JxIwyfDDbTDOOHV6tY+Wr2r45JNSyXcTysfPaeey7b8PURLpYLF4Gigb/rJyU3Qxr7XhFda7f6JvXlRB+TZPWmAilhQ1+DfR7ET7n0NNjHQRjwNENkO4Ux/ELr1j90ugqikT/T48o4EAinlHPglGALgc3PHJ/he+gDGQP8r47S8nO2cp sftpadm@test_svr2 [sftpadm@test_svr2:/home/sftpadmin/.ssh]#vi authorized_keys ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCtp7QHO71SLDZza7FTfzlw0CRBEABMsqkoFEEvlrEmX7F+fuOi+JCtsCY5PVd0QAX8v2KmKeDGmIKFoGlyevpyUcSoznRZu+Y4piVAHi/f5OYVM255MTZaQRQLTMOoibSnyGMUupXaVsI9e4fo79mPVcSbjb1z/KIzjWG8JxIwyfDDbTDOOHV6tY+Wr2r45JNSyXcTysfPaeey7b8PURLpYLF4Gigb/rJyU3Qxr7XhFda7f6JvXlRB+TZPWmAilhQ1+DfR7ET7n0NNjHQRjwNENkO4Ux/ELr1j90ugqikT/T48o4EAinlHPglGALgc3PHJ/he+gDGQP8r47S8nO2cp sftpadm@test_svr2 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDHqTe0v32bD6j54NbirrR6ZsG/Mjs6z/5C2n1PmEC9oeyFHbNNTR8jkbuDu81ljN2gp7vao4GFDGrIoGlL6dMX++p5UFCn1XN2FINCepSoSM5uvvgGHGacWQAH2Kcb2b27y2NeIWgpitcWR1eQfKDxqPdUlsOFTSra0OSpEv9alSs4EZE5nGx+8ohb347gJ2wRCdlMF4c2NzP2JA8R3Qxx5zrn7nASFFXCc7n6Hou1udl/li00ijbUvNOxrynHd//1PHdoYrc0Q4C6E6GZPvYi4HLOlcTKun5w2jNhL600nXY840+tN3s5FmZ1QG0hDsWMaKzVSRENi3iyDlWCpxt9 root@test_svr1
-> 각각의 호스트에 서로의 공개키를 붙여 넣기 해줍니다. test_svr1에는 test_svr2의 sftpadm 계정의 authorized_keys의 공개키를 넣어주고 test_svr2의 sftpadm 계정에는 test_svr1의 authorized_keys의 공개키를 넣어주도록 합니다.
[root@test_svr1:/.ssh]# stopsrc -s sshd; startsrc -s sshd 0513-044 The sshd Subsystem was requested to stop. 0513-059 The sshd Subsystem has been started. Subsystem PID is 2621894. [root@test_svr2:/]# stopsrc -s sshd; startsrc -s sshd 0513-044 The sshd Subsystem was requested to stop. 0513-059 The sshd Subsystem has been started. Subsystem PID is 7078124.
-> 공개키를 서로 교환을 했기 때문에 각각의 호스트의 sshd 데몬을 재기동해주도록 합니다.
[root@test_svr2:/]# su - sftpadm sftpadm's Password: [sftpadm@test_svr2:/home/sftpadmin]#ssh 10.50.1.152 Last login: Mon Jan 11 16:04:46 KST 2021 on /dev/pts/3 from test_svr1 ****************************************************************************** * * * * * Welcome to AIX Version 7.1! * * * * * * Please see the README file in /usr/lpp/bos for information pertinent to * * this release of the AIX Operating System. * * * * * ****************************************************************************** [sftpadm@test_svr2:/home/sftpadmin]#
-> ssh 접속을 통해서 자기 자신의 공개키도 공유를 하고 있기 때문에 패스워드를 묻지 않고 접속이 가능한 것을 확인할 수 있습니다.
[root@test_svr1:/]# ssh sftpadm@10.50.1.152 Last login: Fri Jan 22 23:53:15 KST 2021 on /dev/pts/2 ****************************************************************************** * * * * * Welcome to AIX Version 7.1! * * * * * * Please see the README file in /usr/lpp/bos for information pertinent to * * this release of the AIX Operating System. * * * * * ****************************************************************************** [root@test_svr1:/]#
-> ssh 접속을 통해서 서로 공개키를 공유한 test_svr1의 호스트 또한 패스워드 없이 접속이 되는 것을 확인할 수 있습니다.
[root@test_svr2:/]#vi /etc/passwd root:!:0:0::/:/usr/bin/ksh daemon:!:1:1::/etc: bin:!:2:2::/bin: sys:!:3:3::/usr/sys: adm:!:4:4::/var/adm: uucp:!:5:5::/usr/lib/uucp: guest:!:100:100::/home/guest: nobody:!:4294967294:4294967294::/: lpd:!:9:4294967294::/: ...(생략) pconsole:*:8:0::/var/adm/pconsole:/usr/bin/ksh srvproxy:*:202:0:Service Proxy Daemon:/home/srvproxy:/usr/bin/ksh esaadmin:*:10:0::/var/esa:/usr/bin/ksh sshd:*:203:201::/var/empty:/usr/bin/ksh sftpadm:!:999:1::/home/sftpadmin:/usr/bin/ksh -> sftpadm:!:999:1::/home/sftpadmin:/bin/false
-> / etc/passwd의 경로에서 sftpadm으로 생성한 계정을 위와 같이 변경해줍니다.
[root@test_svr2:/]# chown root:staff /home/sftpadmin [root@test_svr2:/]# chmod 775 /home/sftpadmin
-> 추후 sftpadmin의 상위 디렉터리 접근 불가에 대한 포스트 글을 남기기 위해서 사전에 root 오너쉽과 권한을 변경해줍니다.
[root@test_svr1:/]# ssh sftpadm@10.50.1.152 sftpadm@10.50.1.152's password: Connection to 10.50.1.152 closed by remote host. Connection to 10.50.1.152 closed.
-> /etc/passwd 경로에서 /usr/bin/ksh를 false로 변경해주었기 때문에 더 이상 ssh 콘솔 기반으로 접속이 불가능한 것을 확인할 수 있습니다.
[root@test_svr1:/]# sftp sftpadm@10.50.1.152 Connected to 10.50.1.152. sftp> pwd Remote working directory: /home/sftpadmin
-> sftp프로토콜을 통해서 접속을 하게 되면 test_svr1 호스트와 공개키를 서로 교환했기 때문에 패스워드를 묻지 않고 접속이 됩니다. 그리고 ssh접속은 /ksh의 정책을 false로 변경했기 때문에 sftp의 프로토콜을 사용해서만 사용할 수 있는 계정이 되었습니다.
PS. 포스팅의 내용은 제 기준으로 작성한 것이기 때문에 참고해서 보시면 감사하겠습니다.
포스팅 과정의 오류 및 오타 그리고 궁금한 점에 대해서는 댓글 남겨주세요.
728x90반응형'System of Infra > Unix System' 카테고리의 다른 글
IBM AIX The largest dump device is too small ERROR (0) 2021.02.07 IBM AIX SFTP계정 홈 상위디렉토리 제한하는 방법 (0) 2021.01.26 IBM AIX에 Python 설치하는 방법 (2) 2021.01.20 IBM FC adapter 성능 분석 테스트 방법 (0) 2021.01.19 IBM AIX crontab nmon 로그파일 설정 (0) 2020.12.07