ããã«ã¡ã¯ãããã«ïŒ
ã¿ã¹ã¯
ç§ã®çµç¹ã§ã¯ Kerio Connect ãã©ãããã©ãŒã äžã®ã¡ãŒã« ãµãŒããŒã䜿çšããŠãããã¡ãŒã« ãµãŒããŒã¯ãŠãŒã¶ãŒã«ãµãŒãã¹ãæäŸããããã«ããŸããŸãªéœåžã«ã€ã³ã¹ããŒã«ãããŠããŸãã ãã¡ã€ã³ã¯ãµã€ãã®éœåžã瀺ã第 XNUMX ã¬ãã«ã§ç°ãªããããåœåã¯åæ£æ§é ã¯ãããŸããã§ããã ãã¹ãŠãããŸãããã誰ãã幞ãã§ããã ããæŽããæ¥ã管çè ã¯ã¿ã¹ã¯ãã€ãŸããã¹ãŠã®ãµã€ãéã§å ±éã®æŽ»åã«ã¬ã³ããŒãèšå®ããŸããã
èæ¯
åœåãKerio åæ£ã¡ãŒã« ãã¡ã€ã³ãç«ã¡äžããããããã¹ãŠãèªåçã«å®è¡ãããšããèãã§ããã å®äºãšèšããšããã«åæ£ãã¡ã€ã³ãäœæãããŸããããããã§ã¯ãããŸããã§ããããµãŒããŒã¯ãåããµãŒããŒäžã«ãããã¡ã€ã³éã§ã«ã¬ã³ããŒããã©ã«ããŒãé£çµ¡å ãåæããæºåãã§ããŠããŸããããè€æ°ã®ãã¡ã€ã³éã§ããŒã¿ãåæããã€ããã¯ãŸã£ãããããŸããã§ããããµãŒããŒã
ãã¡ãããç§ã¯ãã®ãããªåé¡ãäºæããŠããŸããã§ããããå¿ èŠãªæ©èœãæ¬ ããŠãããšã¯é·ãéä¿¡ããããŸããã§ããã ãã®åŸããã®äºå®ã瀺ãææžèšŒæ ãèŠã€ããŸããã ç§ã¯ããã«éåžžã«åœæãã倱æããŸããã
ã¿ã¹ã¯ã¯ã¹ã ãŒãºã«åé¡ã«å€ãããŸããã
ã©ã®ãããªéžæè¢ããããŸããã?
- å¿ èŠãªããŒã¿ããµãŒãããŒã㣠ãœãããŠã§ã¢ãšäº€æãã XNUMX ã€ã®ã¯ã©ã€ã¢ã³ããç°ãªããµãŒããŒäžã«äœæããŸãã ãã®æ©èœãå®è£ ãããµãŒãããŒã㣠ãœãããŠã§ã¢ãèŠã€ããå¿ èŠããããŸãããç§ã¯ãã®ãã㪠rake ã¯å¥œãã§ã¯ãããŸãããããããå¯äžã®è¿ éãªè§£æ±ºçã§ããããã«æããŸããã
- ãµãŒããŒéã®ããŒã¿åæçšã®ç¬èªã®ã¹ã¯ãªãããäœæããŸãã å®éã®ãšãããKerio ã¯åãªããžã§ã¯ããå¥ã®ãã¡ã€ã«ãšããŠä¿åããããããã¡ã€ã«ãæäœããããã®ã¹ã¯ãªãããéçºããå¿ èŠããããŸããããååãªæ°ã®ãœãŒã¹ãèæ ®ãããšãç¹ã«è€æ°ã®åŠçãå®è¡ããå¿ èŠããããããã¿ã¹ã¯ã¯ããè€éã«èŠããŸããã誰ããåãæéã«ã¿ã¹ã¯ãäœæããå Žåãªã©ã«åããŠãããŒã¿ã®æ£ç¢ºæ§ããã§ãã¯ããŸãã
ä»åŸã®ããšãèããŠãKerio ã¯ãªããžã§ã¯ããå¥ã®ãã¡ã€ã«ãšããŠä¿åããŸããããªããžã§ã¯ãã«ã¢ã¯ã»ã¹ãããã³ã«ãã¡ã€ã« ã·ã¹ãã ãã©ã®ããã«åäœããŠããããå°ããã»ã©æãã§ã¯ãªããšèšã£ãŠãããŸãã
å€ãã®æéãè²»ãããŠèãããæµã®é åãå é ãããèšç»ãæžããçŽã®æãäœæããåŸã6æã«ç§ã¯XNUMXã€ã®æ£ãã決æãäžããŸããã
- æåã®æ±ºæã¯ãå€éšã«äœãæ±ãããèªåèªèº«ã®ããšãè¡ãããšã§ãã
- XNUMXçªç®ã®è§£æ±ºçã¯å¯ãããšã§ãã
æãã§ã«ç®ãèŠãããšããç§ã¯ãã£ã XNUMX ã€ã®çå®ã®èããæ±ããŸãããããã¯æ°æåã«ãŸãšããããŸãã - DFS
ãœãªã¥ãŒã·ã§ã³
ãœãªã¥ãŒã·ã§ã³èªäœã¯æ¬¡ã®ããã«ãªããŸãã
- åæã«åå ãããã¹ãŠã®ãµãŒããŒã OS Windows ã«ç§»åããŸãã ïŒäžéšLinuxäžã§äœ¿çšããŠããŸãããã¡ãŒã«ããŒã¿ã®å¥OSãžã®ç§»è¡ãå¿ èŠã§ããïŒ
- åæã«åå ãããã£ã¬ã¯ããªã®æ§é ã決å®ããŸãããããã¯åäžã§ããå¿ èŠããããŸãã
- åäžã® DFS ã¹ããŒã¹ãæ〠XNUMX ã€ã®ãã¡ã€ã³ã®äžã«ãã¹ãŠã®ã¡ãŒã« ãµãŒããŒãå®çŸ©ããŸãã
- ç§ã®å ŽåããµãŒããŒéã ãã§ãªããã¡ã€ã³éã§ãããŒã¿ã®åæãå¿ èŠãªãããäžèšã®åæ£ Kerio ãã¡ã€ã³ãäœæããŸããXNUMX çªç®ã®åæ㯠Kerio ãµãŒããŒã§ç¬ç«ããŠåŠçã§ããŸãã (æåã®ãã®ãšã¯ç°ãªããŸã)
- åæããããã£ã¬ã¯ããªã DFS ã¹ããŒã¹ã«èšå®ããŸãã
- äœããã®æŸèæãçšæããŸãããïŒçµå±ã®ãšãããæŸèæãªãã§ã¯çããŠãããŸããïŒ
å ·çŸå
XNUMX ã€ã®ã¡ãŒã« ãµãŒããŒäžã®äŸ (ãããããã以äž)
1. Kerio åæ£ãã¡ã€ã³
ãã¹ã¿ãŒã¯åæã«åå ããŸããããããã¯åææ¡ä»¶ã§ã¯ãããŸããã
Kerio åæ£ãã¡ã€ã³ãç«ã¡äžããæ¹æ³ã«ã€ããŠã¯èª¬æããŸãããè€éãªããšã¯äœããããŸãããå
¬åŒãå匷ããŠãã ããã
æçµçã«ã¯ã管çã³ã³ãœãŒã«ã«æ¬¡ã®ç»åã衚瀺ãããã¯ãã§ãã
次ã«ãå ±æãã©ã«ããŒã«èå³ããããŸããããã¹ã¿ãŒ ãµãŒããŒã§ã¯æ¬¡ã®ãªãã·ã§ã³ãæå®ã§ããŸãã
åãã¡ã€ã³ã«åºæã® - ãµãŒããŒã¯ãã¡ã€ã³éã§ãããªã㯠ãã©ã«ããŒãåæããŸããã
ãã¹ãŠã®ãã¡ã€ã³ã«å ±é - ãã¹ãŠã®ãµãŒããŒã¯ãåãã¡ã€ã³å ã®æ¢åã®ãããªã㯠ãã©ã«ããŒãç Žæ£ããåã¡ãŒã« ãµãŒããŒäžã®ãã¹ãŠã®ãã¡ã€ã³ã«å¯ŸããŠæ°ããåäžãã©ã«ããŒãäœæããŸãã
èŠåïŒ ãã®ãªãã·ã§ã³ã¯ãã¹ãŠã®ãµãŒããŒã®æ§æããªã·ãŒãå€æŽããŸãããåãµãŒããŒãšã¯åå¥ã«åæããŸã (ã€ãŸããåäžã®å ±éã¹ããŒã¹ã¯ãããŸãã)ã
管çè
ã¯åŒãç¶ããŠãŒã¶ãŒéã§ã¢ã¯ã»ã¹ãåæ£ããããšãã§ããŸãã
ç§ã®å Žåããããã¯ãã¹ãŠç§ã®ãã®ã§ãããå®å
šãªåæãå¿
èŠã§ãïŒããªãã®å Žåã解決çã¯ç°ãªãå¯èœæ§ããããŸãïŒåãµãŒããŒã§ãåæããå¿
èŠãããåäžã®ãã¡ã€ã³ã®ã»ãããäœæããå¿
èŠããããŸãã
2. Kerio ããŒã¿ ãã£ã¬ã¯ããª
次ã«ãåãµãŒããŒäžã§åæããå¿ èŠãããåäžã®å ±æãã£ã¬ã¯ããªãäœæããå¿ èŠããããŸãã ãã©ã«ããŒãã«ã¬ã³ããŒãé£çµ¡å ã
ã¢ããã€ã¹ - ãã£ã¬ã¯ããªã¯è±èªã§äœæããŠãã ãããã©ãã³èªã§äœæããå Žåããã£ã¬ã¯ããªã®ååã¯ç解ã§ããªããšã³ã³ãŒãã£ã³ã°ã«ãªããŸããããã¯å°ãªããšãäžäŸ¿ã§ãã
次ã«ãåãµãŒããŒäžã®ã¡ãŒã« ãã©ã«ããŒã®ç©çãã¹ãèŠã€ããå¿ èŠããããŸãã
ãã¹ãŠã®ãã¡ã€ã³ã«å
±é ~DataMailmail#publicСОМÑ
ÑПМОзОÑÑеЌÑй каÑалПг#msgs
åãã¡ã€ã³ã«åºæã® ~DataMailmail**Domain**#publicСОМÑ
ÑПМОзОÑÑеЌÑй каÑалПг#msgs
ãã£ã¬ã¯ããªå šäœãåæããã®ã§ã¯ãªããã³ã³ãããšããŒã¿ã®ã¿ãåæããããšã«æ³šæããŠãã ããã #msgs â ãªããžã§ã¯ãèªäœã¯ããã«ä¿åãããŸããä»ã®ãã¹ãŠã®ããŒã¿ã¯ãµãŒããŒããšã«å¥åã«ããå¿ èŠããããŸãã
3.DFS
ãŸããDFS ã®æ§ææ¹æ³ã«ã€ããŠã¯è©³ãã説æããŸããããã®åé¡ã«ã€ããŠã¯ååãªæ å ±ããããŸãã
DFS ã¯ãç°ãªããµãŒããŒã«ããå
±æãã©ã«ããŒãçµåããæ©èœãæäŸãã Windows Server ã®åœ¹å²ãµãŒãã¹ã§ãã
DFS ãèšå®ããåã«ãããŒã¿åæã«åå ãããã¹ãŠã®ã¡ãŒã« ãµãŒããŒãåæ¢ããå¿ èŠããããŸãã
ã»ããã¢ãããå®äºãããšãåæããããã©ã«ããŒããšã«æ¬¡ã®ç»åã衚瀺ãããŸãã
åœç¶ã®ããšãªãããã¬ããªã±ãŒãããããã©ã«ããŒãå ¬éããå¿ èŠã¯ãããŸããã
ã¬ããªã±ãŒã·ã§ã³ãè¡ãããåŸ (ããã§ã¬ããªã±ãŒãããç¹å¥ãªãã®ã¯äœããããŸãã - ãã©ã«ããŒã¯ç©ºã§ã)ãã¡ãŒã« ãµãŒããŒãèµ·åã§ããŸãã
次ã«ãã¡ãŒã« ãµãŒããŒã® XNUMX ã€ã«ããŒã¿ãå ¥åããããŒã¿ãæ£ããè€è£œãããŠããããšã確èªããŸãã
4.æŸèæ
åçã®èª¬æ
ããŒã¿ã®åæ (DFS) ãéå§ãããåŸã«ãããããã«ãæåã®ãµãŒããŒã§äœããäœæããå Žåãã©ãããããã XNUMX çªç®ã®ãµãŒããŒã«ã¯äœã衚瀺ãããªããããŸãã¯è¡šç€ºãããŸããäœããã®çç±ã§åžžã«ã§ã¯ãããŸããã
絶æããªãã§ãã ããããã¡ãããé ããæ©ããããã¯çŸããã§ãããããé ããæ©ããæ©ãæ¹ãè¯ãã§ãããã 6ïœ12æéã§ã¯é ãããããã§ãã
åé¡ã¯ãæåã®ãµãŒããŒã§äœããäœæãããšããã«ãXNUMX çªç®ä»¥éã®ãµãŒããŒã§ã¯ããã¡ãã DFS ã·ã¹ãã ã®ãããã§ãã¡ã€ã«ãããã«è¡šç€ºãããŸããããã®ã¡ãŒã« ãã£ã¬ã¯ããªã以åã«èª°ãã«ãã£ãŠãã§ã«èªã¿åãããŠããå Žåã«ã¯ãå床ãªã¯ãšã¹ããããå ŽåããµãŒããŒã¯ #msgs ãã©ã«ããŒãåèªã¿åããããç¬èªã®ã€ã³ããã¯ã¹ããããŒã¿ãåãåºããŸãããããã¯ãã¯ãçŸå®ã«å¯Ÿå¿ããŠããªãå¯èœæ§ããããŸãã
Kerio ã«ã¯ã€ã³ããã¯ã¹ãåèªã¿åãããã¡ã«ããºã ããããŸãããããã¯çŽ 6 æéã§æ©èœãããã® XNUMX æéã®éãã«ã¬ã³ããŒå
ã®ã¿ã¹ã¯ã®é¢é£æ§ãå€å°å€±ãããå¯èœæ§ããããŸãã
ä»ããåæããã¹ãããã«ã¯ãã¡ãŒã« ãµãŒããŒäžã®ãã©ã«ããŒã«åã¢ã¯ã»ã¹ããåŸã察å¿ããåæãã£ã¬ã¯ããªã®index.fld å
ã®ãã¡ã€ã«ãåé€ããŸãããã®ãã¡ã€ã«ãèŠã€ãããªãå ŽåãKerio ã¯ãã£ã¬ã¯ããªãšããŒã¿ãåèªã¿èŸŒã¿ããŸããçŸããã ããã解決çã§ããããã«èŠããŸãããããŒã¿ãå€æŽããããšãã«ãã¡ã€ã«ãåé€ããŸãããããã¯æ¯åæ©èœããããã§ã¯ãªããååã®ã¿æ©èœããŸãããã®åŸãKerioã¯äœããã®çç±ã§index.fldã«ãŸã£ããèå³ã倱ããŸã
ãŸããããçš®ã®ã€ã³ããã¯ã¹ã«ã€ããŠããããŠããã§ãã§ã«äœããå®è¡ããŠãããšããããŠãŒã¶ãŒã«ã¯ç解ã§ããªãã¡ãã»ãŒãžãåãåºãå§ããŸãã
äœããäœæãããšããå¥ã®ãªãã·ã§ã³ããããŸããæ°ãããªããžã§ã¯ããäœæããç¬éã«ããµãŒããŒã¯å²ãåœãŠãããšããŠãããã¡ã€ã«åããã§ã«äœ¿çšãããŠããããšã«çªç¶æ°ã¥ããŸãããéªã ããŸåŒã«å¢ãããããããã¯è¡ãæ¢ãŸãã®ãªãã·ã§ã³ã§ãã
ããã¯ã©ã®ããã«ããããšãã§ããŸããïŒ
ãã§ã«èŠæ £ãããã®çµµã«ããäžåºŠæ³šç®ããŠã¿ãŸãããã
ããããå¥ã®é¢ã§ã¯ãä»å¿ èŠãªéåžžã«èå³æ·±ããã¿ã³ãèŠããŸãã ãã©ã«ããŒã®ã€ã³ããã¯ã¹ãåäœæãã
æ¬åœã«ã åæããã #msgs ã§äœããæ¢ã«å€æŽãããããšãèªèããŠããªãã¡ãŒã« ãµãŒããŒäžã§ãã®ãã¿ã³ãã¯ãªãã¯ãããšãå®å®ããé«éãªçµæãåŸãããŸãã é ãããŠãããã®ã¯ãã¹ãŠæããã«ãªããŸãã
ãã°ãèŠããšããã®ããã»ã¹ã«ãããæéãããããŸããç§ã®å Žåãæ°å (15) ã®ã¬ã³ãŒããããå ŽåãçŽ 3 ïœ 4 åããããŸãã
ç§ãã¡ãããªããã°ãªããªãã®ã¯ãå¿ èŠãªãšãã«ãã®ãã¿ã³ãå®éã«æŒãæ¹æ³ãç解ããããšã ãã§ãã
å€æããã®ã¯ã ã±ãªãª ç¬èªã®ãã®ãæã£ãŠãã API
ç§ãã¡ã®ã¿ã¹ã¯ãå®è¡ããé¢æ°ã¯æ¬¡ã®ããã«ãªããŸãã
session = callMethod("Domains.checkPublicFoldersIntegrity",{}, token)
äžèšãã¹ãŠããã察象ã®ãã©ã«ããŒã®ç¶æ ãç£èŠããäœããå€åããå Žåã«å¿ èŠãªæ©èœãå®è¡ããã¹ã¯ãªãããäœæããå¿ èŠããããŸãã
èšãããã®ã¯ãç§ã¯ããŸããŸãªãã§ãã¯ãå®è¡ããããã€ãã®ç°ãªãããŒãžã§ã³ã®ã¹ã¯ãªãããäœæãããã¡ã€ã«æ°ã«åºã¥ããŠãã¹ãŠã®çµè«ãåŒãåºãããŒãžã§ã³ã«èœã¡çãããšããããšã§ãã
ã¹ã¯ãªããã®å®è£
CMD ã¹ã¯ãªããã®äŸãšèª¬æ
ã€ã³ããã¯ã¹ãåäœæ.bat
@echo off
set dir=%~dp0
%dir:~0,2%
CD "%~dp0"
md "%CD%LOG"
md "%CD%Setup"
ECHO -Start- >> "%CD%LOG%Computername%.log"
ECHO Start -> %Computername% %Date% %Time% >> "%CD%LOG%Computername%.log"
SetLocal EnableDelayedExpansion
for /f "UseBackQ Delims=" %%A IN ("%CD%Setup%Computername%.List") do (
set /a c+=1
set "m!c!=%%A"
)
set d=%c%
Echo Folder = %c%
ECHO Folder = %c% >> "%CD%LOG%Computername%.log"
ECHO.
ECHO. >> "%CD%LOG%Computername%.log"
:start
cls
if %c% LSS 1 exit
set /a id=1
set R=0
:Find
REM PF-Start
if "%id%" gtr "%c%" if %R% == 1 Goto Reindex
if "%id%" gtr "%c%" timeout 60 && Goto start
For /F "tokens=1-3" %%a IN ('Dir "!m%id%!#msgs" /-C/S/A:-D') Do Set 2DirSize!id!=!DS!& Set DS=%%c
if "2DirSize!id!" == "" set 1DirSize!id!=!2DirSize%id%!
echo %id%
ECHO !m%id%!
echo Count [ !1DirSize%id%! -- !2DirSize%id%! ]
if "!1DirSize%id%!" == "!2DirSize%id%!" ECHO Synk
REM DEL index.fld
if "!1DirSize%id%!" NEQ "!2DirSize%id%!" del /f /q !m%id%!index.fld && del /f /q !m%id%!indexlog.fld && del /f /q !m%id%!search.fld && set R=1 && ECHO RE-index Count && ECHO RE-index Count %Date% %Time% - Delete !m%id%! >> "%CD%LOG%Computername%.log"
set 1DirSize!id!=!2DirSize%id%!
ECHO.
ECHO.
set /a id+=1
goto Find
:Reindex
ECHO. >> "%CD%LOG%Computername%.log"
ECHO --- RE-INDEX - Start - %Date% %Time% --- >> "%CD%LOG%Computername%.log"
ECHO. >> ----------------------------------- >> "%CD%LOG%Computername%.log"
call PublicFolders.py
timeout 60
goto start
exit
ã¹ã¯ãªããã®ã³ããŒãåã¡ãŒã« ãµãŒããŒã§å®è¡ãããŸã (ãµãŒãã¹ãšããŠäœ¿çšã§ãã管çè æš©éã¯å¿ èŠãããŸãã)ã
ã¹ã¯ãªããã¯ãã¡ã€ã«ãèªã¿åããŸã Setup%Computername%.List
ããã§ã%Computername% ã¯çŸåšã®ãµãŒããŒã®ååã§ã (ãã£ã¬ã¯ããªã«ã¯ããã¹ãŠã®ãµãŒããŒã®ãªã¹ããäžåºŠã«å«ããããšãã§ããŸã)ã
ãã¡ã€ã« %Computername%.List â åæããããã£ã¬ã¯ããªã®å®å šãªãã¹ãå«ãŸããŠãããåãã¹ã¯æ°ããè¡ã«æžã蟌ãŸãã空ã®è¡ãå«ããããšã¯ã§ããŸããã
æåã®èµ·ååŸãã¹ã¯ãªããã¯å¿ èŠãã©ããã«é¢ä¿ãªãã€ã³ããã¯ã¹äœææé ãå®è¡ããåæãããåãã£ã¬ã¯ããªå ã®ãã¡ã€ã«æ°ã®ã€ã³ããã¯ã¹ãäœæããŸãã
ãã®ã¹ã¯ãªããã®ç®çã¯ãæå®ããããã£ã¬ã¯ããªå ã®ãã¹ãŠã®ãã¡ã€ã«ãã«ãŠã³ãããããšã§ãã
åãã£ã¬ã¯ããªã®ã«ãŠã³ãã®çµäºæã«ãå°ãªããšã XNUMX ã€ã®ãã£ã¬ã¯ããªã§ãã¡ã€ã«ã®çŸåšã®å€ãåã®å€ãšäžèŽããªãå Žåãã¹ã¯ãªããã¯åæã¡ãŒã« ãã£ã¬ã¯ããªã®ã«ãŒã ãã£ã¬ã¯ããªãããã¡ã€ã«ãåé€ããŸãã index.fld, indexlog.fld, search.fld
ãããŠãå
±æã¡ãŒã«ãã©ã«ããŒã®ã€ã³ããã¯ã¹äœæããã»ã¹ãéå§ããŸãã
ã¿ã¹ã¯ã®å®è¡ã«é¢ããæ å ±ã¯ LOG ãã£ã¬ã¯ããªã«ãã³ããããŸãã
ã€ã³ããã¯ã¹äœæããã»ã¹
ã€ã³ããã¯ã¹äœæããã»ã¹ã¯ãKerio API é¢æ°ã®å®è¡ã«åž°çããŸãã
Session = callMethod("Domains.checkPublicFoldersIntegrity",{}, ããŒã¯ã³)
å®è£
äŸã¯ â Python ã§ç€ºãããŠããŸã
PublicFolders.py
import json
import urllib.request
import http.cookiejar
""" Cookie storage is necessary for session handling """
jar = http.cookiejar.CookieJar()
opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(jar))
urllib.request.install_opener(opener)
""" Hostname or ip address of your Kerio Control instance with protocol, port and credentials """
server = "http://127.0.0.1:4040"
username = "user"
password = "password"
def callMethod(method, params, token = None):
"""
Remotely calls given method with given params.
:param: method string with fully qualified method name
:param: params dict with parameters of remotely called method
:param: token CSRF token is always required except login method. Use method "Session.login" to obtain this token.
"""
data = {"method": method ,"id":1, "jsonrpc":"2.0", "params": params}
req = urllib.request.Request(url = server + '/admin/api/jsonrpc/')
req.add_header('Content-Type', 'application/json')
if (token is not None):
req.add_header('X-Token', token)
httpResponse = urllib.request.urlopen(req, json.dumps(data).encode())
if (httpResponse.status == 200):
body = httpResponse.read().decode()
return json.loads(body)
session = callMethod("Session.login", {"userName":username, "password":password, "application":{"vendor":"Kerio", "name":"Control Api-Local", "version":"Python"}})
token = session["result"]["token"]
print (session)
session = callMethod("Domains.checkPublicFoldersIntegrity",{"domainId": "test2.local"}, token)
print (session)
callMethod("Session.logout",{}, token)
ãŸãããã®ãã¡ã€ã«ã§ã¯ãã¡ãŒã« ãµãŒããŒã®ãã®æ©èœ (Adm - ãããªã㯠ã¡ãŒã« ãã©ã«ããŒ) ãå®è¡ããæš©éãæã€ã¢ã«ãŠã³ããæå®ããå¿ èŠããããŸãã
ç§ã®èšäºã Kerio Connect 管çè ã«ãšã£ãŠåœ¹ç«ã€ããšãé¡ã£ãŠããŸãã
åºæïŒ habr.com