웹페이지에서 암호 변경..

0
points

제목 그대로 쉘계정 암호를 바꾸는 웹페이지를 하나 만들면 어떨까 싶은데요...

메일서버와 웹서버가 따로 있는 상황인데가..
어찌하면 좋을지 별 생각도 안나는군요.. :oops:

웹서버는 순수 내부용이고 파월안에 들어 있다보니 보안엔 별로 신경을 안쓰고 있습니다.

C/C++ 등으로 만든걸 php등으로 웹에서 컨트롤하는 정도는 해 보았는데.. 이 경우는 좀처럼 좋은 아이디어가 안떠오르네요.. OTL

한동안 너무 다른 분야만 해서 일까요? 아님 나이 때문일까요.. 쿨럭~
어디.. 좋은 방법이 없을까요? :?

[極]미르[眞]의 이미지
3641
points

웹이 돌아가는 데몬의 권한 즉, www 혹은 기타 웹계정권한으로 돌아가기

0
points

웹이 돌아가는 데몬의 권한 즉, www 혹은 기타 웹계정권한으로 돌아가기 때문에
힘들듯 하군요......
그러다고해서 웹권환을 올리면 다른악의적 이용도 가능할 수 있겠죠...

제 생각엔 퍼미션이 웹권한으로 돌아가고 있기때문에 특정 계정의
비밀번호를 구분해서 변경시켜준다는것은 안될걸로 생각되는군요..

아빠곰의 이미지
2325
points

php가 외부프로그램을 실행시키고, 그 외부프로그램에 setuid를 줘서

0
points

php가 외부프로그램을 실행시키고, 그 외부프로그램에 setuid를 줘서 관리자 권한으로 실행되게 하면 어떨까요?

물론, 악용되면 안되니, 프로그램 위치를 잘 숨기고, 아무나 실행시키지 못하도록 설정해둬야겠죠.

sh.의 이미지
3804
points

setuid를 설정하는 것 보다는 sudo 를 이용하도록 하고, sudo

0
points

setuid를 설정하는 것 보다는 sudo 를 이용하도록 하고, sudoers 설정파일을 통해서 특정한 명령만 실행하도록 하는게 더 안전하지 않을까요?

Re: 웹페이지에서 암호 변경..

0
points

leilei 씀:
제목 그대로 쉘계정 암호를 바꾸는 웹페이지를 하나 만들면 어떨까 싶은데요...

메일서버와 웹서버가 따로 있는 상황인데가..
어찌하면 좋을지 별 생각도 안나는군요.. :oops:

웹서버는 순수 내부용이고 파월안에 들어 있다보니 보안엔 별로 신경을 안쓰고 있습니다.

두 번째 단락의 이해가 조금 헷갈리는데, 목적이 "메일사용자가 자신의 암호를 바꿀 수 있고록 하기 위해" 라면 오래된 기억이지만 pop3 프로토콜을 이용하여 암호 변경을 지원하는 뭔가가 있었습니다. 물론 클라이언트가 지원해야 하는 부분이긴 하지만...

또는, 쉘을 내어줄 생각이 없어서 웹 인터페이스를 생각한 것이라면 제 경우에는 일반 메일 사용자의 쉘을 passwd로 변경하여 운영했던 적도 있었습니다. passwd 프로그램이 쉘로써 돌아갈 때 어떤 취약점이 있는지는 "그러던지 말던지" 하고 썼었습니다. :-)

써놓고 보니 순 동문서답이군요. :-(

Re: 웹페이지에서 암호 변경..

0
points

sio4 씀:

또는, 쉘을 내어줄 생각이 없어서 웹 인터페이스를 생각한 것이라면 ...

네 그렇습니다.. 조금 다른 점은 쉘을 줘 봐야 사용 못하는 사용자들이란거죠.. T_T

주된 업무는 아니기에 그냥 그렇게 살고는 있습니다만..
틈틈히 고민하고 살고 있습니다..

sudo나 기타의 방법으로 적당한 권한을 줄 수 있다고 해도..
메일서버쪽에 접근을 해서 패스워드를 바꿀려니 만만치가 않네요.. :oops:

sh.의 이미지
3804
points

혹시 메일 서버는 어떻게 구성이 되어있나요?예를 들어 qmail

0
points

혹시 메일 서버는 어떻게 구성이 되어있나요?

예를 들어 qmail 인 경우에는 mysql로 계정 관리를 할 수 있도록 패치할 수가 있는데, 이런 경우에는 쉽게 해결이 될것 같거든요.

[quote="bs0048"]혹시 메일 서버는 어떻게 구성이 되어있나요?

0
points

bs0048 씀:
혹시 메일 서버는 어떻게 구성이 되어있나요?

예를 들어 qmail 인 경우에는 mysql로 계정 관리를 할 수 있도록 패치할 수가 있는데, 이런 경우에는 쉽게 해결이 될것 같거든요.

sendmail 도 그렇고 대체로 사용자 데이터를 DB에 저장하여 사용하는 방법이 참 유용합니다. 다만, 관리자 입장에서 새로 시스템 구성해주는 작업 등이 필요하므로 성가신 일이죠. 어쨌든, 투자할 의향이 있다면 이 방법이 여러모로 좋은 것 같습니다. :-)

이전에 적은 /usr/bin/passwd를 쉘로 지정하고 사용자들로 하여금 메일서버에 telnet으로 접속하도록 하는 방법은 "컴맹 환경"에서도 통했었습니다. 그리고 이렇게 했을 경우, 딱히 sudo 등의 방식을 쓰지 않아도 대화식으로 암호변경을 할 수 있도록 웹스크립트/CGI 작성이 가능합니다.

보안이야 뭐,... :-) 웹서버에서만 telnet 접속이 가능하게 할 수 도 있고 :-)

sh.의 이미지
3804
points

sio4님의 글을 읽다 문득 생각이 난 것인데php의 경우 opens

0
points

sio4님의 글을 읽다 문득 생각이 난 것인데
php의 경우 openssh extension을 설치하면 다른 서버로의 ssh연결을 다룰수가 있습니다. telnet도 가능한 방법이지만 보안이라던가 좀 개운하지 않은 면이 있는데 php에서 직접 ssh로 연결해서 셸명령을 내리거나 할 수도 있겠네요. 물론 openssh extension을 사용하지 않고 exec() 함수를 이용해서 $ ssh mail.server.com -l user "changemailpassword" 이런 식으로 직접 명령을 줄 수도 있습니다. 비밀번호를 지정하지 않은 키를 등록해두면 편하겠네요.

purple의 이미지
1111
points

ldap를 이용할 수도 있습니다.

0
points

어쩌면 배보다 배꼽이 더 커질 수도 있습니다만

셸 계정 정보를 저장하는 곳을 기존의 /etc/passwd 에서 ldap로 바꾸는 방법도 있습니다. nss_ldap, pam_ldap가 이것을 가능하게 해줍니다.

웹 페이지에서 암호를 바꾸게 하는 것은 php로 ldap에 접속하여 바꾸도록 하면 됩니다.

사용자 인증이 필요한 대부분의 프로그램들이 ldap를 지원하므로 여러 서비스에서 동일한 계정을 사용하도록 통합할 수 있다는 장점이 있습니다. 하지만 좀 복잡하지요. :)

댓글 보기 옵션

원하시는 댓글 전시 방법을 선택한 다음 "설정 저장"을 누르셔서 적용하십시오.