XETOWN

질문/답변

웹에 관련된 질문과 답변을 나눌 수 있습니다.

구현할려는 기능이 

회원가입시 해당 회원정보를 바탕으로 외부 centos서버에 사용자 계정을 추가하도록 하는 기능을 만들어볼려고 하고 있습니다.

 

PHP단위에서 회원 아이디, 비밀번호 정보만으로 외부의 centos 에 adduser 명령으로 회원을 가입하게 할 수있는지 없는지 여부와 함께 참고할만한 라이브러리가 있나요?

 

말그대로 구현쪽 질문이다 보니.. 가능 혹은 불가능 여부부터 알아야 하다보니 조금 질문이 짧은점 양해 부탁드릴께요..ㅠㅠ

 

 

  • profile
    Sunup 2016.08.30 19:06:31
    php shell_exec 를 이용하면 가능할것 같긴한데.. 보안을 엄청 신경써야 되겠네요.
  • profile
    natura 2016.08.30 19:17:22

    예전에 비슷한거 구현할려고 고민했었는데 역시 직접 실행하는 부분은 위험한거같아서
    데이터파일을 생성해서 1분마다 실행하게 해서 등록하게 했었습니다.

    쉘스크립트 만들어서 체크하게 하면 될거같습니다.

  • ?
    SimpleCode 2016.08.30 19:37:05
    가능 여부만 따지자면 당연히 가능합니다.
    shell_exec로 useradd 명령어를 실행하면 되는데, 입력값을 검증하지 않고 무조건 실행하면 위험하고요.
    입력값을 엄격하게 검사해서 서버 내부에서 명령어가 실행되지 않도록 해야할 거에요.

    외부에서 호출하는 방식이라면 주소가 노출될 수 있으니, 더욱 보안에 신경쓰셔야 할 거고요.
  • profile
    희로 2016.08.30 19:48:55
    외부서버에서 회원 정보가 있는 DB에 접속해서(해당아이피 외부접근 허용) 아이디와 비밀번호를 가져와서 추가해주면 되지 않을까요? 크론 등으로 1분마다 체크하든지, 소켓 열어놓고 기다리다가 요청이 오면 실행하든지 하면 될것 같아요.
  • profile
    기진곰 2016.08.31 00:11:21

    PHP에서는 DB에 넣어주기만 하고, 외부서버에서 정기적으로 그 DB에 접속하여 데이터를 가져가서 useradd를 해주는 것이 가장 자연스럽습니다. 물론 윗분들 말씀대로 입력값 검증은 필수! (XE의 아이디 규칙을 참고하세요. 검증은 DB에 넣는 쪽, 받아가는 쪽에서 이중으로 해야 합니다.)

     

    외부서버에서 DB에 접속하는 과정의 보안도 신경써야 하겠고요... (가능하면 DB에 직접 접속하지 말고 다른 PHP 파일을 거쳐서 JSON 같은 형식으로 뿌려주세요. 암호화하면 더 좋음.)

     

    이미 존재하는 계정인 경우 막 덮어쓰지 않도록 안전장치가 있어야겠고...

     

    크론으로 1분마다 실행하는 게 가장 쉽지만, 1분을 기다릴 수 없다면 다른 방법이 필요하겠네요. 5초마다 확인하고, 1분이 지나면 자동으로 종료되는 프로그램을 크론으로 1분마다 실행하는 꼼수도 있습니다.

     

    PHP에 ssh 모듈이 설치되어 있다면 외부서버에 직접 접속해서 명령을 내려도 됩니다. 아니면 shell_exec으로 ssh 명령을 내려도 되고요. 그런데 root로 접속해야 하니 ㅎㄷㄷㄷ

  • profile
    람보 2016.08.31 11:32:16
    @Sunup @natura @SimpleCode @회로 @기진곰 한분한분 답변을 달아드리기가 어려워 이렇게 답변달아용

    모두 고마워용~ 정성스러운 답변.
  • profile
    라엘 2016.08.31 13:05:52

    https://blog.lael.be/post/178 여기 참고해보세요~

    php 로 c 바이너리 파일을 호출하면 됩니다.


List of Articles
번호 분류 제목 날짜
공지 질문/답변 답변을 확실히 받기위한 질문자 지침서 20 2015.12.31
2719 질문/답변 타운님들! db에 직접 넣는 방법이 좋을까요? 아니면 게시판처럼 xml을 이용해서 넣는것이 좋을까요? 1 2016.08.31
2718 질문/답변 html5 video 태그 controls 항상 나오게.. 8 2016.08.31
2717 질문/답변 xe core 분석중, date_obj 라는 객체의 선언 위치에 대해서 궁금합니다. 1 2016.08.31
2716 질문/답변 스케치북 모바일 글쓰기, 수정시 태그 출력문제 4 2016.08.31
2715 질문/답변 게시물 올릴 때 사진을 추가했는데도 썸네일 등록이 안되는 문제 7 2016.08.31
2714 질문/답변 socialxe 모듈 xe 1.8 에서 댓글 회원레벨 안보이는 문제. 2016.08.31
2713 질문/답변 라이믹스 회원가입폼에서 메일링 가입, 쪽지 수신여부 란을 없앨 수 있을까요? 2 2016.08.31
2712 질문/답변 네이버 웹문서 관련 문의드립니다.. 6 2016.08.30
» 질문/답변 php 클라이언트 단위에서 외부 centos 서버의 useradd 명령어를 실행 가능할까요? 7 2016.08.30
2710 질문/답변 라이믹스로 만든 웹사이트에서 댓글을 달았을때 반응 4 2016.08.30
2709 질문/답변 Mysql 빨간불 어떻게 끄나요? 3 file 2016.08.30
2708 질문/답변 사이드바 영역에 위젯스타일 게시판 만드는 방법 있을가요 2016.08.30
2707 질문/답변 core 분석중, site_srl 에 대해서 궁금한게 생겼습니다. 4 2016.08.30
2706 질문/답변 스케치북 게시판 read.html 수정 부분에 대해 여쭤 봅니다 ^^ 6 2016.08.30
2705 질문/답변 http 접속과 https 접속률 보는방법 1 2016.08.30
2704 질문/답변 스크랩 기능은 어찌 구현해야 할까요? 6 2016.08.30
2703 질문/답변 포인트 히스토리 마켓 버전 -> conory님 히스토리로 교체 할 수 있을까요.? 1 2016.08.29
2702 질문/답변 특정일자 이후 게시글 DROP 쿼리문 질문 2 2016.08.29
2701 질문/답변 방금 모바일 페이지로 질문한 사람입니다. 6 2016.08.29
2700 질문/답변 XE 알림센터(이외에 다른 모듈 설치시) 설치시 테이블 생성 문제 7 file 2016.08.29
Board Pagination Prev 1 ... 29 30 31 32 33 34 35 36 37 38 ... 169 Next
/ 169
위로
서버에 요청 중입니다. 잠시만 기다려 주십시오...